summaryrefslogtreecommitdiff
path: root/xmake/toolchains/ndk/check.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2021-02-16 23:43:57 +0800
committerruki <[email protected]>2021-02-16 23:43:57 +0800
commit5ec37d1979611aad83348afc8fc8c3adabbbc5b7 (patch)
tree29de062fe30b7888ac9d69c375854f579d45515b /xmake/toolchains/ndk/check.lua
parent7209d292659792a6d92071959537c09a2bd48c4c (diff)
improve cross/bindir/sdkdir for toolchains
Diffstat (limited to 'xmake/toolchains/ndk/check.lua')
-rw-r--r--xmake/toolchains/ndk/check.lua27
1 files changed, 16 insertions, 11 deletions
diff --git a/xmake/toolchains/ndk/check.lua b/xmake/toolchains/ndk/check.lua
index e5e36fbf7..66bfe72f3 100644
--- a/xmake/toolchains/ndk/check.lua
+++ b/xmake/toolchains/ndk/check.lua
@@ -24,13 +24,17 @@ import("detect.sdks.find_ndk")
import("detect.sdks.find_android_sdk")
-- check the ndk toolchain
-function _check_ndk()
- local ndk = find_ndk(config.get("ndk"), {force = true, verbose = true})
+function _check_ndk(toolchain)
+ local ndk = find_ndk(toolchain:config("ndk") or config.get("ndk"), {force = true, verbose = true})
if ndk then
- config.set("ndk", ndk.sdkdir, {force = true, readonly = true})
- config.set("bin", ndk.bindir, {force = true, readonly = true})
- config.set("cross", ndk.cross, {force = true, readonly = true})
- config.set("gcc_toolchain", ndk.gcc_toolchain, {force = true, readonly = true})
+ toolchain:config_set("ndk", ndk.sdkdir)
+ toolchain:config_set("bindir", ndk.bindir)
+ toolchain:config_set("cross", ndk.cross)
+ toolchain:config_set("gcc_toolchain", ndk.gcc_toolchain)
+ toolchain:config_set("ndkver", ndk.ndkver)
+ toolchain:config_set("ndk_sdkver", ndk.sdkver)
+ toolchain:config_set("ndk_toolchains_ver", ndk.toolchains_ver)
+ toolchain:configs_save()
else
-- failed
cprint("${bright color.error}please run:")
@@ -41,16 +45,17 @@ function _check_ndk()
end
-- check the android sdk
-function _check_android_sdk()
- local sdk = find_android_sdk(config.get("android_sdk"), {force = true, verbose = true})
+function _check_android_sdk(toolchain)
+ local sdk = find_android_sdk(toolchain:config("android_sdk") or config.get("android_sdk"), {force = true, verbose = true})
if sdk then
- config.set("sdk", sdk.sdkdir, {force = true, readonly = true})
+ toolchain:config_set("android_sdk", sdk.sdkdir)
+ toolchain:configs_save()
end
end
-- main entry
function main(toolchain)
- _check_android_sdk()
- _check_ndk()
+ _check_android_sdk(toolchain)
+ _check_ndk(toolchain)
return true
end