summaryrefslogtreecommitdiff
path: root/xmake/modules/package/tools/autoconf.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2019-04-24 00:34:33 +0800
committerruki <[email protected]>2019-04-23 21:27:19 +0800
commita4b4fff7cb09c6a8359bad4ee204559eb0e41c35 (patch)
treead4d4ae5a9eaff5a765a7c83040e84b6d757dc07 /xmake/modules/package/tools/autoconf.lua
parent6a430c2260ea9ba01cfd164bfe265157b15c235f (diff)
improve autoconf tools
Diffstat (limited to 'xmake/modules/package/tools/autoconf.lua')
-rw-r--r--xmake/modules/package/tools/autoconf.lua24
1 files changed, 23 insertions, 1 deletions
diff --git a/xmake/modules/package/tools/autoconf.lua b/xmake/modules/package/tools/autoconf.lua
index 8104fc822..d44adea5e 100644
--- a/xmake/modules/package/tools/autoconf.lua
+++ b/xmake/modules/package/tools/autoconf.lua
@@ -22,6 +22,28 @@
function _get_configs(package, configs)
local configs = configs or {}
table.insert(configs, "--prefix=" .. package:installdir())
+ if package:is_plat("iphoneos") then
+ local hosts = { arm64 = "aarch64-apple-darwin",
+ arm64e = "aarch64-apple-darwin",
+ armv7 = "armv7-apple-darwin",
+ armv7s = "armv7s-apple-darwin",
+ i386 = "i386-apple-darwin",
+ x86_64 = "x86_64-apple-darwin"}
+ table.insert(configs, "--host=" .. (hosts[package:arch()] or "aarch64-apple-darwin"))
+ elseif package:is_plat("android") then
+ -- @see https://developer.android.com/ndk/guides/other_build_systems#autoconf
+ local triples =
+ {
+ ["armv5te"] = "arm-linux-androideabi"
+ , ["armv7-a"] = "armv7a-linux-androideabi"
+ , ["arm64-v8a"] = "aarch64-linux-android"
+ , i386 = "i686-linux-android"
+ , x86_64 = "x86_64-linux-android"
+ , mips = "mips-linux-android"
+ , mips64 = "mips64-linux-android"
+ }
+ table.insert(configs, "--host=" .. (triples[package:arch()] or "armv7a-linux-androideabi"))
+ end
return configs
end
@@ -47,7 +69,7 @@ function _enter_envs(package)
envs.PKG_CONFIG_PATH = os.getenv("PKG_CONFIG_PATH")
-- set new environments
- if package:plat() == os.host() then
+ if package:is_plat(os.host()) then
os.addenvp("CFLAGS", package:config("cflags"), ' ')
os.addenvp("CFLAGS", package:config("cxflags"), ' ')
os.addenvp("CXXFLAGS", package:config("cxflags"), ' ')