summaryrefslogtreecommitdiff
path: root/devel/libatomic_ops
diff options
context:
space:
mode:
authorbjs <bjs>2008-10-25 00:32:23 +0000
committerbjs <bjs>2008-10-25 00:32:23 +0000
commit1bb4467695d858b51622fffe2e662f7402633886 (patch)
treedb1cb0dadd207960413f16d736aec87f4dbf8464 /devel/libatomic_ops
parentaf6c3e01fe0cd5b3eaad7744c6d5d10d5dd5cc66 (diff)
downloadpkgsrc-1bb4467695d858b51622fffe2e662f7402633886.tar.gz
Import libatomic_ops-20081024 (version 1.2)
The latest code is only found in the boehm-gc CVS repository (see Makefile.version for information). I had to take this from there, as there were bug fixes. This library was imported primarily for the [hopefully] upcoming audio/pulseaudio package. TODO: Add support for NetBSD atomic ops? This package provides semi-portable access to hardware provided atomic memory operations. These might allow you to write code: - That does more interesting things in signal handlers. - Makes more effective use of multiprocessors by allowing you to write clever lock-free code. Note that such code is very difficult to get right, and will unavoidably be less portable than lock-based code. It ia also not always faster than lock-based code. But it may occasionally be a large performance win. - To experiment with new and much better thread programming paradigms, etc. As the latest code for this library is only available via CVS, this package provides a snapshot.
Diffstat (limited to 'devel/libatomic_ops')
-rw-r--r--devel/libatomic_ops/DESCR13
-rw-r--r--devel/libatomic_ops/Makefile26
-rw-r--r--devel/libatomic_ops/Makefile.version7
-rw-r--r--devel/libatomic_ops/PLIST67
-rw-r--r--devel/libatomic_ops/distinfo6
-rw-r--r--devel/libatomic_ops/patches/patch-aa12
6 files changed, 131 insertions, 0 deletions
diff --git a/devel/libatomic_ops/DESCR b/devel/libatomic_ops/DESCR
new file mode 100644
index 00000000000..05f1f25f95a
--- /dev/null
+++ b/devel/libatomic_ops/DESCR
@@ -0,0 +1,13 @@
+This package provides semi-portable access to hardware provided
+atomic memory operations. These might allow you to write code:
+
+- That does more interesting things in signal handlers.
+- Makes more effective use of multiprocessors by allowing you to write
+ clever lock-free code. Note that such code is very difficult to get
+ right, and will unavoidably be less portable than lock-based code. It
+ ia also not always faster than lock-based code. But it may occasionally
+ be a large performance win.
+- To experiment with new and much better thread programming paradigms, etc.
+
+As the latest code for this library is only available via CVS, this package
+provides a snapshot.
diff --git a/devel/libatomic_ops/Makefile b/devel/libatomic_ops/Makefile
new file mode 100644
index 00000000000..81a9a078412
--- /dev/null
+++ b/devel/libatomic_ops/Makefile
@@ -0,0 +1,26 @@
+# $NetBSD: Makefile,v 1.1.1.1 2008/10/25 00:32:23 bjs Exp $
+#
+.include "Makefile.version"
+
+DISTNAME= libatomic_ops-${LIBATOMIC_OPS_SNAPDATE}
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_LOCAL}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://bdwgc.sourceforge.net/
+COMMENT= Multi-platform library of atomic operations by Hans Boehm
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+WRKSRC= ${WRKDIR}/libatomic_ops-${LIBATOMIC_OPS_VERSION}
+GNU_CONFIGURE= yes
+TEST_TARGET= check
+
+INSTALL_MAKE_FLAGS= pkgdatadir=${PKGDOCDIR:Q}
+PKGDOCDIR= ${PREFIX}/share/doc/libatomic_ops
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/src/atomic_ops/sysdeps/README \
+ ${DESTDIR}${PKGDOCDIR}/README_headers.txt
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/libatomic_ops/Makefile.version b/devel/libatomic_ops/Makefile.version
new file mode 100644
index 00000000000..89be2ffe957
--- /dev/null
+++ b/devel/libatomic_ops/Makefile.version
@@ -0,0 +1,7 @@
+# $NetBSD: Makefile.version,v 1.1.1.1 2008/10/25 00:32:23 bjs Exp $
+#
+# CVS repo: :pserver:anonymous@bdwgc.cvs.sourceforge.net:/cvsroot
+# CVS module: bdwgc
+
+LIBATOMIC_OPS_VERSION= 1.2
+LIBATOMIC_OPS_SNAPDATE= 20081024
diff --git a/devel/libatomic_ops/PLIST b/devel/libatomic_ops/PLIST
new file mode 100644
index 00000000000..378c5421762
--- /dev/null
+++ b/devel/libatomic_ops/PLIST
@@ -0,0 +1,67 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2008/10/25 00:32:23 bjs Exp $
+include/atomic_ops.h
+include/atomic_ops/generalize-small.h
+include/atomic_ops/generalize.h
+include/atomic_ops/sysdeps/README
+include/atomic_ops/sysdeps/acquire_release_volatile.h
+include/atomic_ops/sysdeps/aligned_atomic_load_store.h
+include/atomic_ops/sysdeps/all_acquire_release_volatile.h
+include/atomic_ops/sysdeps/all_aligned_atomic_load_store.h
+include/atomic_ops/sysdeps/all_atomic_load_store.h
+include/atomic_ops/sysdeps/ao_t_is_int.h
+include/atomic_ops/sysdeps/atomic_load_store.h
+include/atomic_ops/sysdeps/char_acquire_release_volatile.h
+include/atomic_ops/sysdeps/char_atomic_load_store.h
+include/atomic_ops/sysdeps/emul_cas.h
+include/atomic_ops/sysdeps/gcc/alpha.h
+include/atomic_ops/sysdeps/gcc/arm.h
+include/atomic_ops/sysdeps/gcc/cris.h
+include/atomic_ops/sysdeps/gcc/hppa.h
+include/atomic_ops/sysdeps/gcc/ia64.h
+include/atomic_ops/sysdeps/gcc/m68k.h
+include/atomic_ops/sysdeps/gcc/mips.h
+include/atomic_ops/sysdeps/gcc/powerpc.h
+include/atomic_ops/sysdeps/gcc/s390.h
+include/atomic_ops/sysdeps/gcc/sparc.h
+include/atomic_ops/sysdeps/gcc/x86.h
+include/atomic_ops/sysdeps/gcc/x86_64.h
+include/atomic_ops/sysdeps/generic_pthread.h
+include/atomic_ops/sysdeps/hpc/hppa.h
+include/atomic_ops/sysdeps/hpc/ia64.h
+include/atomic_ops/sysdeps/ibmc/powerpc.h
+include/atomic_ops/sysdeps/icc/ia64.h
+include/atomic_ops/sysdeps/int_acquire_release_volatile.h
+include/atomic_ops/sysdeps/int_aligned_atomic_load_store.h
+include/atomic_ops/sysdeps/int_atomic_load_store.h
+include/atomic_ops/sysdeps/msftc/x86.h
+include/atomic_ops/sysdeps/msftc/x86_64.h
+include/atomic_ops/sysdeps/ordered.h
+include/atomic_ops/sysdeps/ordered_except_wr.h
+include/atomic_ops/sysdeps/read_ordered.h
+include/atomic_ops/sysdeps/short_acquire_release_volatile.h
+include/atomic_ops/sysdeps/short_aligned_atomic_load_store.h
+include/atomic_ops/sysdeps/short_atomic_load_store.h
+include/atomic_ops/sysdeps/standard_ao_double_t.h
+include/atomic_ops/sysdeps/sunc/sparc.h
+include/atomic_ops/sysdeps/test_and_set_t_is_ao_t.h
+include/atomic_ops/sysdeps/test_and_set_t_is_char.h
+include/atomic_ops_malloc.h
+include/atomic_ops_stack.h
+lib/libatomic_ops.a
+lib/libatomic_ops_gpl.a
+share/doc/libatomic_ops/COPYING
+share/doc/libatomic_ops/LICENSING.txt
+share/doc/libatomic_ops/README.txt
+share/doc/libatomic_ops/README_headers.txt
+share/doc/libatomic_ops/README_malloc.txt
+share/doc/libatomic_ops/README_stack.txt
+share/doc/libatomic_ops/README_win32.txt
+@dirrm include/atomic_ops/sysdeps/sunc
+@dirrm include/atomic_ops/sysdeps/msftc
+@dirrm include/atomic_ops/sysdeps/icc
+@dirrm include/atomic_ops/sysdeps/ibmc
+@dirrm include/atomic_ops/sysdeps/hpc
+@dirrm include/atomic_ops/sysdeps/gcc
+@dirrm include/atomic_ops/sysdeps
+@dirrm include/atomic_ops
+@dirrm share/doc/libatomic_ops
diff --git a/devel/libatomic_ops/distinfo b/devel/libatomic_ops/distinfo
new file mode 100644
index 00000000000..47b924cca43
--- /dev/null
+++ b/devel/libatomic_ops/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2008/10/25 00:32:23 bjs Exp $
+
+SHA1 (libatomic_ops-20081024.tar.gz) = 5180706e5f337738550b9782e175fd61937a81d6
+RMD160 (libatomic_ops-20081024.tar.gz) = 7c313b975d61632aa72594a9d060c66f7ed5afc5
+Size (libatomic_ops-20081024.tar.gz) = 193424 bytes
+SHA1 (patch-aa) = bf53ad892ba270b1d7a9bd1fa14012ca83ab5323
diff --git a/devel/libatomic_ops/patches/patch-aa b/devel/libatomic_ops/patches/patch-aa
new file mode 100644
index 00000000000..2fe0420a685
--- /dev/null
+++ b/devel/libatomic_ops/patches/patch-aa
@@ -0,0 +1,12 @@
+$NetBSD: patch-aa,v 1.1.1.1 2008/10/25 00:32:23 bjs Exp $
+
+We install this file in share/doc/libatomic_ops/README_headers.
+
+--- src/atomic_ops/sysdeps/README.orig 2006-07-11 19:29:30.000000000 -0400
++++ src/atomic_ops/sysdeps/README
+@@ -1,4 +1,4 @@
+-There are two kinds of entities in this directory:
++There are two kinds of entities in <libatomic_ops/sysdeps>:
+
+ - Subdirectories corresponding to specific compilers (or compiler/OS combinations).
+ Each of these includes one or more architecture-specific headers.