summaryrefslogtreecommitdiff
path: root/devel/lace
diff options
context:
space:
mode:
Diffstat (limited to 'devel/lace')
-rw-r--r--devel/lace/Makefile12
-rw-r--r--devel/lace/distinfo6
-rw-r--r--devel/lace/files/patch-benchmarks_CMakeLists.txt11
-rw-r--r--devel/lace/files/patch-benchmarks_cilksort_cilksort-lace.c11
-rw-r--r--devel/lace/files/patch-benchmarks_dfs_dfs-lace.c11
-rw-r--r--devel/lace/files/patch-benchmarks_fib_fib-lace.c11
-rw-r--r--devel/lace/files/patch-benchmarks_fib_fib-lace.cpp11
-rw-r--r--devel/lace/files/patch-benchmarks_knapsack_knapsack-lace.c11
-rw-r--r--devel/lace/files/patch-benchmarks_matmul_matmul-lace.c11
-rw-r--r--devel/lace/files/patch-benchmarks_matmul_matmul-seq.c11
-rw-r--r--devel/lace/files/patch-benchmarks_pi_pi-lace.c11
-rw-r--r--devel/lace/files/patch-benchmarks_strassen_strassen-lace.c11
12 files changed, 120 insertions, 8 deletions
diff --git a/devel/lace/Makefile b/devel/lace/Makefile
index cd7b162a3520..d9467c428a23 100644
--- a/devel/lace/Makefile
+++ b/devel/lace/Makefile
@@ -1,6 +1,6 @@
PORTNAME= lace
DISTVERSIONPREFIX= v
-DISTVERSION= 1.4.2
+DISTVERSION= 2.0.2
PORTREVISION= 1
CATEGORIES= devel
PKGNAMESUFFIX= -work-stealing
@@ -9,12 +9,10 @@ MAINTAINER= yuri@FreeBSD.org
COMMENT= Implementation of work-stealing in C
WWW= https://github.com/trolando/lace
-BROKEN_i386= compilation fails: static assertion failed due to requirement '(sizeof(struct _Task) % 64) == 0': Task size should be a multiple of LINE_SIZE
-
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
+BROKEN_i386= compilation fails: error: static assertion failed due to requirement '(sizeof(struct _lace_task) % 64) == 0': lace_task size should be a multiple of LACE_CACHE_LINE_SIZE
USES= cmake:testing
@@ -27,6 +25,10 @@ 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
+pre-configure: # see discussion in https://github.com/trolando/lace/issues/16
+ @${REINPLACE_CMD} -e 's,memory_order_[[:alnum:]_]*,memory_order_seq_cst,g' \
+ ${WRKSRC}/src/*.[ch] ${WRKSRC}/src/lace.sh
+
+# tests as of 2.0.2: 100% tests passed, 0 tests failed out of 2
.include <bsd.port.mk>
diff --git a/devel/lace/distinfo b/devel/lace/distinfo
index 361c0a0ce844..b3fa7aacf4d4 100644
--- a/devel/lace/distinfo
+++ b/devel/lace/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1743134608
-SHA256 (trolando-lace-v1.4.2_GH0.tar.gz) = d9af1eb9d8ed2f46585085f78080e3a1b1f76fe1ef1f67794c1440a5e27bf07a
-SIZE (trolando-lace-v1.4.2_GH0.tar.gz) = 102784
+TIMESTAMP = 1754112927
+SHA256 (trolando-lace-v2.0.2_GH0.tar.gz) = 416d8397f95646778d9ed7e044b699bb3db49c41f843352d2681d9c44db3f44e
+SIZE (trolando-lace-v2.0.2_GH0.tar.gz) = 145602
diff --git a/devel/lace/files/patch-benchmarks_CMakeLists.txt b/devel/lace/files/patch-benchmarks_CMakeLists.txt
new file mode 100644
index 000000000000..00392a29fc02
--- /dev/null
+++ b/devel/lace/files/patch-benchmarks_CMakeLists.txt
@@ -0,0 +1,11 @@
+--- benchmarks/CMakeLists.txt.orig 2025-08-06 15:18:26 UTC
++++ benchmarks/CMakeLists.txt
+@@ -4,7 +4,7 @@ macro(set_compilation_settings NAME)
+ target_compile_features(${NAME} PRIVATE c_std_11 cxx_std_11)
+ target_compile_options(${NAME} PRIVATE
+ $<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:GNU>>:
+- -pipe -march=native -Wall -Wextra -Wpedantic -Wno-deprecated>
++ -pipe -Wall -Wextra -Wpedantic -Wno-deprecated>
+ $<$<CXX_COMPILER_ID:MSVC>: /W4>
+ )
+ if (CMAKE_BUILD_TYPE STREQUAL "Release")
diff --git a/devel/lace/files/patch-benchmarks_cilksort_cilksort-lace.c b/devel/lace/files/patch-benchmarks_cilksort_cilksort-lace.c
new file mode 100644
index 000000000000..5a47f1622ae4
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_dfs_dfs-lace.c b/devel/lace/files/patch-benchmarks_dfs_dfs-lace.c
new file mode 100644
index 000000000000..709bb4a901de
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_fib_fib-lace.c b/devel/lace/files/patch-benchmarks_fib_fib-lace.c
new file mode 100644
index 000000000000..705fff75ccfa
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_fib_fib-lace.cpp b/devel/lace/files/patch-benchmarks_fib_fib-lace.cpp
new file mode 100644
index 000000000000..b288f60b8ec9
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_knapsack_knapsack-lace.c b/devel/lace/files/patch-benchmarks_knapsack_knapsack-lace.c
new file mode 100644
index 000000000000..26a2489b4bab
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_matmul_matmul-lace.c b/devel/lace/files/patch-benchmarks_matmul_matmul-lace.c
new file mode 100644
index 000000000000..7036a56448ed
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_matmul_matmul-seq.c b/devel/lace/files/patch-benchmarks_matmul_matmul-seq.c
new file mode 100644
index 000000000000..6159bc215087
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_pi_pi-lace.c b/devel/lace/files/patch-benchmarks_pi_pi-lace.c
new file mode 100644
index 000000000000..f1d66022fbfa
--- /dev/null
+++ b/devel/lace/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/lace/files/patch-benchmarks_strassen_strassen-lace.c b/devel/lace/files/patch-benchmarks_strassen_strassen-lace.c
new file mode 100644
index 000000000000..eb4f69cb841a
--- /dev/null
+++ b/devel/lace/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':