From 1da741149303a4be7c14c4ff1593f823ba560b7d Mon Sep 17 00:00:00 2001 From: neslib Date: Sat, 10 Sep 2016 10:45:08 -0700 Subject: [PATCH] Added support for ios-arm64 compilation (#127) --- scripts/toolchain.lua | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/scripts/toolchain.lua b/scripts/toolchain.lua index 06631fa..3206bd7 100644 --- a/scripts/toolchain.lua +++ b/scripts/toolchain.lua @@ -26,6 +26,7 @@ function toolchain(_buildDir, _libDir) { "linux-mips-gcc", "Linux (MIPS, GCC compiler)" }, { "linux-arm-gcc", "Linux (ARM, GCC compiler)" }, { "ios-arm", "iOS - ARM" }, + { "ios-arm64", "iOS - ARM64" }, { "ios-simulator", "iOS - Simulator" }, { "tvos-arm64", "tvOS - ARM64" }, { "tvos-simulator", "tvOS - Simulator" }, @@ -201,7 +202,13 @@ function toolchain(_buildDir, _libDir) premake.gcc.ar = "ar" location (path.join(_buildDir, "projects", _ACTION .. "-ios-arm")) - elseif "ios-simulator" == _OPTIONS["gcc"] then + elseif "ios-arm64" == _OPTIONS["gcc"] then + premake.gcc.cc = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" + premake.gcc.cxx = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++" + premake.gcc.ar = "ar" + location (path.join(_buildDir, "projects", _ACTION .. "-ios-arm64")) + + elseif "ios-simulator" == _OPTIONS["gcc"] then premake.gcc.cc = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang" premake.gcc.cxx = "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++" premake.gcc.ar = "ar" @@ -1074,6 +1081,24 @@ function toolchain(_buildDir, _libDir) "--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" ..iosPlatform .. ".sdk", } + configuration { "ios-arm64" } + targetdir (path.join(_buildDir, "ios-arm64/bin")) + objdir (path.join(_buildDir, "ios-arm64/obj")) + libdirs { path.join(_libDir, "lib/ios-arm64") } + linkoptions { + "-miphoneos-version-min=7.0", + "-arch arm64", + "--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" ..iosPlatform .. ".sdk", + "-L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" ..iosPlatform .. ".sdk/usr/lib/system", + "-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" ..iosPlatform .. ".sdk/System/Library/Frameworks", + "-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" ..iosPlatform .. ".sdk/System/Library/PrivateFrameworks", + } + buildoptions { + "-miphoneos-version-min=7.0", + "-arch arm64", + "--sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS" ..iosPlatform .. ".sdk", + } + configuration { "ios-simulator" } targetdir (path.join(_buildDir, "ios-simulator/bin")) objdir (path.join(_buildDir, "ios-simulator/obj"))