diff options
| author | ruki <[email protected]> | 2019-04-24 00:34:33 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2019-04-23 21:27:19 +0800 |
| commit | a4b4fff7cb09c6a8359bad4ee204559eb0e41c35 (patch) | |
| tree | ad4d4ae5a9eaff5a765a7c83040e84b6d757dc07 /xmake/modules/package/tools/autoconf.lua | |
| parent | 6a430c2260ea9ba01cfd164bfe265157b15c235f (diff) | |
improve autoconf tools
Diffstat (limited to 'xmake/modules/package/tools/autoconf.lua')
| -rw-r--r-- | xmake/modules/package/tools/autoconf.lua | 24 |
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"), ' ') |
