summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devel/Makefile1
-rw-r--r--devel/lace14/Makefile29
-rw-r--r--devel/lace14/distinfo3
-rw-r--r--devel/lace14/files/patch-CMakeLists.txt34
-rw-r--r--devel/lace14/files/patch-benchmarks_cilksort_cilksort-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_dfs_dfs-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_fib_fib-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_fib_fib-lace.cpp11
-rw-r--r--devel/lace14/files/patch-benchmarks_knapsack_knapsack-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_matmul_matmul-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_matmul_matmul-seq.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_pi_pi-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_queens_queens-lace.c11
-rw-r--r--devel/lace14/files/patch-benchmarks_strassen_strassen-lace.c11
-rw-r--r--devel/lace14/pkg-descr2
-rw-r--r--devel/lace14/pkg-plist11
16 files changed, 190 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 3550e7a9c701..0bae517e60df 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1183,6 +1183,7 @@
SUBDIR += kyua
SUBDIR += lab
SUBDIR += lace
+ SUBDIR += lace14
SUBDIR += lager
SUBDIR += laminar
SUBDIR += lasi
diff --git a/devel/lace14/Makefile b/devel/lace14/Makefile
new file mode 100644
index 000000000000..d7e8ec60db70
--- /dev/null
+++ b/devel/lace14/Makefile
@@ -0,0 +1,29 @@
+PORTNAME= lace
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.4.2
+CATEGORIES= devel
+PKGNAMESUFFIX= 14-work-stealing
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Implementation of work-stealing in C
+WWW= https://github.com/trolando/lace
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BROKEN_i386= compilation fails: static assertion failed due to requirement '(sizeof(struct _Task) % 64) == 0': Task size should be a multiple of LINE_SIZE
+
+USES= cmake:testing
+
+USE_GITHUB= yes
+GH_ACCOUNT= trolando
+
+CMAKE_ON= BUILD_SHARED_LIBS
+CMAKE_OFF= LACE_BUILD_TESTS
+CMAKE_TESTING_ON= LACE_BUILD_TESTS
+
+PORTSCOUT= limit:^.*[0-9]+\.[0-9]+\.[0-9]+$$ # prevent tags like mucocos_2014_ri
+
+# tests as of 1.4.2: 100% tests passed, 0 tests failed out of 2
+
+.include <bsd.port.mk>
diff --git a/devel/lace14/distinfo b/devel/lace14/distinfo
new file mode 100644
index 000000000000..361c0a0ce844
--- /dev/null
+++ b/devel/lace14/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1743134608
+SHA256 (trolando-lace-v1.4.2_GH0.tar.gz) = d9af1eb9d8ed2f46585085f78080e3a1b1f76fe1ef1f67794c1440a5e27bf07a
+SIZE (trolando-lace-v1.4.2_GH0.tar.gz) = 102784
diff --git a/devel/lace14/files/patch-CMakeLists.txt b/devel/lace14/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..0df89b0ef40c
--- /dev/null
+++ b/devel/lace14/files/patch-CMakeLists.txt
@@ -0,0 +1,34 @@
+--- CMakeLists.txt.orig 2023-11-18 14:52:47 UTC
++++ CMakeLists.txt
+@@ -25,11 +25,11 @@ endif()
+ endif()
+ endif()
+
+-add_library(lace STATIC
++add_library(lace
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/lace.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/lace.h
+ )
+-add_library(lace14 STATIC
++add_library(lace14
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/lace14.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/src/lace14.h
+ )
+@@ -56,7 +56,7 @@ target_compile_options(lace PRIVATE
+
+ target_compile_options(lace PRIVATE
+ $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:
+- -pipe -march=native
++ -pipe
+ $<$<CONFIG:Debug>:-O0 -Wall -Wextra -Wpedantic>>
+ $<$<CXX_COMPILER_ID:MSVC>:
+ $<$<CONFIG:Debug>:/Od /Wall /Zi>>
+@@ -64,7 +64,7 @@ target_compile_options(lace14 PRIVATE
+
+ target_compile_options(lace14 PRIVATE
+ $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:
+- -pipe -march=native
++ -pipe
+ $<$<CONFIG:Debug>:-O0 -Wall -Wextra -Wpedantic>>
+ $<$<CXX_COMPILER_ID:MSVC>:
+ $<$<CONFIG:Debug>:/Od /Wall /Zi>>
diff --git a/devel/lace14/files/patch-benchmarks_cilksort_cilksort-lace.c b/devel/lace14/files/patch-benchmarks_cilksort_cilksort-lace.c
new file mode 100644
index 000000000000..5a47f1622ae4
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_cilksort_cilksort-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/cilksort/cilksort-lace.c.orig 2025-05-23 10:54:43 UTC
++++ benchmarks/cilksort/cilksort-lace.c
+@@ -438,7 +438,7 @@ int main(int argc, char *argv[])
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_dfs_dfs-lace.c b/devel/lace14/files/patch-benchmarks_dfs_dfs-lace.c
new file mode 100644
index 000000000000..709bb4a901de
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_dfs_dfs-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/dfs/dfs-lace.c.orig 2025-05-23 10:54:05 UTC
++++ benchmarks/dfs/dfs-lace.c
+@@ -50,7 +50,7 @@ int main(int argc, char **argv)
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_fib_fib-lace.c b/devel/lace14/files/patch-benchmarks_fib_fib-lace.c
new file mode 100644
index 000000000000..705fff75ccfa
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_fib_fib-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/fib/fib-lace.c.orig 2025-05-23 10:55:18 UTC
++++ benchmarks/fib/fib-lace.c
+@@ -34,7 +34,7 @@ int main(int argc, char **argv)
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_fib_fib-lace.cpp b/devel/lace14/files/patch-benchmarks_fib_fib-lace.cpp
new file mode 100644
index 000000000000..b288f60b8ec9
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_fib_fib-lace.cpp
@@ -0,0 +1,11 @@
+--- benchmarks/fib/fib-lace.cpp.orig 2025-05-23 10:53:18 UTC
++++ benchmarks/fib/fib-lace.cpp
+@@ -35,7 +35,7 @@ int main(int argc, char **argv)
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_knapsack_knapsack-lace.c b/devel/lace14/files/patch-benchmarks_knapsack_knapsack-lace.c
new file mode 100644
index 000000000000..26a2489b4bab
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_knapsack_knapsack-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/knapsack/knapsack-lace.c.orig 2025-05-23 10:56:00 UTC
++++ benchmarks/knapsack/knapsack-lace.c
+@@ -119,7 +119,7 @@ int main(int argc, char *argv[])
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_matmul_matmul-lace.c b/devel/lace14/files/patch-benchmarks_matmul_matmul-lace.c
new file mode 100644
index 000000000000..7036a56448ed
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_matmul_matmul-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/matmul/matmul-lace.c.orig 2025-05-23 10:56:19 UTC
++++ benchmarks/matmul/matmul-lace.c
+@@ -121,7 +121,7 @@ int main(int argc, char *argv[])
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_matmul_matmul-seq.c b/devel/lace14/files/patch-benchmarks_matmul_matmul-seq.c
new file mode 100644
index 000000000000..6159bc215087
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_matmul_matmul-seq.c
@@ -0,0 +1,11 @@
+--- benchmarks/matmul/matmul-seq.c.orig 2025-05-23 10:55:39 UTC
++++ benchmarks/matmul/matmul-seq.c
+@@ -114,7 +114,7 @@ int main(int argc, char *argv[])
+
+ int main(int argc, char *argv[])
+ {
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'h':
diff --git a/devel/lace14/files/patch-benchmarks_pi_pi-lace.c b/devel/lace14/files/patch-benchmarks_pi_pi-lace.c
new file mode 100644
index 000000000000..f1d66022fbfa
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_pi_pi-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/pi/pi-lace.c.orig 2025-05-23 10:54:23 UTC
++++ benchmarks/pi/pi-lace.c
+@@ -55,7 +55,7 @@ int main(int argc, char **argv)
+ int workers = 0;
+ int dqsize = 1000000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_queens_queens-lace.c b/devel/lace14/files/patch-benchmarks_queens_queens-lace.c
new file mode 100644
index 000000000000..f942da62abbf
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_queens_queens-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/queens/queens-lace.c.orig 2025-05-23 10:53:37 UTC
++++ benchmarks/queens/queens-lace.c
+@@ -73,7 +73,7 @@ int main(int argc, char *argv[])
+ int workers = 1;
+ int dqsize = 100000;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/files/patch-benchmarks_strassen_strassen-lace.c b/devel/lace14/files/patch-benchmarks_strassen_strassen-lace.c
new file mode 100644
index 000000000000..eb4f69cb841a
--- /dev/null
+++ b/devel/lace14/files/patch-benchmarks_strassen_strassen-lace.c
@@ -0,0 +1,11 @@
+--- benchmarks/strassen/strassen-lace.c.orig 2025-05-23 10:55:02 UTC
++++ benchmarks/strassen/strassen-lace.c
+@@ -718,7 +718,7 @@ int main(int argc, char *argv[])
+ int dqsize = 100000;
+ int verify = 0;
+
+- char c;
++ signed char c;
+ while ((c=getopt(argc, argv, "w:q:h:c")) != -1) {
+ switch (c) {
+ case 'w':
diff --git a/devel/lace14/pkg-descr b/devel/lace14/pkg-descr
new file mode 100644
index 000000000000..b0efdd64bc2b
--- /dev/null
+++ b/devel/lace14/pkg-descr
@@ -0,0 +1,2 @@
+Lace is a C framework for fine-grained fork-join parallelism intended for
+scientific computations on multi-core computers.
diff --git a/devel/lace14/pkg-plist b/devel/lace14/pkg-plist
new file mode 100644
index 000000000000..6b1ab64e5d57
--- /dev/null
+++ b/devel/lace14/pkg-plist
@@ -0,0 +1,11 @@
+include/lace.h
+include/lace14.h
+include/lace_config.h
+lib/cmake/lace/lace-config-version.cmake
+lib/cmake/lace/lace-config.cmake
+lib/cmake/lace/lace-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/lace/lace-targets.cmake
+lib/liblace.so
+lib/liblace14.so
+libdata/pkgconfig/lace.pc
+libdata/pkgconfig/lace14.pc