summaryrefslogtreecommitdiff
path: root/parallel
diff options
context:
space:
mode:
authorasau <asau>2013-03-17 14:43:48 +0000
committerasau <asau>2013-03-17 14:43:48 +0000
commit4090d7f718831bd12ecdab1fd5b54ef894428f39 (patch)
tree3ead9fd74731c977488f0173faffc32b690ae015 /parallel
parenteca8906264d7868abfa6b9cc65384282c9b7f876 (diff)
downloadpkgsrc-4090d7f718831bd12ecdab1fd5b54ef894428f39.tar.gz
Update to OpenPA 1.0.4
Inter-process locking may be broken on NetBSD under some conditions. (This didn't get worse since previous package.) Field tests (benchmarks/skampi) don't reveal that the relevant code path is invoked. Major Changes in OpenPA v1.0.4 * native ARM (v7 and higher) support * numerous memory barrier placement improvements in queue and test code * x86 memory barrier improvements, including for Intel MIC * numerous build system improvements Major Changes in OpenPA v1.0.3 * Libtool shared library support for OPA, avoiding shared/static mixed linking problems on some platforms. * The build system should now work more portably with broken/exotic shells. * pkg-config support * Emulated atomics can now be detected by the presence of an OPA_EXPLICIT_EMULATION #define in opa_config.h. * PPC types are now correctly aligned to 8 bytes instead of 16 bytes. * many more tests for "make check", fixed missing memory barriers in one test
Diffstat (limited to 'parallel')
-rw-r--r--parallel/openpa/Makefile6
-rw-r--r--parallel/openpa/PLIST6
-rw-r--r--parallel/openpa/buildlink3.mk3
-rw-r--r--parallel/openpa/distinfo9
-rw-r--r--parallel/openpa/patches/patch-src_opa__primitives.c23
5 files changed, 36 insertions, 11 deletions
diff --git a/parallel/openpa/Makefile b/parallel/openpa/Makefile
index 36a493fd20e..8415789eb66 100644
--- a/parallel/openpa/Makefile
+++ b/parallel/openpa/Makefile
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.3 2012/09/11 20:36:18 asau Exp $
+# $NetBSD: Makefile,v 1.4 2013/03/17 14:43:48 asau Exp $
-DISTNAME= openpa-1.0.2
+DISTNAME= openpa-1.0.4
CATEGORIES= parallel
MASTER_SITES= http://trac.mcs.anl.gov/projects/openpa/raw-attachment/wiki/Downloads/
@@ -8,7 +8,9 @@ MAINTAINER= asau@inbox.ru
HOMEPAGE= http://trac.mcs.anl.gov/projects/openpa/
COMMENT= Atomic primitives for high performance software
+USE_TOOLS= pkg-config
GNU_CONFIGURE= yes
+USE_LIBTOOL= yes
TEST_TARGET= check
.include "../../mk/bsd.pkg.mk"
diff --git a/parallel/openpa/PLIST b/parallel/openpa/PLIST
index fc0ead0cb08..3ecedc977d3 100644
--- a/parallel/openpa/PLIST
+++ b/parallel/openpa/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.2 2009/12/11 03:58:37 asau Exp $
+@comment $NetBSD: PLIST,v 1.3 2013/03/17 14:43:48 asau Exp $
include/opa_config.h
include/opa_primitives.h
include/opa_queue.h
@@ -17,5 +17,5 @@ include/primitives/opa_gcc_sicortex.h
include/primitives/opa_nt_intrinsics.h
include/primitives/opa_sun_atomic_ops.h
include/primitives/opa_unsafe.h
-lib/libopa.a
-share/doc/openpa/README
+lib/libopa.la
+lib/pkgconfig/openpa.pc
diff --git a/parallel/openpa/buildlink3.mk b/parallel/openpa/buildlink3.mk
index ae97ac2716a..d3e08447a7d 100644
--- a/parallel/openpa/buildlink3.mk
+++ b/parallel/openpa/buildlink3.mk
@@ -1,4 +1,4 @@
-# $NetBSD: buildlink3.mk,v 1.1.1.1 2009/10/23 21:57:20 asau Exp $
+# $NetBSD: buildlink3.mk,v 1.2 2013/03/17 14:43:48 asau Exp $
BUILDLINK_TREE+= openpa
@@ -7,7 +7,6 @@ OPENPA_BUILDLINK3_MK:=
BUILDLINK_API_DEPENDS.openpa+= openpa>=1.0.1
BUILDLINK_PKGSRCDIR.openpa?= ../../parallel/openpa
-BUILDLINK_DEPMETHOD.openpa?= build
.endif # OPENPA_BUILDLINK3_MK
BUILDLINK_TREE+= -openpa
diff --git a/parallel/openpa/distinfo b/parallel/openpa/distinfo
index bd37bb14d5d..881599b877f 100644
--- a/parallel/openpa/distinfo
+++ b/parallel/openpa/distinfo
@@ -1,5 +1,6 @@
-$NetBSD: distinfo,v 1.2 2009/12/11 03:58:37 asau Exp $
+$NetBSD: distinfo,v 1.3 2013/03/17 14:43:48 asau Exp $
-SHA1 (openpa-1.0.2.tar.gz) = bb632de1976a06baed3450b2306b1c1bb7695cb5
-RMD160 (openpa-1.0.2.tar.gz) = 016564a02a0559d75edc09e8ca5ce3bdcdca1228
-Size (openpa-1.0.2.tar.gz) = 126362 bytes
+SHA1 (openpa-1.0.4.tar.gz) = 0c714376245a7bf0d5c885d129fb301e5431a3af
+RMD160 (openpa-1.0.4.tar.gz) = f0a34b769be9d91db3ebb18ebbb828757748f142
+Size (openpa-1.0.4.tar.gz) = 378763 bytes
+SHA1 (patch-src_opa__primitives.c) = 7a33197519270ef4ba2a922376b50ccc1a5eedfd
diff --git a/parallel/openpa/patches/patch-src_opa__primitives.c b/parallel/openpa/patches/patch-src_opa__primitives.c
new file mode 100644
index 00000000000..b028351dce4
--- /dev/null
+++ b/parallel/openpa/patches/patch-src_opa__primitives.c
@@ -0,0 +1,23 @@
+$NetBSD: patch-src_opa__primitives.c,v 1.1 2013/03/17 14:43:48 asau Exp $
+
+--- src/opa_primitives.c.orig 2012-12-05 01:25:36.000000000 +0000
++++ src/opa_primitives.c
+@@ -14,6 +14,8 @@
+ #include <pthread.h>
+ #include <opa_primitives.h>
+
++#include <unistd.h> /* for _POSIX_THREAD_PROCESS_SHARED */
++
+ pthread_mutex_t *OPA_emulation_lock = NULL;
+
+ int OPA_Interprocess_lock_init(OPA_emulation_ipl_t *shm_lock, int isLeader)
+@@ -27,7 +29,9 @@ int OPA_Interprocess_lock_init(OPA_emula
+ * shared memory as well. This is required for some compilers
+ * (such as SUN Studio) that don't enable it by default. */
+ if (pthread_mutexattr_init(&attr) ||
++#ifdef _POSIX_THREAD_PROCESS_SHARED
+ pthread_mutexattr_setpshared(&attr, PTHREAD_PROCESS_SHARED) ||
++#endif
+ pthread_mutex_init(OPA_emulation_lock, &attr))
+ mpi_errno = 16; /* MPI_ERR_INTERN */
+ }