Add universal dylib.

This commit is contained in:
treeform 2021-09-06 11:18:27 -07:00
parent f87a6976ed
commit a16aa9ec60

View file

@ -17,10 +17,17 @@ task docs, "Generate API documents":
exec "nim doc --index:on --project --out:docs --hints:off src/pixie.nim"
task bindings, "Generate bindings":
proc compile(libName: string, flags = "") =
exec "nim c -f " & flags & " -d:release --app:lib --gc:arc --tlsEmulation:off --out:" & libName & ".arm --outdir:bindings/generated bindings/bindings.nim"
when defined(windows):
const libName = "pixie.dll"
compile "pixie.dll"
elif defined(macosx):
const libName = "libpixie.dylib"
compile "libpixie.dylib.arm", "-l:'-target arm64-apple-macos11' -t:'-target arm64-apple-macos11'"
compile "libpixie.dylib.x64", "-l:'-target x86_64-apple-macos10.12' -t:'-target x86_64-apple-macos10.12'"
exec "lipo bindings/generated/libpixie.dylib.arm bindings/generated/libpixie.dylib.x64 -output bindings/generated/libpixie.dylib -create"
else:
const libName = "libpixie.so"
exec "nim c -f -d:release --app:lib --gc:arc --tlsEmulation:off --out:" & libName & " --outdir:bindings/generated bindings/bindings.nim"
compile "libpixie.so"