# $Id: Portfile 80260 2011-07-08 00:25:09Z jeremyhu@macports.org $

PortSystem 1.0
name		boehmgc
version		7.1
revision        1
categories	devel
maintainers	waqar openmaintainer
description	Boehm-Demers-Weiser conservative garbage collector
long_description   The Boehm-Demers-Weiser conservative garbage collector \
	           can be used as a garbage collecting replacement for C \
		   malloc or C++ new. It is also used by a number of \
		   programming language implementations that use C as \
		   intermediate code.
set d_name      gc
homepage        http://www.hpl.hp.com/personal/Hans_Boehm/${d_name}/
platforms	darwin
master_sites	${homepage}gc_source/
distname	${d_name}-${version}
checksums           md5     2ff9924c7249ef7f736ecfe6f08f3f9b \
                    sha1    e84cba5d18f4ea5ed4e5fd3f1dc6a46bc190ff6f \
                    rmd160  9338c1128686395739e3acd9052a651d1dffffb2
configure.args  --with-threads=posix \
		--enable-cplusplus

configure.cppflags-append -D_XOPEN_SOURCE=600 -D_DARWIN_C_SOURCE

variant redirect {
	configure.args-append  --enable-redirect-malloc
}

platform darwin 8 {
	# Not needed to "force" ucontext.h on Tiger, and it actually
	# forces POSIX sys/mman.h which breaks the build there because
	# Tiger's sys/mman.h doesn't recognize _DARWIN_C_SOURCE
	configure.cppflags-delete -D_XOPEN_SOURCE=600
}

# This is now fixed in upstream svn and should be in the next release
patchfiles asm.patch

test.run	yes
test.target	check

livecheck.type  regex
livecheck.url   [lindex ${master_sites} 0]
livecheck.regex ${d_name}-?(\\d+(?:\\.\\d+)*)${extract.suffix}

