Split boehm-gc into -main and -atomic subpackages.

The latter contains libatomic_ops-1.2, which is developed inside boehm-gc,
as stated on libatomic_ops homepage. No change on -main subpackage.
libatomic_ops may be used by a future eventual pulseaudio port, which is
being worked on.

Feedback, tweaks and ok kurt@
This commit is contained in:
landry 2008-07-01 09:43:19 +00:00
parent be63e8be90
commit 00c2d5533c
7 changed files with 93 additions and 7 deletions

View File

@ -1,11 +1,15 @@
# $OpenBSD: Makefile,v 1.36 2008/04/01 17:41:13 kurt Exp $
# $OpenBSD: Makefile,v 1.37 2008/07/01 09:43:19 landry Exp $
# $FreeBSD: Makefile,v 1.4 1999/01/10 20:12:06 steve Exp $
COMMENT= garbage collection and memory leak detection for C and C++
COMMENT-main= garbage collection and memory leak detection for C and C++
COMMENT-atomic= access to hardware provided atomic memory operations
VERSION= 7.0
DISTNAME= gc-${VERSION}
PKGNAME= boehm-gc-${VERSION}p0
PKGNAME-atomic= libatomic_ops-1.2
PKGNAME-main= boehm-gc-${VERSION}p1
MULTI_PACKAGES= -main -atomic
SHARED_LIBS += gc 3.0 # .1.2
SHARED_LIBS += cord 2.3 # .1.3
@ -41,11 +45,18 @@ CONFIGURE_ARGS= ${CONFIGURE_SHARED} \
pre-configure:
@perl -pi -e "s,/usr/local,${PREFIX},g" ${WRKSRC}/doc/gc.man
# clean distributed objects and libs and rebuild
pre-build:
@cd ${WRKBUILD}/libatomic_ops && ${SETENV} ${MAKE_ENV} \
${MAKE_PROGRAM} ${MAKE_FLAGS} clean all
aliases= malloc malloc_atomic free realloc enable_incremental \
register_finalizer malloc_ignore_off_page \
malloc_atomic_ignore_off_page set_warn_proc
post-install:
@cd ${WRKBUILD}/libatomic_ops && ${SETENV} ${MAKE_ENV} \
${MAKE_PROGRAM} ${ALL_FAKE_FLAGS} install
${INSTALL_DATA} ${WRKSRC}/doc/gc.man ${PREFIX}/man/man3/gc.3
.for i in ${aliases}
ln -s gc.3 ${PREFIX}/man/man3/GC_$i.3

View File

@ -0,0 +1,9 @@
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.

View File

@ -1,3 +0,0 @@
@comment $OpenBSD: PFRAG.shared,v 1.5 2007/07/14 22:16:17 kili Exp $
@lib lib/libcord.so.${LIBcord_VERSION}
@lib lib/libgc.so.${LIBgc_VERSION}

View File

@ -0,0 +1,3 @@
@comment $OpenBSD: PFRAG.shared-main,v 1.1 2008/07/01 09:43:19 landry Exp $
@lib lib/libcord.so.${LIBcord_VERSION}
@lib lib/libgc.so.${LIBgc_VERSION}

View File

@ -0,0 +1,65 @@
@comment $OpenBSD: PLIST-atomic,v 1.1 2008/07/01 09:43:19 landry Exp $
include/atomic_ops/
include/atomic_ops.h
include/atomic_ops/generalize-small.h
include/atomic_ops/generalize.h
include/atomic_ops/sysdeps/
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/
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/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/
include/atomic_ops/sysdeps/hpc/hppa.h
include/atomic_ops/sysdeps/hpc/ia64.h
include/atomic_ops/sysdeps/ibmc/
include/atomic_ops/sysdeps/ibmc/powerpc.h
include/atomic_ops/sysdeps/icc/
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/
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/
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/libatomic_ops/
share/libatomic_ops/COPYING
share/libatomic_ops/LICENSING.txt
share/libatomic_ops/README.txt
share/libatomic_ops/README_malloc.txt
share/libatomic_ops/README_stack.txt
share/libatomic_ops/README_win32.txt

View File

@ -1,4 +1,5 @@
@comment $OpenBSD: PLIST,v 1.11 2007/07/14 22:16:17 kili Exp $
@comment $OpenBSD: PLIST-main,v 1.1 2008/07/01 09:43:19 landry Exp $
@pkgpath devel/boehm-gc
%%SHARED%%
include/gc/
include/gc/gc.h