Browse Source

add cmake for linux arm64 (#1860)

ruki 2 years ago
parent
commit
3f772b8dab
1 changed files with 25 additions and 15 deletions
  1. 25 15
      packages/c/cmake/xmake.lua

+ 25 - 15
packages/c/cmake/xmake.lua

@@ -18,20 +18,30 @@ package("cmake")
         add_versions("3.22.1", "9ba46ce69d524f5bcdf98076a6b01f727604fb31cf9005ec03dea1cf16da9514")
         add_versions("3.24.1", "71bb8db69826d74c395a3c3bbf8b773dbe9f54a2c7331266ba70da303e9c97a1")
         add_versions("3.24.2", "efb11a78c064dd7c54a50b8da247254d252112c402c6e48cb7db3f9c84a4e5ad")
-    elseif is_host("linux") and os.arch() == "x86_64" then
-        add_urls("https://cmake.org/files/v$(version)-x86_64.tar.gz", {version = function (version)
-                return table.concat(table.slice((version):split('%.'), 1, 2), '.') .. "/cmake-" .. version .. (version:ge("3.20") and "-linux" or "-Linux")
-            end})
-        add_urls("https://github.com/Kitware/CMake/releases/download/v$(version)-x86_64.tar.gz", {version = function (version)
-            return version .. "/cmake-" .. version .. (version:ge("3.20") and "-linux" or "-Linux")
-            end})
-        add_versions("3.11.4", "6dab016a6b82082b8bcd0f4d1e53418d6372015dd983d29367b9153f1a376435")
-        add_versions("3.15.4", "7c2b17a9be605f523d71b99cc2e5b55b009d82cf9577efb50d4b23056dee1109")
-        add_versions("3.18.4", "149e0cee002e59e0bb84543cf3cb099f108c08390392605e944daeb6594cbc29")
-        add_versions("3.21.0", "d54ef6909f519740bc85cec07ff54574cd1e061f9f17357d9ace69f61c6291ce")
-        add_versions("3.22.1", "73565c72355c6652e9db149249af36bcab44d9d478c5546fd926e69ad6b43640")
-        add_versions("3.24.1", "827bf068cfaa23a9fb95f990c9f8a7ed8f2caeb3af62b5c0a2fed7a8dd6dde3e")
-        add_versions("3.24.2", "71a776b6a08135092b5beb00a603b60ca39f8231c01a0356e205e0b4631747d9")
+    elseif is_host("linux") then
+        if os.arch() == "arm64" then
+            add_urls("https://cmake.org/files/v$(version)-aarch64.tar.gz", {version = function (version)
+                    return table.concat(table.slice((version):split('%.'), 1, 2), '.') .. "/cmake-" .. version .. (version:ge("3.20") and "-linux" or "-Linux")
+                end})
+            add_urls("https://github.com/Kitware/CMake/releases/download/v$(version)-aarch64.tar.gz", {version = function (version)
+                return version .. "/cmake-" .. version .. (version:ge("3.20") and "-linux" or "-Linux")
+                end})
+            add_versions("3.24.2", "5f1c0d49bac89915b5c68811c2430e5de6c8e606785b9f2919eabee86c2f12b4")
+        else
+            add_urls("https://cmake.org/files/v$(version)-x86_64.tar.gz", {version = function (version)
+                    return table.concat(table.slice((version):split('%.'), 1, 2), '.') .. "/cmake-" .. version .. (version:ge("3.20") and "-linux" or "-Linux")
+                end})
+            add_urls("https://github.com/Kitware/CMake/releases/download/v$(version)-x86_64.tar.gz", {version = function (version)
+                return version .. "/cmake-" .. version .. (version:ge("3.20") and "-linux" or "-Linux")
+                end})
+            add_versions("3.11.4", "6dab016a6b82082b8bcd0f4d1e53418d6372015dd983d29367b9153f1a376435")
+            add_versions("3.15.4", "7c2b17a9be605f523d71b99cc2e5b55b009d82cf9577efb50d4b23056dee1109")
+            add_versions("3.18.4", "149e0cee002e59e0bb84543cf3cb099f108c08390392605e944daeb6594cbc29")
+            add_versions("3.21.0", "d54ef6909f519740bc85cec07ff54574cd1e061f9f17357d9ace69f61c6291ce")
+            add_versions("3.22.1", "73565c72355c6652e9db149249af36bcab44d9d478c5546fd926e69ad6b43640")
+            add_versions("3.24.1", "827bf068cfaa23a9fb95f990c9f8a7ed8f2caeb3af62b5c0a2fed7a8dd6dde3e")
+            add_versions("3.24.2", "71a776b6a08135092b5beb00a603b60ca39f8231c01a0356e205e0b4631747d9")
+        end
     elseif is_host("windows") then
         if os.arch() == "x64" then
             add_urls("https://cmake.org/files/v$(version).zip", {excludes = {"*/doc/*"}, version = function (version)
@@ -84,7 +94,7 @@ package("cmake")
         os.cp("CMake.app/Contents/share", package:installdir())
     end)
 
-    on_install("@linux|x86_64", "@windows", "@msys", "@cygwin", function (package)
+    on_install("@linux", "@windows", "@msys", "@cygwin", function (package)
         os.cp("bin", package:installdir())
         os.cp("share", package:installdir())
     end)