2 Commits

Author SHA1 Message Date
themixedupstuff 432446689c Fix typo in build_native.sh 2026-04-14 23:30:46 +03:00
themixedupstuff 1afdc8ffb9 Update build scripts. 2026-04-14 23:27:05 +03:00
13 changed files with 208 additions and 67 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.0) cmake_minimum_required(VERSION 3.5)
project(rf_stbi LANGUAGES C VERSION 1.0) project(rf_stbi LANGUAGES C VERSION 1.0)
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.linux.arm</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for Linux ARM.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/linux-arm/native/*.so">
<PackagePath>runtimes/linux-arm/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.linux.arm64</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for Linux ARM64.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/linux-arm64/native/*.so">
<PackagePath>runtimes/linux-arm64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.linux.x64</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for Linux x64.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/linux-x64/native/*.so">
<PackagePath>runtimes/linux-x64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.osx.arm64</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for OSX ARM64.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/osx-arm64/native/*.dylib">
<PackagePath>runtimes/osx-arm64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.osx.x64</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for OSX x64.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/osx-x64/native/*.dylib">
<PackagePath>runtimes/osx-x64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.win.x64</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for Windows x64.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/win-x64/native/*.dll">
<PackagePath>runtimes/win-x64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
@@ -0,0 +1,22 @@
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup>
<!-- Nuget Properties. -->
<PackageId>ReFuel.StbImage.redis.win.x86</PackageId>
<Version>1.0.0-rc.1</Version>
<Description>
StbImage distribution for Windows x86.
</Description>
<PackageReleaseNotes>* Initial release.</PackageReleaseNotes>
</PropertyGroup>
<ItemGroup>
<Content Include="runtimes/win-x86/native/*.dll">
<PackagePath>runtimes/win-x86/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
</Project>
+10 -64
View File
@@ -1,31 +1,18 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">
<Import Project="../etc/ReFuel.StbImage.Common.props"/>
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>net6.0;net8.0</TargetFrameworks> <!-- <TargetFrameworks>net6.0;net8.0;net10.0</TargetFrameworks> -->
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<RuntimeIdentifiers>linux-arm;linux-arm64;linux-x64;win-x86;win-x64;osx-arm64;osx-x64</RuntimeIdentifiers> <RuntimeIdentifiers>linux-arm;linux-arm64;linux-x64;win-x86;win-x64;osx-arm64;osx-x64</RuntimeIdentifiers>
<RootNamespace>ReFuel.Stb</RootNamespace>
<Optimize>true</Optimize>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<!-- Nuget Properties. --> <!-- Nuget Properties. -->
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageId>ReFuel.StbImage</PackageId> <PackageId>ReFuel.StbImage</PackageId>
<Version>2.1.0</Version> <Version>2.1.1-rc.1</Version>
<Authors>STBI Authors, H. Utku Maden</Authors>
<Description> <Description>
A C# wrapper for the ubiquitous stb_image.h and stb_image_write.h library. A C# wrapper for the ubiquitous stb_image.h and stb_image_write.h library.
</Description> </Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageLicenseFile>LICENSE.md</PackageLicenseFile>
<PackageIcon>images\icon.png</PackageIcon>
<PackageProjectUrl>https://refuel.mixedup.dev/docs/ReFuel.StbImage.html</PackageProjectUrl>
<RepositoryUrl>https://git.mixedup.dev/ReFuel/ReFuel.StbImage</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageTags>stb; stb_image; stbi; image; load; save; read; write</PackageTags>
<PackageReleaseNotes># 2.1.0 (ABI BRAKING) <PackageReleaseNotes># 2.1.0 (ABI BRAKING)
* Fixed calling convention of unmanaged function pointers. (Thanks NogginBops!) * Fixed calling convention of unmanaged function pointers. (Thanks NogginBops!)
* Modified StbiStreamWrapper in order to fixed backing delegates of function pointers from being prematurely collected * Modified StbiStreamWrapper in order to fixed backing delegates of function pointers from being prematurely collected
@@ -39,55 +26,14 @@
* Moved native function calls to ReFuel.Stb.Native</PackageReleaseNotes> * Moved native function calls to ReFuel.Stb.Native</PackageReleaseNotes>
</PropertyGroup> </PropertyGroup>
<!--
Because the .net build system is garbage of the purest quality, I need
to specify each runtime directory by itself or it won't be picked up as a
native specific to each platform and won't be included in the deps.json file
that determines a lot of load paths for projects.
-->
<ItemGroup> <ItemGroup>
<Content Include="*.md" Pack="true" PackagePath="/" /> <PackageReference Include="ReFuel.StbImage.redis.linux.arm" Version="1.0.*"/>
<None Include="rf_stbimage.png" Pack="true" PackagePath="images\icon.png" /> <PackageReference Include="ReFuel.StbImage.redis.linux.arm64" Version="1.0.*"/>
<Content Include="runtimes/linux-arm/native/*.so"> <PackageReference Include="ReFuel.StbImage.redis.linux.x64" Version="1.0.*"/>
<PackagePath>runtimes/linux-arm/native/</PackagePath> <PackageReference Include="ReFuel.StbImage.redis.osx.arm64" Version="1.0.*"/>
<Pack>true</Pack> <PackageReference Include="ReFuel.StbImage.redis.osx.x64" Version="1.0.*"/>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <PackageReference Include="ReFuel.StbImage.redis.win.x64" Version="1.0.*"/>
</Content> <PackageReference Include="ReFuel.StbImage.redis.win.x86" Version="1.0.*"/>
<Content Include="runtimes/linux-arm64/native/*.so">
<PackagePath>runtimes/linux-arm64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="runtimes/linux-x64/native/*.so">
<PackagePath>runtimes/linux-x64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="runtimes/linux-x86/native/*.so">
<PackagePath>runtimes/linux-x86/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="runtimes/win-x64/native/*.dll">
<PackagePath>runtimes/win-x64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="runtimes/win-x86/native/*.dll">
<PackagePath>runtimes/win-x86/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="runtimes/osx-x64/native/*.dylib">
<PackagePath>runtimes/osx-x64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="runtimes/osx-arm64/native/*.dylib">
<PackagePath>runtimes/osx-arm64/native/</PackagePath>
<Pack>true</Pack>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup> </ItemGroup>
</Project> </Project>
View File
+12 -1
View File
@@ -1,4 +1,15 @@
#!/bin/bash #!/bin/bash
cd $(dirname "$0") cd $(dirname "$0")
./docker-cross-compiler/sh/build_native.sh . # Add the local directory as a .NET package source.
dotnet nuget add source -n ReFuel.StbImage bin
# Build each architecture in its own subfolder.
DST=ReFuel.StbImage.redis.linux.arm ./docker-cross-compiler/sh/build_native.sh $PWD linux-arm
DST=ReFuel.StbImage.redis.linux.arm64 ./docker-cross-compiler/sh/build_native.sh $PWD linux-arm64
DST=ReFuel.StbImage.redis.linux.x64 ./docker-cross-compiler/sh/build_native.sh $PWD linux-x64
DST=ReFuel.StbImage.redis.osx.arm64 ./docker-cross-compiler/sh/build_native.sh $PWD osx-arm64
DST=ReFuel.StbImage.redis.osx.x64 ./docker-cross-compiler/sh/build_native.sh $PWD osx-x64
DST=ReFuel.StbImage.redis.win.x64 ./docker-cross-compiler/sh/build_native.sh $PWD win-x64
DST=ReFuel.StbImage.redis.win.x86 ./docker-cross-compiler/sh/build_native.sh $PWD win-x86
dotnet build -c Release dotnet build -c Release
+30
View File
@@ -0,0 +1,30 @@
<Project>
<PropertyGroup>
<!--Properties for packages.-->
<TargetFrameworks>net6.0;net8.0;net10.0</TargetFrameworks>
<Nullable>enable</Nullable>
<LangVersion>latest</LangVersion>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<RootNamespace>ReFuel.Stb</RootNamespace>
<Optimize>true</Optimize>
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
<PackageOutputPath>$(MSBuildThisFileDirectory)../bin</PackageOutputPath>
<!--Supresses warnings for the nuget packages with only native assemlies.-->
<NoWarn>$(NoWarn);NU5128</NoWarn>
<Authors>STBI Authors, H. Utku Maden</Authors>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageLicenseFile>LICENSE.md</PackageLicenseFile>
<PackageIcon>images\icon.png</PackageIcon>
<PackageProjectUrl>https://refuel.mixedup.dev/docs/ReFuel.StbImage.html</PackageProjectUrl>
<RepositoryUrl>https://github.com/ReFuelGameEngine/ReFuel.StbImage</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<PackageTags>stb; stb_image; stbi; image; load; save; read; write</PackageTags>
</PropertyGroup>
<ItemGroup>
<Content Include="../*.md" Pack="true" PackagePath="/" />
<None Include="../rf_stbimage.png" Pack="true" PackagePath="images\icon.png" />
</ItemGroup>
</Project>
+1 -1
View File
@@ -24,4 +24,4 @@ dotnet nuget add source \
-n ReFuel -u "$NUGET_USER_NAME" -p "$REFUEL_API_KEY" \ -n ReFuel -u "$NUGET_USER_NAME" -p "$REFUEL_API_KEY" \
--store-password-in-clear-text \ --store-password-in-clear-text \
"$NUGET_INDEX" "$NUGET_INDEX"
dotnet nuget push -s ReFuel bin/*/*.nupkg dotnet nuget push -s ReFuel bin/*.nupkg