Browse Source

cgif: support wasm & android (#5888)

* cgif: support wasm & android

* add check
star9029 9 months ago
parent
commit
ce5e004608
1 changed files with 12 additions and 1 deletions
  1. 12 1
      packages/c/cgif/xmake.lua

+ 12 - 1
packages/c/cgif/xmake.lua

@@ -9,6 +9,10 @@ package("cgif")
     add_versions("v0.4.1", "8666f9c5f8123d1c22137a6dd714502a330377fb74e2007621926fe4258529d5")
     add_versions("v0.4.1", "8666f9c5f8123d1c22137a6dd714502a330377fb74e2007621926fe4258529d5")
     add_versions("v0.4.0", "130ff8a604f047449e81ddddf818bd0e03826b5f468e989b02726b16b7d4742e")
     add_versions("v0.4.0", "130ff8a604f047449e81ddddf818bd0e03826b5f468e989b02726b16b7d4742e")
 
 
+    if is_plat("wasm") then
+        add_configs("shared", {description = "Build shared library.", default = false, type = "boolean", readonly = true})
+    end
+
     if is_plat("linux") then
     if is_plat("linux") then
         add_extsources("apt::libcgif-dev", "pacman::libcgif")
         add_extsources("apt::libcgif-dev", "pacman::libcgif")
     elseif is_plat("macosx") then
     elseif is_plat("macosx") then
@@ -17,7 +21,14 @@ package("cgif")
 
 
     add_deps("meson", "ninja")
     add_deps("meson", "ninja")
 
 
-    on_install("windows", "linux", "macosx", "bsd", "mingw", "msys", "iphoneos", "cross", function (package)
+    if on_check then
+        on_check("android", function (package)
+            local ndk = package:toolchain("ndk"):config("ndkver")
+            assert(ndk and tonumber(ndk) > 22, "package(cgif) require ndk version > 22")
+        end)
+    end
+
+    on_install(function (package)
         local opt = {}
         local opt = {}
         if package:is_plat("windows") and package:config("shared") then
         if package:is_plat("windows") and package:config("shared") then
             io.replace("inc/cgif.h", "CGIF* cgif_newgif", "LIBRARY_API CGIF* cgif_newgif", {plain = true})
             io.replace("inc/cgif.h", "CGIF* cgif_newgif", "LIBRARY_API CGIF* cgif_newgif", {plain = true})