Browse Source

add starpu (#539)

* update folly

* add starpu
Hoildkv 4 years ago
parent
commit
bf71062f90
3 changed files with 42 additions and 2 deletions
  1. 2 1
      packages/f/folly/xmake.lua
  2. 3 1
      packages/o/openblas/xmake.lua
  3. 37 0
      packages/s/starpu/xmake.lua

+ 2 - 1
packages/f/folly/xmake.lua

@@ -7,9 +7,10 @@ package("folly")
     add_urls("https://github.com/facebook/folly/releases/download/v$(version).00/folly-v$(version).00.zip",
              "https://github.com/facebook/folly.git")
     add_versions("2021.06.28", "477765d43045d82ac6a2750142aed9534cd5efc1fbf2be622bb682a8c02a45a4")
+    add_versions("2021.08.02", "03159657ef7a08c1207d90e63f02d4d6b1241dcae49f11a72441c0c269b269fa")
 
     add_patches("2021.06.28", path.join(os.scriptdir(), "patches", "2021.06.28", "reorder.patch"), "9a6bf283881580474040cfc7a8e89d461d68b89bae5583d89fff0a3198739980")
-    add_patches("2021.06.28", path.join(os.scriptdir(), "patches", "2021.06.28", "regex.patch"), "6a77ade9f48dd9966d3f7154e66ca8a5c030ae2b6d335cbe3315784aefd8f495")
+    add_patches("2021.x", path.join(os.scriptdir(), "patches", "2021.06.28", "regex.patch"), "6a77ade9f48dd9966d3f7154e66ca8a5c030ae2b6d335cbe3315784aefd8f495")
 
     if is_plat("windows") then
         add_configs("shared", {description = "Build shared library.", default = false, type = "boolean", readonly = true})

+ 3 - 1
packages/o/openblas/xmake.lua

@@ -15,6 +15,8 @@ package("openblas")
             add_versions("0.3.15", "bcde933737b477813eaac290de5cb8756d3b42199e8ef5f44b23ae5f06fe0834")
             add_versions("0.3.17", "8258a9a22075280fb02b65447ea77d9439a0097711e220fc4ae8f92927f32273")
         end
+
+        add_configs("shared", {description = "Build shared library.", default = true, type = "boolean", readonly = true})
     else
         add_urls("https://github.com/xianyi/OpenBLAS/releases/download/v$(version)/OpenBLAS-$(version).tar.gz")
         add_versions("0.3.12", "65a7d3a4010a4e3bd5c0baa41a234797cd3a1735449a4a5902129152601dc57b")
@@ -30,7 +32,7 @@ package("openblas")
     end
 
     on_install("windows", function (package)
-        os.mv(path.join("bin", "libopenblas.dll"), path.join(package:installdir("bin"), "openblas.dll"))
+        os.mv(path.join("bin", "libopenblas.dll"), package:installdir("bin"))
         os.mv("include", package:installdir())
         os.mv(path.join("lib", "libopenblas.lib"), path.join(package:installdir("lib"), "openblas.lib"))
         package:addenv("PATH", "bin")

+ 37 - 0
packages/s/starpu/xmake.lua

@@ -0,0 +1,37 @@
+package("starpu")
+
+    set_homepage("https://starpu.gitlabpages.inria.fr/")
+    set_description("StarPU is a task programming library for hybrid architectures")
+    set_license("LGPL-2.1")
+
+    add_urls("https://files.inria.fr/starpu/starpu-$(version)/starpu-$(version).tar.gz")
+    add_versions("1.3.8", "d35a27b219af8e7973888ebbff728ec0112ae9cda88d6b79c4cc7a1399b4d052")
+
+    add_deps("hwloc")
+    if is_plat("linux") then
+        add_syslinks("pthread", "rt")
+    end
+
+    on_load("macosx", "linux", function (package)
+        package:add("includedirs", format("include/starpu/%d.%d", package:version():major(), package:version():minor()))
+    end)
+
+    on_install("macosx", "linux", function (package)
+        local configs = {"--disable-build-doc", "--disable-build-tests", "--disable-build-examples", "--disable-fortran"}
+        if package:is_plat("macosx") then
+            -- OpenCL is deprecated on Mac OS X
+            table.insert(configs, "--disable-opencl")
+        end
+        if package:config("shared") then
+            table.insert(configs, "--enable-shared=yes")
+            table.insert(configs, "--enable-static=no")
+        else
+            table.insert(configs, "--enable-shared=no")
+            table.insert(configs, "--enable-static=yes")
+        end
+        import("package.tools.autoconf").install(package, configs)
+    end)
+
+    on_test(function (package)
+        assert(package:has_cfuncs("starpu_task_get_current", {includes = "starpu.h"}))
+    end)