summaryrefslogtreecommitdiff
path: root/xmake/platforms
diff options
context:
space:
mode:
authorruki <[email protected]>2019-05-09 22:56:07 +0800
committerruki <[email protected]>2019-05-09 11:36:44 +0800
commit29402afc13dc1678661a4ce35efb657eb138dc77 (patch)
tree144940aed2bcde07ca2380a81b5a50b5a2599403 /xmake/platforms
parent1e711f4240904d564062aea9ca9c43d832dcbe61 (diff)
find android sdk
Diffstat (limited to 'xmake/platforms')
-rw-r--r--xmake/platforms/android/config.lua13
-rw-r--r--xmake/platforms/android/xmake.lua14
2 files changed, 20 insertions, 7 deletions
diff --git a/xmake/platforms/android/config.lua b/xmake/platforms/android/config.lua
index 860f37e14..246e96291 100644
--- a/xmake/platforms/android/config.lua
+++ b/xmake/platforms/android/config.lua
@@ -22,6 +22,7 @@
import("core.project.config")
import("core.base.singleton")
import("detect.sdks.find_ndk")
+import("detect.sdks.find_android_sdk")
import("private.platform.toolchain")
import("private.platform.check_arch")
import("private.platform.check_toolchain")
@@ -43,6 +44,14 @@ function _check_ndk()
end
end
+-- check the android sdk
+function _check_android_sdk()
+ local sdk = find_android_sdk(config.get("android_sdk"), {force = true, verbose = true})
+ if sdk then
+ config.set("sdk", sdk.sdkdir, {force = true, readonly = true}) -- maybe to global
+ end
+end
+
-- get toolchains
function _toolchains()
@@ -80,7 +89,6 @@ function _toolchains()
cxx:add({name = "g++", cross = cross}, "clang++")
-- init the c preprocessor
--- cpp:add({name = "cpp", cross = cross, pathes = gcc_toolchain_bin}, "cpp")
cpp:add({name = "gcc -E", cross = cross}, "clang -E")
-- init the assember
@@ -131,6 +139,9 @@ function main(platform, name)
-- check ndk
_check_ndk()
+ -- check android sdk
+ _check_android_sdk()
+
-- check ld and sh, @note toolchains must be initialized after calling check_ndk()
local toolchains = singleton.get("android.toolchains", _toolchains)
check_toolchain(config, "ld", toolchains.ld)
diff --git a/xmake/platforms/android/xmake.lua b/xmake/platforms/android/xmake.lua
index 04b18db05..5dc3a6982 100644
--- a/xmake/platforms/android/xmake.lua
+++ b/xmake/platforms/android/xmake.lua
@@ -43,16 +43,18 @@ platform("android")
set_menu {
config =
{
- {category = "Android NDK Configuration" }
- , {nil, "ndk", "kv", nil, "The NDK Directory" }
- , {nil, "ndk_sdkver", "kv", "auto", "The SDK Version for NDK" }
+ {category = "Android NDK Configuration" }
+ , {nil, "ndk", "kv", nil, "The NDK Directory" }
+ , {nil, "ndk_sdkver", "kv", "auto", "The SDK Version for NDK" }
+ , {nil, "android_sdk", "kv", nil, "The Android SDK Directory" }
}
, global =
{
- {category = "Android NDK Configuration" }
- , {nil, "ndk", "kv", nil, "The NDK Directory" }
- , {nil, "ndk_sdkver", "kv", "auto", "The SDK Version for NDK" }
+ {category = "Android NDK Configuration" }
+ , {nil, "ndk", "kv", nil, "The NDK Directory" }
+ , {nil, "ndk_sdkver", "kv", "auto", "The SDK Version for NDK" }
+ , {nil, "android_sdk", "kv", nil, "The Android SDK Directory" }
}
}