2
0
Эх сурвалжийг харах

add on_fetch for android ndk

ruki 4 жил өмнө
parent
commit
c147564d84

+ 1 - 1
packages/l/libbpf/xmake.lua

@@ -13,7 +13,7 @@ package("libbpf")
 
     on_load("android", function (package)
         import("core.tool.toolchain")
-        local ndk_sdkver = toolchain.load("ndk"):config("ndk_sdkver")
+        local ndk_sdkver = toolchain.load("ndk", {plat = package:plat(), arch = package:arch()}):config("ndk_sdkver")
         if ndk_sdkver and tonumber(ndk_sdkver) < 23 then
             package:add("deps", "memorymapping")
         end

+ 11 - 0
packages/n/ndk/xmake.lua

@@ -25,6 +25,17 @@ package("ndk")
         add_versions("22.0", "14fce4dea7fb3facbc0e3d20270007bffec3ba383aec02e8b0e0dad8d8782892")
     end
 
+    on_fetch(function (package, opt)
+        if opt.system then
+            import("core.base.semver")
+            import("detect.sdks.find_ndk")
+            local ndk = find_ndk()
+            if ndk and ndk.ndkver and semver.satisfies(ndk.ndkver .. ".0", opt.require_version) then
+                return true
+            end
+        end
+    end)
+
     on_install("@windows", "@msys", "@linux", "@macosx", function (package)
         os.vcp("*", package:installdir())
     end)