| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package("ndk")
- set_kind("toolchain")
- set_homepage("https://developer.android.com/ndk")
- set_description("Android NDK toolchain.")
- if is_host("windows", "linux", "macosx") then
- set_urls("https://dl.google.com/android/repository/android-ndk-$(version).zip", {version = function(version)
- -- 27.3 -> r27d-linux
- local minor = ''
- local suffix = ''
- local host = os.host()
- if version:minor() > 0 then
- minor = string.char(97 + version:minor())
- end
- if version:major() < 23 then
- suffix = '-x86_64'
- end
- if host == "macosx" then
- host = "darwin"
- end
- return ("r%s%s-%s%s"):format(version:major(), minor, host, suffix)
- end})
- end
- if is_host("windows") then
- add_versionfiles("versions/windows.txt")
- elseif is_host("linux") then
- add_versionfiles("versions/linux.txt")
- elseif is_host("macosx") then
- add_versionfiles("versions/macosx.txt")
- end
- on_load(function (package)
- package:mark_as_pathenv("ANDROID_NDK_ROOT")
- package:mark_as_pathenv("ANDROID_NDK_HOME")
- package:setenv("ANDROID_NDK_ROOT", ".")
- package:setenv("ANDROID_NDK_HOME", ".")
- end)
- on_check("@macosx|arm64", function(package)
- assert(package:version():gt("23.0"), "package(ndk <=23.0): unsupported architecture, please increase the NDK version.")
- end)
- on_install("@windows|x64", "@msys|x86_64", "@linux|x86_64", "@macosx", function (package)
- os.vcp("*", package:installdir())
- end)
- on_test(function (package)
- local host = os.host()
- if host == "macosx" then
- host = "darwin"
- end
- os.vrunv(path.join(package:installdir(), "toolchains/llvm/prebuilt", host .. "-x86_64", "bin/clang"), {"--version"})
- end)
|