Skip to content

Commit 94ddf7b

Browse files
committed
WIP
1 parent 5122f1a commit 94ddf7b

File tree

56 files changed

+502
-557
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+502
-557
lines changed

.github/workflows/ci.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Build
2+
3+
on: [push]
4+
5+
jobs:
6+
Build:
7+
runs-on: macos-latest
8+
9+
steps:
10+
- name: Checkout
11+
uses: actions/checkout@v4
12+
13+
- name: Install dotnet workloads
14+
run: dotnet workload install android ios tvos
15+
16+
- name: Build
17+
run: dotnet pack
18+
19+
- uses: actions/upload-artifact@v4
20+
with:
21+
name: ${{ github.event.repository.name }} Artifacts
22+
path: |
23+
FNA-NET.NativeAssets/bin/Release/*.nupkg

FNA-NET.Android.targets

Lines changed: 0 additions & 23 deletions
This file was deleted.

FNA-NET.FAudio.targets

Lines changed: 0 additions & 20 deletions
This file was deleted.

FNA-NET.FNA3D.targets

Lines changed: 0 additions & 20 deletions
This file was deleted.

FNA-NET.NativeAssets.sln

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio Version 17
4+
VisualStudioVersion = 17.0.31903.59
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FNA-NET.NativeAssets", "FNA-NET.NativeAssets\FNA-NET.NativeAssets.csproj", "{BE582835-9F98-4A3D-ABB1-77E51F403848}"
7+
EndProject
8+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FNA-NET.NativeAssets.MoltenVK", "FNA-NET.NativeAssets.MoltenVK\FNA-NET.NativeAssets.MoltenVK.csproj", "{D8900BBB-0818-43D8-BE5A-25F56B33C33E}"
9+
EndProject
10+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FNA-NET.NativeAssets.UWP", "FNA-NET.NativeAssets.UWP\FNA-NET.NativeAssets.UWP.csproj", "{7F57DB99-60D1-4A8E-9F75-0A283C44E822}"
11+
EndProject
12+
Global
13+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
14+
Debug|Any CPU = Debug|Any CPU
15+
Release|Any CPU = Release|Any CPU
16+
EndGlobalSection
17+
GlobalSection(SolutionProperties) = preSolution
18+
HideSolutionNode = FALSE
19+
EndGlobalSection
20+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
21+
{BE582835-9F98-4A3D-ABB1-77E51F403848}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
22+
{BE582835-9F98-4A3D-ABB1-77E51F403848}.Debug|Any CPU.Build.0 = Debug|Any CPU
23+
{BE582835-9F98-4A3D-ABB1-77E51F403848}.Release|Any CPU.ActiveCfg = Release|Any CPU
24+
{BE582835-9F98-4A3D-ABB1-77E51F403848}.Release|Any CPU.Build.0 = Release|Any CPU
25+
{D8900BBB-0818-43D8-BE5A-25F56B33C33E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
26+
{D8900BBB-0818-43D8-BE5A-25F56B33C33E}.Debug|Any CPU.Build.0 = Debug|Any CPU
27+
{D8900BBB-0818-43D8-BE5A-25F56B33C33E}.Release|Any CPU.ActiveCfg = Release|Any CPU
28+
{D8900BBB-0818-43D8-BE5A-25F56B33C33E}.Release|Any CPU.Build.0 = Release|Any CPU
29+
{7F57DB99-60D1-4A8E-9F75-0A283C44E822}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
30+
{7F57DB99-60D1-4A8E-9F75-0A283C44E822}.Debug|Any CPU.Build.0 = Debug|Any CPU
31+
{7F57DB99-60D1-4A8E-9F75-0A283C44E822}.Release|Any CPU.ActiveCfg = Release|Any CPU
32+
{7F57DB99-60D1-4A8E-9F75-0A283C44E822}.Release|Any CPU.Build.0 = Release|Any CPU
33+
EndGlobalSection
34+
EndGlobal

FNA-NET.NativeAssets/Dummy.cs

Whitespace-only changes.

DummyApiDefinition.cs renamed to FNA-NET.NativeAssets/DummyApiDefinition.cs

File renamed without changes.
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
<Project Sdk="Microsoft.NET.Sdk">
2+
<PropertyGroup>
3+
<TargetFrameworks>net8.0;net8.0-windows;net8.0-android;net8.0-ios;net8.0-tvos</TargetFrameworks>
4+
<RootNamespace>Microsoft.Xna.Framework</RootNamespace>
5+
<AssemblyName>FNA.NET.NativeAssets</AssemblyName>
6+
<EnableDefaultItems>false</EnableDefaultItems>
7+
<VersionPrefix>2.0.0.2506</VersionPrefix>
8+
<VersionSuffix></VersionSuffix>
9+
</PropertyGroup>
10+
11+
<PropertyGroup>
12+
<PackageProjectUrl>https://github.com/FNA-NET/FNA</PackageProjectUrl>
13+
<RepositoryUrl>https://github.com/FNA-NET/FNA-NET.NativeAssets</RepositoryUrl>
14+
<Authors>ryancheung</Authors>
15+
<PackageReadmeFile>README.md</PackageReadmeFile>
16+
<PackageLicenseExpression>MIT</PackageLicenseExpression>
17+
<Description>.NET 8 wrapper of FNA native libs for FNA-NET.</Description>
18+
<PackageTags>fna;xna;net8</PackageTags>
19+
<PackageId>FNA.NET.NativeAssets</PackageId>
20+
<Copyright>Copyright 2025 FNA-NET</Copyright>
21+
</PropertyGroup>
22+
23+
<ItemGroup>
24+
<None Include="..\README.md" Pack="true" PackagePath="\"/>
25+
</ItemGroup>
26+
27+
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0-android'">
28+
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
29+
</PropertyGroup>
30+
31+
<PropertyGroup Condition="'$(TargetFramework)' == 'net8.0-ios' or '$(TargetFramework)' == 'net8.0-tvos'">
32+
<IsBindingProject>true</IsBindingProject>
33+
<NoBindingEmbedding>true</NoBindingEmbedding>
34+
<SupportedOSPlatformVersion>11.0</SupportedOSPlatformVersion>
35+
</PropertyGroup>
36+
37+
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0-ios' or '$(TargetFramework)' == 'net8.0-tvos'">
38+
<ObjcBindingApiDefinition Include="DummyApiDefinition.cs" />
39+
<ObjcBindingCoreSource Include="Dummy.cs" Exclude="" />
40+
</ItemGroup>
41+
42+
<ItemGroup>
43+
<None Include="runtimes\FAudio\win-x64\FAudio.dll" Pack="true" PackagePath="runtimes\win-x64\native\"/>
44+
<None Include="runtimes\FAudio\linux-x64\libFAudio.so.0" Pack="true" PackagePath="runtimes\linux-x64\native\"/>
45+
<None Include="runtimes\FAudio\osx\libFAudio.0.dylib" Pack="true" PackagePath="runtimes\osx\native\"/>
46+
47+
<None Include="runtimes\FNA3D\win-x64\FNA3D.dll" Pack="true" PackagePath="runtimes\win-x64\native\"/>
48+
<None Include="runtimes\FNA3D\linux-x64\libFNA3D.so.0" Pack="true" PackagePath="runtimes\linux-x64\native\"/>
49+
<None Include="runtimes\FNA3D\osx\libFNA3D.0.dylib" Pack="true" PackagePath="runtimes\osx\native\"/>
50+
51+
<None Include="runtimes\theorafile\win-x64\libtheorafile.dll" Pack="true" PackagePath="runtimes\win-x64\native\"/>
52+
<None Include="runtimes\theorafile\linux-x64\libtheorafile.so" Pack="true" PackagePath="runtimes\linux-x64\native\"/>
53+
<None Include="runtimes\theorafile\osx\libtheorafile.dylib" Pack="true" PackagePath="runtimes\osx\native\"/>
54+
55+
<None Include="runtimes\SDL3\win-x64\SDL3.dll" Pack="true" PackagePath="runtimes\win-x64\native\"/>
56+
<None Include="runtimes\SDL3\linux-x64\libSDL2-2.0.so.0" Pack="true" PackagePath="runtimes\linux-x64\native\"/>
57+
<None Include="runtimes\SDL3\osx\libSDL2-2.0.0.dylib" Pack="true" PackagePath="runtimes\osx\native\"/>
58+
</ItemGroup>
59+
60+
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0-android'">
61+
<EmbeddedNativeLibrary Include="runtimes\FAudio\android\arm64-v8a\libFAudio.so" Link="libs\arm64-v8a\libFAudio.so" />
62+
63+
<EmbeddedNativeLibrary Include="runtimes\FNA3D\android\arm64-v8a\libFNA3D.so" Link="libs\arm64-v8a\libFNA3D.so" />
64+
65+
<EmbeddedNativeLibrary Include="runtimes\Theorafile\android\arm64-v8a\libtheorafile.so" Link="libs\arm64-v8a\libtheorafile.so" />
66+
67+
<EmbeddedNativeLibrary Include="runtimes\SDL3\android\arm64-v8a\libSDL3.so" Link="libs\arm64-v8a\libSDL3.so" />
68+
</ItemGroup>
69+
70+
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0-ios'">
71+
<NativeReference Include="runtimes\FAudio\ios\FAudio.xcframework">
72+
<Kind>Static</Kind>
73+
<SmartLink>False</SmartLink>
74+
<ForceLoad>True</ForceLoad>
75+
<Frameworks>AVFoundation AudioToolbox CoreGraphics Metal QuartzCore OpenGLES GameController CoreMotion MobileCoreServices ImageIO CoreHaptics CoreBluetooth</Frameworks>
76+
</NativeReference>
77+
<NativeReference Include="runtimes\FNA3D\ios\FNA3D.xcframework">
78+
<Kind>Static</Kind>
79+
<SmartLink>False</SmartLink>
80+
<ForceLoad>True</ForceLoad>
81+
</NativeReference>
82+
<NativeReference Include="runtimes\SDL3\ios\SDL3.xcframework">
83+
<Kind>Static</Kind>
84+
<SmartLink>False</SmartLink>
85+
<ForceLoad>True</ForceLoad>
86+
</NativeReference>
87+
<NativeReference Include="runtimes\Theorafile\ios\theorafile.xcframework">
88+
<Kind>Static</Kind>
89+
<SmartLink>False</SmartLink>
90+
<ForceLoad>True</ForceLoad>
91+
</NativeReference>
92+
</ItemGroup>
93+
94+
<ItemGroup Condition="'$(TargetFramework)' == 'net8.0-tvos'">
95+
<NativeReference Include="runtimes\FAudio\tvos\FAudio.xcframework">
96+
<Kind>Static</Kind>
97+
<SmartLink>False</SmartLink>
98+
<ForceLoad>True</ForceLoad>
99+
<Frameworks>AVFoundation AudioToolbox CoreGraphics Metal QuartzCore OpenGLES GameController CoreBluetooth MobileCoreServices ImageIO CoreHaptics</Frameworks>
100+
</NativeReference>
101+
<NativeReference Include="runtimes\FNA3D\tvos\FNA3D.xcframework">
102+
<Kind>Static</Kind>
103+
<SmartLink>False</SmartLink>
104+
<ForceLoad>True</ForceLoad>
105+
</NativeReference>
106+
<NativeReference Include="runtimes\SDL3\tvos\SDL3.xcframework">
107+
<Kind>Static</Kind>
108+
<SmartLink>False</SmartLink>
109+
<ForceLoad>True</ForceLoad>
110+
</NativeReference>
111+
<NativeReference Include="runtimes\Theorafile\tvos\theorafile.xcframework">
112+
<Kind>Static</Kind>
113+
<SmartLink>False</SmartLink>
114+
<ForceLoad>True</ForceLoad>
115+
</NativeReference>
116+
</ItemGroup>
117+
</Project>
Binary file not shown.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>AvailableLibraries</key>
6+
<array>
7+
<dict>
8+
<key>LibraryIdentifier</key>
9+
<string>ios-arm64_x86_64-simulator</string>
10+
<key>LibraryPath</key>
11+
<string>libFAudio.a</string>
12+
<key>SupportedArchitectures</key>
13+
<array>
14+
<string>arm64</string>
15+
<string>x86_64</string>
16+
</array>
17+
<key>SupportedPlatform</key>
18+
<string>ios</string>
19+
<key>SupportedPlatformVariant</key>
20+
<string>simulator</string>
21+
</dict>
22+
<dict>
23+
<key>LibraryIdentifier</key>
24+
<string>ios-arm64</string>
25+
<key>LibraryPath</key>
26+
<string>libFAudio.a</string>
27+
<key>SupportedArchitectures</key>
28+
<array>
29+
<string>arm64</string>
30+
</array>
31+
<key>SupportedPlatform</key>
32+
<string>ios</string>
33+
</dict>
34+
</array>
35+
<key>CFBundlePackageType</key>
36+
<string>XFWK</string>
37+
<key>XCFrameworkFormatVersion</key>
38+
<string>1.0</string>
39+
</dict>
40+
</plist>

0 commit comments

Comments
 (0)