aboutsummaryrefslogtreecommitdiffstats
path: root/devel/boehm-gc/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'devel/boehm-gc/Makefile')
-rw-r--r--devel/boehm-gc/Makefile29
1 files changed, 26 insertions, 3 deletions
diff --git a/devel/boehm-gc/Makefile b/devel/boehm-gc/Makefile
index 89cf1e484574..7a17d2b9e407 100644
--- a/devel/boehm-gc/Makefile
+++ b/devel/boehm-gc/Makefile
@@ -7,6 +7,7 @@
PORTNAME= boehm-gc
PORTVERSION= 6.2
+PORTREVISION= 1
CATEGORIES= devel
MASTER_SITES= http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
DISTNAME= gc${PORTVERSION:S/.a/alpha/}
@@ -18,12 +19,34 @@ USE_LIBTOOL_VER= 13
USE_REINPLACE= yes
HAS_CONFIGURE= yes
INSTALLS_SHLIB= yes
-CONFIGURE_ARGS= --prefix=${PREFIX} --disable-threads --enable-cplusplus
-
-MAN3= gc.3
+CONFIGURE_ARGS= --prefix=${PREFIX} --enable-cplusplus
+OPTIONS= REDIRECT "Define malloc(3)-family replacements" no \
+ FULLDEBUG "full-debug support (see documentation)" no \
+ THREADING "POSIX thread support" no \
+ PARALLEL_MARK "Parallel-thread marking (faster for SMP)" yes
.include <bsd.port.pre.mk>
+.ifdef WITH_THREADING
+CONFIGURE_ARGS+= --enable-threads=posix --enable-thread-local-alloc
+.ifdef WITH_PARALLEL_MARK
+CONFIGURE_ARGS+= --enable-parallel-mark
+.endif
+PKGNAMESUFFIX= +threaded
+.else
+CONFIGURE_ARGS+= --disable-threads
+.endif
+.ifdef WITH_REDIRECT
+CONFIGURE_ARGS+= --enable-redirect-malloc
+PKGNAMESUFFIX:=${PKGNAMESUFFIX}+redirect
+.endif
+.ifdef WITH_FULLDEBUG
+CONFIGURE_ARGS+= --enable-full-debug
+PKGNAMESUFFIX:=${PKGNAMESUFFIX}+fulldebug
+.endif
+
+MAN3= gc.3
+
.if ${ARCH} != "i386" && ${ARCH} != "alpha" && ${ARCH} != "amd64"
BROKEN= "Does not compile on !i386 and !alpha and !amd64"
.endif