diff options
| author | ruki <[email protected]> | 2021-02-16 23:45:08 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2021-02-16 23:45:08 +0800 |
| commit | 3fd2197be60b009f4ed16ec64a35f60c9ac0782b (patch) | |
| tree | e4b52024bcc4e2f49a25ff224ae95ba56f22bf29 | |
| parent | 5ec37d1979611aad83348afc8fc8c3adabbbc5b7 (diff) | |
fix android deploy
| -rw-r--r-- | xmake/rules/qt/deploy/android.lua | 15 | ||||
| -rw-r--r-- | xmake/toolchains/ndk/check.lua | 1 |
2 files changed, 10 insertions, 6 deletions
diff --git a/xmake/rules/qt/deploy/android.lua b/xmake/rules/qt/deploy/android.lua index b4dde3721..6c61c7baa 100644 --- a/xmake/rules/qt/deploy/android.lua +++ b/xmake/rules/qt/deploy/android.lua @@ -35,6 +35,9 @@ end -- deploy application package for android function main(target, opt) + -- get ndk toolchain + local toolchain_ndk = toolchain.load("ndk", {plat = target:plat(), arch = target:arch()}) + -- get target apk path local target_apk = path.join(target:targetdir(), target:basename() .. ".apk") @@ -53,8 +56,8 @@ function main(target, opt) local qt = target:data("qt") -- get ndk - local ndk = path.translate(assert(config.get("ndk"), "cannot get NDK!")) - local ndk_sdkver = assert(config.get("ndk_sdkver"), "cannot get the sdk version of NDK!") + local ndk = path.translate(assert(toolchain_ndk:config("ndk"), "cannot get NDK!")) + local ndk_sdkver = assert(toolchain_ndk:config("ndk_sdkver"), "cannot get the sdk version of NDK!") -- get ndk host local ndk_host = os.host() .. "-" .. os.arch() @@ -83,10 +86,10 @@ function main(target, opt) local java_home = assert(os.getenv("JAVA_HOME"), "please set $JAVA_HOME environment variable first!") -- get android sdk directory - local android_sdkdir = path.translate(assert(config.get("android_sdk"), "please run `xmake f --android_sdk=xxx` to set the android sdk directory!")) + local android_sdkdir = path.translate(assert(toolchain_ndk:config("android_sdk"), "please run `xmake f --android_sdk=xxx` to set the android sdk directory!")) -- get android build-tools version - local android_build_toolver = assert(config.get("build_toolver"), "please run `xmake f --build_toolver=xxx` to set the android build-tools version!") + local android_build_toolver = assert(toolchain_ndk:config("build_toolver"), "please run `xmake f --build_toolver=xxx` to set the android build-tools version!") -- get qt sdk version local qt_sdkver = config.get("qt_sdkver") @@ -132,12 +135,12 @@ function main(target, opt) -- get stdcpp path local stdcpp_path = path.join(ndk, "sources/cxx-stl/llvm-libc++/libs", target_arch, "libc++_shared.so") if qt_sdkver and qt_sdkver:ge("5.14") then - local toolchain = path.directory(assert(config.get("bin"), "toolchain/bin directory not found!")) + local toolchain = path.directory(assert(toolchain_ndk:bindir(), "toolchain/bin directory not found!")) stdcpp_path = path.join(toolchain, "sysroot", "usr", "lib") end -- get toolchain version - local ndk_toolchains_ver = config.get("ndk_toolchains_ver") or "4.9" + local ndk_toolchains_ver = toolchain_ndk:config("ndk_toolchains_ver") or "4.9" -- generate android-deployment-settings.json file local android_deployment_settings = path.join(workdir, "android-deployment-settings.json") diff --git a/xmake/toolchains/ndk/check.lua b/xmake/toolchains/ndk/check.lua index 66bfe72f3..ceedf4341 100644 --- a/xmake/toolchains/ndk/check.lua +++ b/xmake/toolchains/ndk/check.lua @@ -49,6 +49,7 @@ 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 toolchain:config_set("android_sdk", sdk.sdkdir) + toolchain:config_set("build_toolver", sdk.build_toolver) toolchain:configs_save() end end |
