Platforms in atbuild
are more explicit than in other tools you may have used.
atbuild supports these “specific” platforms:
linux
, which means Linux x64osx
which means OSX x64ios-x86_64
which is a 64-bit iOS Simulatorios-i386
which is a 32-bit iOS Simulatorios-armv7
which is a 32-bit iOS deviceios-arm64
which is a 64-bit iOS deviceThese platforms can be used anywhere and identify an exact device target. Our low-level build tools work with these values to generate code for the chosen ISA.
In addition, atbuild supports the following “generic” platforms:
ios
, an iOS platform of unspecified architectureThese platforms are valid for tools that need to know the OS, but don’t need to know the exact ISA. However, [atllbuild](atllbuild.html)
, our low level build tool, compiles for a single, specific platform. So it will not accept a generic platform directly.
To create a fat binary for all architectures in a generic platform, simply chain atllbuild
with packageatbin
as shown:
(package
:name "atbin"
:tasks {
:lib {
:tool "atllbuild"
:name "foo"
:output-type "static-library"
:sources ["lib/**.swift"]
}
:package {
:tool "packageatbin"
:name "foo"
:atllbuild-task "lib"
:platforms ["all"]
}
}
)
and run with atbuild --platform ios
. This will re-run the lib
task for each specific platform in the ios
generic platform.
© 2016 Anarchy Tools and contributors.