@@ -22,16 +22,29 @@ partial class Build {
2222 {
2323 var runtimes = RootDirectory / "src" / "Native" / "Silk.NET.MoltenVK.Native" / "runtimes" ;
2424
25- InheritedShell ( $ "./fetchDependencies --ios --iossim --maccat --macos ", MoltenVKPath ) . AssertZeroExitCode ( ) ;
26- InheritedShell ( $ "make ios iossim maccat macos ", MoltenVKPath ) . AssertZeroExitCode ( ) ;
25+ InheritedShell ( $ "./fetchDependencies --all ", MoltenVKPath ) . AssertZeroExitCode ( ) ;
26+ InheritedShell ( $ "make", MoltenVKPath ) . AssertZeroExitCode ( ) ;
2727
2828 var xcFrameworkDir = MoltenVKPath / "Package" / "Release" / "MoltenVK" / "static" / "MoltenVK.xcframework" ;
2929
3030 CopyFile ( xcFrameworkDir / "ios-arm64" / "libMoltenVK.a" , runtimes / "ios" / "native" / "libMoltenVK.a" , FileExistsPolicy . Overwrite ) ;
3131 CopyFile ( xcFrameworkDir / "ios-arm64_x86_64-simulator" / "libMoltenVK.a" , runtimes / "iossimulator" / "native" / "libMoltenVK.a" , FileExistsPolicy . Overwrite ) ;
3232 CopyFile ( xcFrameworkDir / "ios-arm64_x86_64-maccatalyst" / "libMoltenVK.a" , runtimes / "maccatalyst" / "native" / "libMoltenVK.a" , FileExistsPolicy . Overwrite ) ;
33- CopyFile ( MoltenVKPath / "Package" / "Release" / "MoltenVK" / "dynamic" / "dylib" / "macOS" / "libMoltenVK.dylib" , runtimes / "osx" / "native" / "libMoltenVK.dylib" , FileExistsPolicy . Overwrite ) ;
33+ CopyFile ( xcFrameworkDir / "tvos-arm64_arm64e" / "libMoltenVK.a" , runtimes / "tvos" / "native" / "libMoltenVK.a" , FileExistsPolicy . Overwrite ) ;
34+ CopyFile ( xcFrameworkDir / "tvos-arm64_x86_64-simulator" / "libMoltenVK.a" , runtimes / "tvossimulator" / "native" / "libMoltenVK.a" , FileExistsPolicy . Overwrite ) ;
35+
36+ var macOsDylib = runtimes / "osx" / "native" / "libMoltenVK.dylib" ;
37+
38+ CopyFile ( MoltenVKPath / "Package" / "Release" / "MoltenVK" / "dynamic" / "dylib" / "macOS" / "libMoltenVK.dylib" , macOsDylib , FileExistsPolicy . Overwrite ) ;
3439 CopyFile ( MoltenVKPath / "Package" / "Release" / "MoltenVK" / "dynamic" / "dylib" / "macOS" / "MoltenVK_icd.json" , runtimes / "osx" / "native" / "MoltenVK_icd.json" , FileExistsPolicy . Overwrite ) ;
40+
41+ // Only strip the macOS binary since stripping static libraries is too involved, and
42+ // the final AOT'd binary can be stripped anyway.
43+ InheritedShell ( $ "strip -Sx -no_code_signature_warning { macOsDylib } ") . AssertZeroExitCode ( ) ;
44+
45+ // Re-sign, as stripping a universal binary invalidates the signature.
46+ InheritedShell ( $ "codesign --remove-signature { macOsDylib } ") . AssertZeroExitCode ( ) ;
47+ InheritedShell ( $ "codesign --sign - { macOsDylib } ") . AssertZeroExitCode ( ) ;
3548 }
3649
3750 PrUpdatedNativeBinary ( "MoltenVK" ) ;
0 commit comments