summaryrefslogtreecommitdiff
path: root/xmake/modules
diff options
context:
space:
mode:
authorruki <[email protected]>2020-03-27 22:39:53 +0800
committerruki <[email protected]>2020-03-27 09:59:22 +0800
commitbbf30dbc869965a523ba20a0ca65be163fd80d06 (patch)
treed7b290a342daed2b02922e843973e92e2d682438 /xmake/modules
parenteb477c19a1e5f4cf7cd8320dcca30d1562c285fc (diff)
improve android abi
Diffstat (limited to 'xmake/modules')
-rw-r--r--xmake/modules/detect/sdks/find_ndk.lua14
-rw-r--r--xmake/modules/detect/sdks/find_qt.lua2
-rw-r--r--xmake/modules/package/manager/conan/find_package.lua24
-rw-r--r--xmake/modules/package/manager/conan/install_package.lua24
-rw-r--r--xmake/modules/package/tools/autoconf.lua12
-rw-r--r--xmake/modules/private/action/trybuild/autotools.lua12
6 files changed, 50 insertions, 38 deletions
diff --git a/xmake/modules/detect/sdks/find_ndk.lua b/xmake/modules/detect/sdks/find_ndk.lua
index 70801d697..f88d54693 100644
--- a/xmake/modules/detect/sdks/find_ndk.lua
+++ b/xmake/modules/detect/sdks/find_ndk.lua
@@ -103,13 +103,15 @@ function _find_ndk(sdkdir, arch, ndk_sdkver, ndk_toolchains_ver)
-- get cross
local crosses =
{
- ["armv5te"] = "arm-linux-androideabi-"
- , ["armv7-a"] = "arm-linux-androideabi-"
+ ["armv5te"] = "arm-linux-androideabi-" -- deprecated
+ , ["armv7-a"] = "arm-linux-androideabi-" -- deprecated
+ , ["armeabi"] = "arm-linux-androideabi-" -- removed in ndk r17
+ , ["armeabi-v7a"] = "arm-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-"
+ , mips = "mips-linux-android-" -- removed in ndk r17
+ , mips64 = "mips64-linux-android-" -- removed in ndk r17
}
local cross = crosses[arch]
@@ -118,6 +120,8 @@ function _find_ndk(sdkdir, arch, ndk_sdkver, ndk_toolchains_ver)
{
["armv5te"] = "arm-linux-androideabi-*"
, ["armv7-a"] = "arm-linux-androideabi-*"
+ , ["armeabi"] = "arm-linux-androideabi-*"
+ , ["armeabi-v7a"] = "arm-linux-androideabi-*"
, ["arm64-v8a"] = "aarch64-linux-android-*"
, i386 = "x86-*"
, x86_64 = "x86_64-*"
@@ -174,7 +178,7 @@ end
--
-- @param sdkdir the ndk directory
-- @param opt the argument options
--- e.g. {arch = "[armv5te|armv6|armv7-a|armv8-a|arm64-v8a]", verbose = true, force = false, sdkver = 19, toolchains_ver = "4.9"}
+-- e.g. {arch = "[armeabi|armeabi-v7a|arm64-v8a]", verbose = true, force = false, sdkver = 19, toolchains_ver = "4.9"}
--
-- @return the ndk toolchains. e.g. {bindir = .., cross = ..}
--
diff --git a/xmake/modules/detect/sdks/find_qt.lua b/xmake/modules/detect/sdks/find_qt.lua
index e6c77ebf5..9062a9212 100644
--- a/xmake/modules/detect/sdks/find_qt.lua
+++ b/xmake/modules/detect/sdks/find_qt.lua
@@ -49,7 +49,7 @@ function _find_sdkdir(sdkdir, sdkver)
local subdir = "android_*"
if is_arch("arm64-v8a") then
subdir = "android_arm64_v8a"
- elseif is_arch("armv7-a") then
+ elseif is_arch("armeabi-v7a", "armeabi", "armv7-a", "armv5te") then -- armv7-a/armv5te are deprecated
subdir = "android_armv7"
elseif is_arch("i386") then
subdir = "android_x86"
diff --git a/xmake/modules/package/manager/conan/find_package.lua b/xmake/modules/package/manager/conan/find_package.lua
index 233784976..bdfd1715e 100644
--- a/xmake/modules/package/manager/conan/find_package.lua
+++ b/xmake/modules/package/manager/conan/find_package.lua
@@ -35,17 +35,19 @@ end
-- get conan architecture
function _conan_get_arch(opt)
- local archs = {x86_64 = "x86_64",
- x64 = "x86_64",
- i386 = "x86",
- x86 = "x86",
- armv7 = "armv7",
- ["armv7-a"] = "armv7", -- for android
- armv7s = "armv7s", -- for iphoneos
- arm64 = "armv8", -- for iphoneos
- ["arm64-v8a"] = "armv8", -- for android
- mips = "mips",
- mips64 = "mips64"}
+ local archs = {x86_64 = "x86_64",
+ x64 = "x86_64",
+ i386 = "x86",
+ x86 = "x86",
+ armv7 = "armv7",
+ ["armv7-a"] = "armv7", -- for android, deprecated
+ ["armeabi"] = "armv7", -- for android, removed in ndk r17
+ ["armeabi-v7a"] = "armv7", -- for android
+ armv7s = "armv7s", -- for iphoneos
+ arm64 = "armv8", -- for iphoneos
+ ["arm64-v8a"] = "armv8", -- for android
+ mips = "mips",
+ mips64 = "mips64"}
return archs[opt.arch]
end
diff --git a/xmake/modules/package/manager/conan/install_package.lua b/xmake/modules/package/manager/conan/install_package.lua
index 458816220..a74cd8817 100644
--- a/xmake/modules/package/manager/conan/install_package.lua
+++ b/xmake/modules/package/manager/conan/install_package.lua
@@ -177,17 +177,19 @@ function main(name, opt)
end
-- set architecture
- local archs = {x86_64 = "x86_64",
- x64 = "x86_64",
- i386 = "x86",
- x86 = "x86",
- armv7 = "armv7",
- ["armv7-a"] = "armv7", -- for android
- armv7s = "armv7s", -- for iphoneos
- arm64 = "armv8", -- for iphoneos
- ["arm64-v8a"] = "armv8", -- for android
- mips = "mips",
- mips64 = "mips64"}
+ local archs = {x86_64 = "x86_64",
+ x64 = "x86_64",
+ i386 = "x86",
+ x86 = "x86",
+ armv7 = "armv7",
+ ["armv7-a"] = "armv7", -- for android, deprecated
+ ["armeabi"] = "armv7", -- for android, removed in ndk r17
+ ["armeabi-v7a"] = "armv7", -- for android
+ armv7s = "armv7s", -- for iphoneos
+ arm64 = "armv8", -- for iphoneos
+ ["arm64-v8a"] = "armv8", -- for android
+ mips = "mips",
+ mips64 = "mips64"}
table.insert(argv, "-s")
local arch = archs[opt.arch]
if arch then
diff --git a/xmake/modules/package/tools/autoconf.lua b/xmake/modules/package/tools/autoconf.lua
index 4b83d12ef..c029b3d54 100644
--- a/xmake/modules/package/tools/autoconf.lua
+++ b/xmake/modules/package/tools/autoconf.lua
@@ -45,15 +45,17 @@ function _get_configs(package, configs)
-- @see https://developer.android.com/ndk/guides/other_build_systems#autoconf
local triples =
{
- ["armv5te"] = "arm-linux-androideabi",
- ["armv7-a"] = "arm-linux-androideabi",
+ ["armv5te"] = "arm-linux-androideabi", -- deprecated
+ ["armv7-a"] = "arm-linux-androideabi", -- deprecated
+ ["armeabi"] = "arm-linux-androideabi", -- removed in ndk r17
+ ["armeabi-v7a"] = "arm-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"
+ mips = "mips-linux-android", -- removed in ndk r17
+ mips64 = "mips64-linux-android" -- removed in ndk r17
}
- table.insert(configs, "--host=" .. (triples[package:arch()] or triples["armv7-a"]))
+ table.insert(configs, "--host=" .. (triples[package:arch()] or triples["armeabi-v7a"]))
elseif package:is_plat("mingw") then
local triples =
{
diff --git a/xmake/modules/private/action/trybuild/autotools.lua b/xmake/modules/private/action/trybuild/autotools.lua
index 6b0861b62..54f81d18d 100644
--- a/xmake/modules/private/action/trybuild/autotools.lua
+++ b/xmake/modules/private/action/trybuild/autotools.lua
@@ -129,15 +129,17 @@ function _get_configs(artifacts_dir)
-- @see https://developer.android.com/ndk/guides/other_build_systems#autoconf
local triples =
{
- ["armv5te"] = "arm-linux-androideabi",
- ["armv7-a"] = "arm-linux-androideabi",
+ ["armv5te"] = "arm-linux-androideabi", -- deprecated
+ ["armv7-a"] = "arm-linux-androideabi", -- deprecated
+ ["armeabi"] = "arm-linux-androideabi", -- removed in ndk r17
+ ["armeabi-v7a"] = "arm-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"
+ mips = "mips-linux-android", -- removed in ndk r17
+ mips64 = "mips64-linux-android" -- removed in ndk r17
}
- table.insert(configs, "--host=" .. (triples[config.arch()] or triples["armv7-a"]))
+ table.insert(configs, "--host=" .. (triples[config.arch()] or triples["armeabi-v7a"]))
elseif is_plat("mingw") then
local triples =
{