Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Jan 2013 05:48:24 +0900
From:      KATO Tsuguru <tkato432@yahoo.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/175590: devel/boehm-gc: Update to version 7.2d
Message-ID:  <20130126054824.82b8c584037321604403887d@yahoo.com>
Resent-Message-ID: <201301252110.r0PLA74Q075144@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         175590
>Category:       ports
>Synopsis:       devel/boehm-gc: Update to version 7.2d
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jan 25 21:10:07 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     KATO Tsuguru
>Release:        FreeBSD 7.4-RELEASE-p11 i386
>Organization:
>Environment:
>Description:
- Update devel/boehm-gc to version 7.2d
- Update devel/boehm-gc-redirect to version 7.2d
- Update devel/boehm-gc-threaded to version 7.2d

[devel/boehm-gc]
New file:
files/patch-include__gc_config_macros.h

Remove file:
files/patch-Makefile.in
files/patch-dbg_mlc.c
files/patch-include-gc.h

[devel/boehm-gc-redirect]
Remove file:
distinfo
files/patch-configure
files/patch-dbg_mlc.c
files/patch-dyn_load.c
files/patch-include-gc.h
files/patch-include-private-gcconfig.h
files/patch-os_dep.c

[devel/boehm-gc-threaded]
Remove file:
distinfo
files/patch-configure
files/patch-dbg_mlc.c
files/patch-dyn_load.c
files/patch-include-gc.h
files/patch-include-private-gcconfig.h
files/patch-os_dep.c

>How-To-Repeat:
>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	devel_boehm-gc.diff
#	devel_boehm-gc-redirect.diff
#	devel_boehm-gc-threaded.diff
#
echo x - devel_boehm-gc.diff
sed 's/^X//' >devel_boehm-gc.diff << 'd3fa4b9dca7ee1bd5c11b389305842c8'
Xdiff -urN /usr/ports/devel/boehm-gc/Makefile devel/boehm-gc/Makefile
X--- /usr/ports/devel/boehm-gc/Makefile	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/Makefile	2013-01-17 20:45:02.000000000 +0900
X@@ -1,52 +1,96 @@
X-# New ports collection makefile for:	boehm-gc
X-# Date created:		15 November 1996
X-# Whom:			Mike McGaughey <mmcg@cs.monash.edu.au>
X-#
X+# Created by: Mike McGaughey <mmcg@cs.monash.edu.au>
X # $FreeBSD: head/devel/boehm-gc/Makefile 300896 2012-07-14 13:54:48Z beat $
X-#
X 
X PORTNAME=	boehm-gc
X-PORTVERSION=	7.1
X-PORTREVISION=	0
X+PORTVERSION=	7.2d
X+PORTREVISION?=	0
X CATEGORIES=	devel
X MASTER_SITES=	http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
X-DISTNAME=	gc-${PORTVERSION:S/.a/alpha/}
X+DISTNAME=	gc-${PORTVERSION}
X 
X MAINTAINER=	ports@FreeBSD.org
X COMMENT=	Garbage collection and memory leak detection for C and C++
X 
X-GNU_CONFIGURE=	yes
X+OPTIONS_DEFINE=	PARALLEL_MARK DEBUG
X+PARALLEL_MARK_DESC=	Parallel-thread marking (faster for SMP)
X+
X+WRKSRC=		${WRKDIR}/gc-${PORTVERSION:C,[[:alpha:]],,g}
X+
X USE_GNOME=	gnomehack
X+GNU_CONFIGURE=	yes
X+CONFIGURE_ARGS=	--enable-cplusplus --disable-static \
X+		--datadir=${WRKDIR}/tmproot
X USE_LDCONFIG=	yes
X-CONFIGURE_ARGS=	--enable-cplusplus --disable-static --disable-threads
X MAKE_JOBS_UNSAFE=	yes
X-OPTIONS_DEFINE=	DEBUG
X 
X-.include <bsd.port.pre.mk>
X+.if defined(GC_VARIANT)
X+PKGNAMESUFFIX=	-${GC_VARIANT}
X+RUN_DEPENDS+=	${PREFIX}/include/gc/gc.h:${PORTSDIR}/devel/boehm-gc
X+PLIST=		${NONEXISTENT}
X+PLIST_FILES=	${INSTLIBS:S,^,lib/lib,g:S,$,-${GC_VARIANT}.so.${SOVER},g} \
X+		${INSTLIBS:S,^,lib/lib,g:S,$,-${GC_VARIANT}.so,g} \
X+		libdata/pkgconfig/bdw-gc-${GC_VARIANT}.pc
X+INSTLIBS=	cord gc gccpp
X+SOVER=		1
X+.if ${GC_VARIANT} == "redirect"
X+CONFIGURE_ARGS+=	--disable-threads --enable-redirect-malloc
X+.endif
X+.if ${GC_VARIANT} == "threaded"
X+CONFIGURE_ARGS+=	--enable-threads=posix --disable-redirect-malloc \
X+			--enable-thread-local-alloc
X+.endif
X+.else
X+OPTIONS_DEFINE+=DOCS
X+CONFIGURE_ARGS+=	--disable-threads --disable-redirect-malloc
X+MAN3=		gc.3
X+.endif
X+
X+.include <bsd.port.options.mk>
X+
X+.if ${PORT_OPTIONS:MPARALLEL_MARK}
X+CONFIGURE_ARGS+=	--enable-parallel-mark
X+.endif
X 
X .if ${PORT_OPTIONS:MDEBUG}
X CONFIGURE_ARGS+=	--enable-gc-debug
X PKGNAMESUFFIX:=		${PKGNAMESUFFIX}+fulldebug
X .endif
X 
X-MAN3=		gc.3
X+.include <bsd.port.pre.mk>
X 
X .if ${ARCH} == "ia64"
X-BROKEN=	Does not compile on ia64
X+BROKEN=		Does not compile on ia64
X .endif
X 
X+.if defined(GC_VARIANT)
X+post-patch:
X+	@${REINPLACE_CMD} -e \
X+		's,libgc\.la,libgc-${GC_VARIANT}.la,g ; \
X+		 s,libgccpp\.la,libgccpp-${GC_VARIANT}.la,g ; \
X+		 s,libcord\.la,libcord-${GC_VARIANT}.la,g' ${WRKSRC}/Makefile.in
X+	@${REINPLACE_CMD} -e \
X+		's,-lgc,-lgc-${GC_VARIANT},' ${WRKSRC}/bdw-gc.pc.in
X+
X+do-install:
X+.for LIB in ${INSTLIBS}
X+	${INSTALL_DATA} ${WRKSRC}/.libs/lib${LIB}-${GC_VARIANT}.so.${SOVER} \
X+		${PREFIX}/lib/lib${LIB}-${GC_VARIANT}.so.${SOVER}
X+	${LN} -sf lib${LIB}-${GC_VARIANT}.so.${SOVER} \
X+		${PREFIX}/lib/lib${LIB}-${GC_VARIANT}.so
X+.endfor
X+	${INSTALL_DATA} ${WRKSRC}/bdw-gc.pc \
X+		${PREFIX}/libdata/pkgconfig/bdw-gc-${GC_VARIANT}.pc
X+.else
X post-patch:
X 	@${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/doc/gc.man
X 
X-#
X-# Get rid of .la and static library files
X-#
X-post-configure:
X-	@${REINPLACE_CMD} -E -e \
X-	'/Install the pseudo-library/,/staticlibs=/s,^,#,' ${WRKSRC}/libtool
X-
X post-install:
X-	${INSTALL_MAN} ${WRKSRC}/doc/gc.man ${PREFIX}/man/man3/gc.3
X+	(cd ${WRKSRC}/doc && ${INSTALL_MAN} gc.man ${MAN3PREFIX}/man/man3/gc.3)
X+.if ${PORT_OPTIONS:MDOCS}
X+	@${MKDIR} ${DOCSDIR}
X+	(cd ${WRKDIR}/tmproot/gc && ${INSTALL_DATA} * ${DOCSDIR})
X+.endif
X+.endif
X 
X test: build
X 	cd ${WRKSRC} && ${MAKE} check
Xdiff -urN /usr/ports/devel/boehm-gc/distinfo devel/boehm-gc/distinfo
X--- /usr/ports/devel/boehm-gc/distinfo	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/distinfo	2013-01-16 19:31:59.000000000 +0900
X@@ -1,2 +1,2 @@
X-SHA256 (gc-7.1.tar.gz) = e3cef6028fe3efe7de3bcf4107c880eae50b3ee79841450d885467c09bcebf30
X-SIZE (gc-7.1.tar.gz) = 1077714
X+SHA256 (gc-7.2d.tar.gz) = d9fe0ae8650d43746a48bfb394cab01a319f3809cee19f8ebd16aa985b511c5e
X+SIZE (gc-7.2d.tar.gz) = 1263064
Xdiff -urN /usr/ports/devel/boehm-gc/files/patch-Makefile.in devel/boehm-gc/files/patch-Makefile.in
X--- /usr/ports/devel/boehm-gc/files/patch-Makefile.in	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/files/patch-Makefile.in	1970-01-01 09:00:00.000000000 +0900
X@@ -1,11 +0,0 @@
X---- Makefile.in.orig	2009-10-20 01:25:20.000000000 +0400
X-+++ Makefile.in	2009-10-20 01:25:30.000000000 +0400
X-@@ -75,7 +75,7 @@
X- srcdir = @srcdir@
X- top_srcdir = @top_srcdir@
X- VPATH = @srcdir@
X--pkgdatadir = $(datadir)/@PACKAGE@
X-+pkgdatadir = $(datadir)/doc/@PACKAGE@
X- pkglibdir = $(libdir)/@PACKAGE@
X- pkgincludedir = $(includedir)/@PACKAGE@
X- top_builddir = .
Xdiff -urN /usr/ports/devel/boehm-gc/files/patch-dbg_mlc.c devel/boehm-gc/files/patch-dbg_mlc.c
X--- /usr/ports/devel/boehm-gc/files/patch-dbg_mlc.c	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/files/patch-dbg_mlc.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,77 +0,0 @@
X---- dbg_mlc.c.orig	2009-10-20 00:34:39.000000000 +0400
X-+++ dbg_mlc.c	2009-10-20 00:41:22.000000000 +0400
X-@@ -456,10 +456,34 @@
X-     GC_register_displacement((word)sizeof(oh) + offset);
X- }
X- 
X-+#if defined(__FreeBSD__)
X-+#include <dlfcn.h>
X-+static void GC_caller_func_offset(ad, symp, offp)
X-+const GC_word ad;
X-+const char **symp;
X-+int *offp;
X-+{
X-+    Dl_info caller;
X-+    if (dladdr((const void *)ad, &caller) && caller.dli_sname != NULL) {
X-+      *symp = caller.dli_sname;
X-+      *offp = (const char *)ad - (const char *)caller.dli_saddr;
X-+    }
X-+}
X-+#else
X-+#define GC_caller_func(ad, symp, offp)
X-+#endif
X-+
X- void * GC_debug_malloc(size_t lb, GC_EXTRA_PARAMS)
X- {
X-     void * result = GC_malloc(lb + DEBUG_BYTES);
X--    
X-+
X-+#ifdef GC_ADD_CALLER
X-+    if (s == NULL) {
X-+      GC_caller_func_offset(ra, &s, &i);
X-+      if (s == NULL)
X-+        s = "unknown";
X-+    }
X-+#endif
X-     if (result == 0) {
X-         GC_err_printf("GC_debug_malloc(%lu) returning NIL (",
X-         	      (unsigned long) lb);
X-@@ -764,6 +788,13 @@
X-     size_t old_sz;
X-     hdr * hhdr;
X-     
X-+#ifdef GC_ADD_CALLER
X-+    if (s == NULL) {
X-+      GC_caller_func_offset(ra, &s, &i);
X-+      if (s == NULL)
X-+        s = "unknown";
X-+    }
X-+#endif
X-     if (p == 0) return(GC_debug_malloc(lb, OPT_RA s, i));
X-     if (base == 0) {
X-         GC_err_printf("Attempt to reallocate invalid pointer %p\n", p);
X-@@ -1041,17 +1072,21 @@
X- }
X- 
X- #ifdef GC_ADD_CALLER
X--# define RA GC_RETURN_ADDR,
X-+# ifdef GC_RETURN_ADDR_PARENT
X-+#  define RA GC_RETURN_ADDR_PARENT,
X-+# else
X-+#  define RA GC_RETURN_ADDR,
X-+# endif
X- #else
X- # define RA
X- #endif
X- 
X- void * GC_debug_malloc_replacement(size_t lb)
X- {
X--    return GC_debug_malloc(lb, RA "unknown", 0);
X-+    return GC_debug_malloc(lb, RA NULL, 0);
X- }
X- 
X- void * GC_debug_realloc_replacement(void *p, size_t lb)
X- {
X--    return GC_debug_realloc(p, lb, RA "unknown", 0);
X-+    return GC_debug_realloc(p, lb, RA NULL, 0);
X- }
Xdiff -urN /usr/ports/devel/boehm-gc/files/patch-include-gc.h devel/boehm-gc/files/patch-include-gc.h
X--- /usr/ports/devel/boehm-gc/files/patch-include-gc.h	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/files/patch-include-gc.h	1970-01-01 09:00:00.000000000 +0900
X@@ -1,10 +0,0 @@
X---- include/gc.h.orig	Wed Jun  4 17:07:33 2003
X-+++ include/gc.h	Wed May 12 20:03:22 2004
X-@@ -487,6 +487,7 @@
X-     /* gcc knows how to retrieve return address, but we don't know */
X-     /* how to generate call stacks.				   */
X- #   define GC_RETURN_ADDR (GC_word)__builtin_return_address(0)
X-+#   define GC_RETURN_ADDR_PARENT (GC_word)__builtin_return_address(1)
X- # else
X-     /* Just pass 0 for gcc compatibility. */
X- #   define GC_RETURN_ADDR 0
Xdiff -urN /usr/ports/devel/boehm-gc/files/patch-include-private-gcconfig.h devel/boehm-gc/files/patch-include-private-gcconfig.h
X--- /usr/ports/devel/boehm-gc/files/patch-include-private-gcconfig.h	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/files/patch-include-private-gcconfig.h	2013-01-16 22:57:49.000000000 +0900
X@@ -1,63 +1,47 @@
X --- include/private/gcconfig.h.orig	2008-02-20 22:23:00.000000000 +0300
X +++ include/private/gcconfig.h	2009-10-20 01:08:38.000000000 +0400
X-@@ -64,7 +64,7 @@
X- /* Determine the machine type: */
X- # if defined(__arm__) || defined(__thumb__)
X+@@ -73,6 +73,7 @@
X+ # if defined(__arm) || defined(__arm__) || defined(__thumb__)
X  #    define ARM32
X--#    if !defined(LINUX) && !defined(NETBSD)
X-+#    if !defined(LINUX) && !defined(NETBSD) && !defined(FREEBSD)
X+ #    if !defined(LINUX) && !defined(NETBSD) && !defined(OPENBSD) \
X++        && !defined(FREEBSD) \
X+         && !defined(DARWIN) && !defined(_WIN32) && !defined(__CEGCC__)
X  #      define NOSYS
X  #      define mach_type_known
X- #    endif
X-@@ -334,10 +334,26 @@
X- #    define X86_64
X- #    define mach_type_known
X+@@ -359,10 +360,18 @@
X+ #   define I386
X+ #   define mach_type_known
X  # endif
X-+# if defined(__FreeBSD__) && defined(__amd64__)
X-+#    define X86_64
X-+#    define mach_type_known
X-+# endif
X-+# if defined(__FreeBSD__) && defined(__ia64__)
X-+#    define IA64
X-+#    define mach_type_known
X-+# endif
X- # if defined(FREEBSD) && defined(__sparc__)
X- #    define SPARC
X- #    define mach_type_known
X+-# if defined(FREEBSD) && defined(__x86_64__)
X++# if defined(FREEBSD) && (defined(__amd64__) || defined(__x86_64__))
X+ #   define X86_64
X+ #   define mach_type_known
X  # endif
X-+# if defined(FREEBSD) && defined(__powerpc__)
X-+#    define POWERPC
X++# if defined(FREEBSD) && defined(__ia64__)
X++#    define IA64
X +#    define mach_type_known
X +# endif
X +# if defined(FREEBSD) && defined(__arm__)
X +#    define ARM32
X +#    define mach_type_known
X +# endif
X- # if defined(bsdi) && (defined(i386) || defined(__i386__))
X- #    define I386
X- #    define BSDI
X-@@ -1771,6 +1787,16 @@
X- #     define OS_TYPE "MSWINCE"
X- #     define DATAEND /* not needed */
X+ # if defined(__NetBSD__) && (defined(i386) || defined(__i386__))
X+ #   define I386
X+ #   define mach_type_known
X+@@ -1986,6 +1995,16 @@
X+ #     define DATAEND ((ptr_t)(&_end))
X+ #     define DYNAMIC_LOADING
X  #   endif
X +#   ifdef FREEBSD
X-+#   define ALIGNMENT 4
X-+#       define OS_TYPE "FREEBSD"
X-+#       ifdef __ELF__
X-+#           define DYNAMIC_LOADING
X-+#       endif
X-+#	define HEURISTIC2
X-+	extern char etext[];
X-+#	define SEARCH_FOR_DATA_START
X++#     define ALIGNMENT 4
X++#     define OS_TYPE "FREEBSD"
X++#     ifdef __ELF__
X++#       define DYNAMIC_LOADING
X++#     endif
X++#     define HEURISTIC2
X++      extern char etext[];
X++#     define SEARCH_FOR_DATA_START
X +#   endif
X  #   ifdef NOSYS
X        /* __data_start is usually defined in the target linker script.  */
X        extern int __data_start[];
X-@@ -1800,6 +1826,7 @@
X- #     define OS_TYPE "MSWINCE"
X- #     define DATAEND /* not needed */
X- #   endif
X-+		   
X- #   ifdef LINUX
X- #     define OS_TYPE "LINUX"
X- #     define LINUX_STACKBOTTOM
Xdiff -urN /usr/ports/devel/boehm-gc/files/patch-include__gc_config_macros.h devel/boehm-gc/files/patch-include__gc_config_macros.h
X--- /usr/ports/devel/boehm-gc/files/patch-include__gc_config_macros.h	1970-01-01 09:00:00.000000000 +0900
X+++ devel/boehm-gc/files/patch-include__gc_config_macros.h	2013-01-16 22:06:06.000000000 +0900
X@@ -0,0 +1,10 @@
X+--- include/gc_config_macros.h.orig
X++++ include/gc_config_macros.h
X+@@ -287,6 +287,7 @@
X+     /* gcc knows how to retrieve return address, but we don't know      */
X+     /* how to generate call stacks.                                     */
X+ #   define GC_RETURN_ADDR (GC_word)__builtin_return_address(0)
X++#   define GC_RETURN_ADDR_PARENT (GC_word)__builtin_return_address(1)
X+ # else
X+     /* Just pass 0 for gcc compatibility.       */
X+ #   define GC_RETURN_ADDR 0
Xdiff -urN /usr/ports/devel/boehm-gc/files/patch-os_dep.c devel/boehm-gc/files/patch-os_dep.c
X--- /usr/ports/devel/boehm-gc/files/patch-os_dep.c	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/files/patch-os_dep.c	2013-01-16 22:56:46.000000000 +0900
X@@ -1,44 +1,29 @@
X --- os_dep.c.orig	2008-02-29 11:01:28.000000000 -0800
X +++ os_dep.c	2010-04-01 00:50:34.000000000 -0700
X-@@ -816,7 +816,7 @@
X-     || defined(HURD) || defined(NETBSD)
X- 	static struct sigaction old_segv_act;
X- #	if defined(_sigargs) /* !Irix6.x */ || defined(HPUX) \
X--	|| defined(HURD) || defined(NETBSD)
X-+	|| defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 	    static struct sigaction old_bus_act;
X- #	endif
X- #   else
X-@@ -826,7 +826,7 @@
X-     void GC_set_and_save_fault_handler(handler h)
X+@@ -840,8 +840,8 @@
X+ 
X+     GC_INNER void GC_set_and_save_fault_handler(GC_fault_handler_t h)
X      {
X- #	if defined(SUNOS5SIGS) || defined(IRIX5)  \
X--        || defined(OSF1) || defined(HURD) || defined(NETBSD)
X-+        || defined(OSF1) || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 	  struct sigaction	act;
X+-#       if defined(SUNOS5SIGS) || defined(IRIX5) \
X+-           || defined(OSF1) || defined(HURD) || defined(NETBSD)
X++#       if defined(SUNOS5SIGS) || defined(IRIX5) || defined(OSF1) \
X++           || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X+           struct sigaction act;
X  
X- 	  act.sa_handler	= h;
X-@@ -846,7 +846,7 @@
X- #	  else
X- 	        (void) sigaction(SIGSEGV, &act, &old_segv_act);
X- #		if defined(IRIX5) && defined(_sigargs) /* Irix 5.x, not 6.x */ \
X--		   || defined(HPUX) || defined(HURD) || defined(NETBSD)
X-+		   || defined(HPUX) || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 		    /* Under Irix 5.x or HP/UX, we may get SIGBUS.	*/
X- 		    /* Pthreads doesn't exist under Irix 5.x, so we	*/
X- 		    /* don't have to worry in the threads case.		*/
X-@@ -2713,7 +2713,13 @@
X- #   include <errno.h>
X- #   if defined(FREEBSD)
X- #     define SIG_OK TRUE
X--#     define CODE_OK (code == BUS_PAGE_FAULT)
X+           act.sa_handler = h;
X+@@ -3073,8 +3073,14 @@
X+ #     ifndef SEGV_ACCERR
X+ #       define SEGV_ACCERR 2
X+ #     endif
X+-#     define CODE_OK (si -> si_code == BUS_PAGE_FAULT \
X +#     if defined(POWERPC)
X-+#	define AIM	/* Pretend that we're AIM. */
X-+#	include <machine/trap.h>
X-+#       define CODE_OK (code == EXC_DSI)
X++#       define AIM	/* Pretend that we're AIM. */
X++#       include <machine/trap.h>
X++#       define CODE_OK (si -> si_code == EXC_DSI)
X +#     else
X-+#       define CODE_OK (code == BUS_PAGE_FAULT)
X++#       define CODE_OK (si -> si_code == BUS_PAGE_FAULT \
X+           || si -> si_code == SEGV_ACCERR)
X +#     endif
X  #   elif defined(OSF1)
X- #     define SIG_OK (sig == SIGSEGV)
X- #     define CODE_OK (code == 2 /* experimentally determined */)
X+ #     define CODE_OK (si -> si_code == 2 /* experimentally determined */)
X+ #   elif defined(IRIX5)
Xdiff -urN /usr/ports/devel/boehm-gc/pkg-plist devel/boehm-gc/pkg-plist
X--- /usr/ports/devel/boehm-gc/pkg-plist	2012-11-08 04:39:10.000000000 +0900
X+++ devel/boehm-gc/pkg-plist	2013-01-17 00:03:12.000000000 +0900
X@@ -1,4 +1,5 @@
X include/gc.h
X+include/gc/cord.h
X include/gc/gc.h
X include/gc/gc_allocator.h
X include/gc/gc_amiga_redirects.h
X@@ -16,47 +17,51 @@
X include/gc/new_gc_alloc.h
X include/gc/weakpointer.h
X include/gc_cpp.h
X+lib/libcord.la
X lib/libcord.so
X lib/libcord.so.1
X+lib/libgc.la
X lib/libgc.so
X lib/libgc.so.1
X+lib/libgccpp.la
X lib/libgccpp.so
X lib/libgccpp.so.1
X libdata/pkgconfig/bdw-gc.pc
X-share/doc/gc/README
X-share/doc/gc/README.DGUX386
X-share/doc/gc/README.Mac
X-share/doc/gc/README.MacOSX
X-share/doc/gc/README.OS2
X-share/doc/gc/README.amiga
X-share/doc/gc/README.arm.cross
X-share/doc/gc/README.autoconf
X-share/doc/gc/README.changes
X-share/doc/gc/README.contributors
X-share/doc/gc/README.cords
X-share/doc/gc/README.darwin
X-share/doc/gc/README.dj
X-share/doc/gc/README.environment
X-share/doc/gc/README.ews4800
X-share/doc/gc/README.hp
X-share/doc/gc/README.linux
X-share/doc/gc/README.macros
X-share/doc/gc/README.rs6000
X-share/doc/gc/README.sgi
X-share/doc/gc/README.solaris2
X-share/doc/gc/README.uts
X-share/doc/gc/README.win32
X-share/doc/gc/README.win64
X-share/doc/gc/barrett_diagram
X-share/doc/gc/debugging.html
X-share/doc/gc/gc.man
X-share/doc/gc/gcdescr.html
X-share/doc/gc/gcinterface.html
X-share/doc/gc/leak.html
X-share/doc/gc/overview.html
X-share/doc/gc/porting.html
X-share/doc/gc/scale.html
X-share/doc/gc/simple_example.html
X-share/doc/gc/tree.html
X-@dirrm share/doc/gc
X+%%PORTDOCS%%%%DOCSDIR%%/README
X+%%PORTDOCS%%%%DOCSDIR%%/README.DGUX386
X+%%PORTDOCS%%%%DOCSDIR%%/README.Mac
X+%%PORTDOCS%%%%DOCSDIR%%/README.MacOSX
X+%%PORTDOCS%%%%DOCSDIR%%/README.OS2
X+%%PORTDOCS%%%%DOCSDIR%%/README.amiga
X+%%PORTDOCS%%%%DOCSDIR%%/README.arm.cross
X+%%PORTDOCS%%%%DOCSDIR%%/README.autoconf
X+%%PORTDOCS%%%%DOCSDIR%%/README.changes
X+%%PORTDOCS%%%%DOCSDIR%%/README.cmake
X+%%PORTDOCS%%%%DOCSDIR%%/README.contributors
X+%%PORTDOCS%%%%DOCSDIR%%/README.cords
X+%%PORTDOCS%%%%DOCSDIR%%/README.darwin
X+%%PORTDOCS%%%%DOCSDIR%%/README.dj
X+%%PORTDOCS%%%%DOCSDIR%%/README.environment
X+%%PORTDOCS%%%%DOCSDIR%%/README.ews4800
X+%%PORTDOCS%%%%DOCSDIR%%/README.hp
X+%%PORTDOCS%%%%DOCSDIR%%/README.linux
X+%%PORTDOCS%%%%DOCSDIR%%/README.macros
X+%%PORTDOCS%%%%DOCSDIR%%/README.rs6000
X+%%PORTDOCS%%%%DOCSDIR%%/README.sgi
X+%%PORTDOCS%%%%DOCSDIR%%/README.solaris2
X+%%PORTDOCS%%%%DOCSDIR%%/README.uts
X+%%PORTDOCS%%%%DOCSDIR%%/README.win32
X+%%PORTDOCS%%%%DOCSDIR%%/README.win64
X+%%PORTDOCS%%%%DOCSDIR%%/barrett_diagram
X+%%PORTDOCS%%%%DOCSDIR%%/debugging.html
X+%%PORTDOCS%%%%DOCSDIR%%/gc.man
X+%%PORTDOCS%%%%DOCSDIR%%/gcdescr.html
X+%%PORTDOCS%%%%DOCSDIR%%/gcinterface.html
X+%%PORTDOCS%%%%DOCSDIR%%/leak.html
X+%%PORTDOCS%%%%DOCSDIR%%/overview.html
X+%%PORTDOCS%%%%DOCSDIR%%/porting.html
X+%%PORTDOCS%%%%DOCSDIR%%/scale.html
X+%%PORTDOCS%%%%DOCSDIR%%/simple_example.html
X+%%PORTDOCS%%%%DOCSDIR%%/tree.html
X+%%PORTDOCS%%@dirrm %%DOCSDIR%%
X @dirrm include/gc
d3fa4b9dca7ee1bd5c11b389305842c8
echo x - devel_boehm-gc-redirect.diff
sed 's/^X//' >devel_boehm-gc-redirect.diff << 'abfa6072f2c9834f0488586bc29bf3c8'
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/Makefile devel/boehm-gc-redirect/Makefile
X--- /usr/ports/devel/boehm-gc-redirect/Makefile	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/Makefile	2013-01-17 20:36:29.000000000 +0900
X@@ -1,63 +1,11 @@
X-# New ports collection makefile for:	boehm-gc-redirect
X-# Date created:		12/17/2009
X-# Whom:			stas
X-#
X+# Created by: stas
X # $FreeBSD: head/devel/boehm-gc-redirect/Makefile 300896 2012-07-14 13:54:48Z beat $
X-#
X 
X-PORTNAME=	boehm-gc
X-PORTVERSION=	7.1
X-CATEGORIES=	devel
X-MASTER_SITES=	http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
X-PKGNAMESUFFIX=	-${GC_VARIANT}
X-DISTNAME=	gc-${PORTVERSION:S/.a/alpha/}
X+PORTREVISION=	0
X 
X-MAINTAINER=	ports@FreeBSD.org
X-COMMENT=	Garbage collection and memory leak detection for C and C++
X+MASTERDIR=	${.CURDIR}/../boehm-gc
X+DESCR=		${.CURDIR}/pkg-descr
X 
X-RUN_DEPENDS=	${PREFIX}/include/gc/gc.h:${PORTSDIR}/devel/boehm-gc
X-
X-GNU_CONFIGURE=	yes
X-USE_LDCONFIG=	yes
X-CONFIGURE_ARGS=	--enable-cplusplus --disable-static --disable-threads \
X-		--enable-redirect-malloc
X-CONFIGURE_ENV=	CFLAGSS="${CFLAGS} LIBS="${LIBS}
X-MAKE_JOBS_UNSAFE=	yes
X-INSTLIBS=	cord gc gccpp
X GC_VARIANT=	redirect
X-SOVER=	1
X-
X-OPTIONS_DEFINE=	DEBUG
X-
X-PLIST_FILES=	${INSTLIBS:S,^,lib/lib,g:S,$,-${GC_VARIANT}.so.${SOVER},g} \
X-		${INSTLIBS:S,^,lib/lib,g:S,$,-${GC_VARIANT}.so,g}
X-
X-.include <bsd.port.pre.mk>
X-
X-.if ${ARCH} == "ia64"
X-BROKEN=	Does not compile on ia64
X-.endif
X-
X-.if ${PORT_OPTIONS:MDEBUG}
X-CONFIGURE_ARGS+=	--enable-gc-debug
X-PKGNAMESUFFIX:=	${PKGNAMESUFFIX}+fulldebug
X-.endif
X-
X-post-patch:
X-	${REINPLACE_CMD} -E -e 's,libgc\.la,libgc-${GC_VARIANT}.la,g' \
X-		-e 's,libgccpp\.la,libgccpp-${GC_VARIANT}.la,g' \
X-		-e 's,libcord\.la,libcord-${GC_VARIANT}.la,g' \
X-		${WRKSRC}/Makefile.in
X-
X-do-install:
X-.for LIB in ${INSTLIBS}
X-	${INSTALL_DATA} ${WRKSRC}/.libs/lib${LIB}-${GC_VARIANT}.so.${SOVER} \
X-	    ${PREFIX}/lib/lib${LIB}-${GC_VARIANT}.so.${SOVER}
X-	@(cd ${PREFIX}/lib && ${LN} -s lib${LIB}-${GC_VARIANT}.so.${SOVER} \
X-	    lib${LIB}-${GC_VARIANT}.so)
X-.endfor
X-
X-test: build
X-	cd ${WRKSRC} && ${MAKE} check
X 
X-.include <bsd.port.post.mk>
X+.include "${MASTERDIR}/Makefile"
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/distinfo devel/boehm-gc-redirect/distinfo
X--- /usr/ports/devel/boehm-gc-redirect/distinfo	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/distinfo	1970-01-01 09:00:00.000000000 +0900
X@@ -1,2 +0,0 @@
X-SHA256 (gc-7.1.tar.gz) = e3cef6028fe3efe7de3bcf4107c880eae50b3ee79841450d885467c09bcebf30
X-SIZE (gc-7.1.tar.gz) = 1077714
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/files/patch-configure devel/boehm-gc-redirect/files/patch-configure
X--- /usr/ports/devel/boehm-gc-redirect/files/patch-configure	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/files/patch-configure	1970-01-01 09:00:00.000000000 +0900
X@@ -1,12 +0,0 @@
X---- configure.orig	2009-12-19 14:02:54.000000000 +0300
X-+++ configure	2009-12-19 14:04:13.000000000 +0300
X-@@ -6161,6 +6161,9 @@
X-  sparc-*-netbsd*)
X-     machdep="mach_dep.lo sparc_netbsd_mach_dep.lo"
X-     ;;
X-+ sparc64-*-freebsd*)
X-+    machdep="mach_dep.lo sparc_mach_dep.lo"
X-+    ;;
X-  sparc-sun-solaris2.3)
X-     machdep="mach_dep.lo sparc_mach_dep.lo"
X-     cat >>confdefs.h <<\_ACEOF
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/files/patch-dbg_mlc.c devel/boehm-gc-redirect/files/patch-dbg_mlc.c
X--- /usr/ports/devel/boehm-gc-redirect/files/patch-dbg_mlc.c	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/files/patch-dbg_mlc.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,77 +0,0 @@
X---- dbg_mlc.c.orig	2009-10-20 00:34:39.000000000 +0400
X-+++ dbg_mlc.c	2009-10-20 00:41:22.000000000 +0400
X-@@ -456,10 +456,34 @@
X-     GC_register_displacement((word)sizeof(oh) + offset);
X- }
X- 
X-+#if defined(__FreeBSD__)
X-+#include <dlfcn.h>
X-+static void GC_caller_func_offset(ad, symp, offp)
X-+const GC_word ad;
X-+const char **symp;
X-+int *offp;
X-+{
X-+    Dl_info caller;
X-+    if (dladdr((const void *)ad, &caller) && caller.dli_sname != NULL) {
X-+      *symp = caller.dli_sname;
X-+      *offp = (const char *)ad - (const char *)caller.dli_saddr;
X-+    }
X-+}
X-+#else
X-+#define GC_caller_func(ad, symp, offp)
X-+#endif
X-+
X- void * GC_debug_malloc(size_t lb, GC_EXTRA_PARAMS)
X- {
X-     void * result = GC_malloc(lb + DEBUG_BYTES);
X--    
X-+
X-+#ifdef GC_ADD_CALLER
X-+    if (s == NULL) {
X-+      GC_caller_func_offset(ra, &s, &i);
X-+      if (s == NULL)
X-+        s = "unknown";
X-+    }
X-+#endif
X-     if (result == 0) {
X-         GC_err_printf("GC_debug_malloc(%lu) returning NIL (",
X-         	      (unsigned long) lb);
X-@@ -764,6 +788,13 @@
X-     size_t old_sz;
X-     hdr * hhdr;
X-     
X-+#ifdef GC_ADD_CALLER
X-+    if (s == NULL) {
X-+      GC_caller_func_offset(ra, &s, &i);
X-+      if (s == NULL)
X-+        s = "unknown";
X-+    }
X-+#endif
X-     if (p == 0) return(GC_debug_malloc(lb, OPT_RA s, i));
X-     if (base == 0) {
X-         GC_err_printf("Attempt to reallocate invalid pointer %p\n", p);
X-@@ -1041,17 +1072,21 @@
X- }
X- 
X- #ifdef GC_ADD_CALLER
X--# define RA GC_RETURN_ADDR,
X-+# ifdef GC_RETURN_ADDR_PARENT
X-+#  define RA GC_RETURN_ADDR_PARENT,
X-+# else
X-+#  define RA GC_RETURN_ADDR,
X-+# endif
X- #else
X- # define RA
X- #endif
X- 
X- void * GC_debug_malloc_replacement(size_t lb)
X- {
X--    return GC_debug_malloc(lb, RA "unknown", 0);
X-+    return GC_debug_malloc(lb, RA NULL, 0);
X- }
X- 
X- void * GC_debug_realloc_replacement(void *p, size_t lb)
X- {
X--    return GC_debug_realloc(p, lb, RA "unknown", 0);
X-+    return GC_debug_realloc(p, lb, RA NULL, 0);
X- }
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/files/patch-dyn_load.c devel/boehm-gc-redirect/files/patch-dyn_load.c
X--- /usr/ports/devel/boehm-gc-redirect/files/patch-dyn_load.c	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/files/patch-dyn_load.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,15 +0,0 @@
X---- dyn_load.c.orig	Thu May  6 08:03:06 2004
X-+++ dyn_load.c	Sun Oct 31 01:53:01 2004
X-@@ -97,6 +97,12 @@
X- #      else
X- #        define ElfW(type) Elf64_##type
X- #      endif
X-+#    elif defined(__FreeBSD__)
X-+#      if __ELF_WORD_SIZE == 32
X-+#        define ElfW(type) Elf32_##type
X-+#      else
X-+#        define ElfW(type) Elf64_##type
X-+#      endif
X- #    else
X- #      if !defined(ELF_CLASS) || ELF_CLASS == ELFCLASS32
X- #        define ElfW(type) Elf32_##type
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/files/patch-include-gc.h devel/boehm-gc-redirect/files/patch-include-gc.h
X--- /usr/ports/devel/boehm-gc-redirect/files/patch-include-gc.h	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/files/patch-include-gc.h	1970-01-01 09:00:00.000000000 +0900
X@@ -1,10 +0,0 @@
X---- include/gc.h.orig	Wed Jun  4 17:07:33 2003
X-+++ include/gc.h	Wed May 12 20:03:22 2004
X-@@ -487,6 +487,7 @@
X-     /* gcc knows how to retrieve return address, but we don't know */
X-     /* how to generate call stacks.				   */
X- #   define GC_RETURN_ADDR (GC_word)__builtin_return_address(0)
X-+#   define GC_RETURN_ADDR_PARENT (GC_word)__builtin_return_address(1)
X- # else
X-     /* Just pass 0 for gcc compatibility. */
X- #   define GC_RETURN_ADDR 0
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/files/patch-include-private-gcconfig.h devel/boehm-gc-redirect/files/patch-include-private-gcconfig.h
X--- /usr/ports/devel/boehm-gc-redirect/files/patch-include-private-gcconfig.h	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/files/patch-include-private-gcconfig.h	1970-01-01 09:00:00.000000000 +0900
X@@ -1,63 +0,0 @@
X---- include/private/gcconfig.h.orig	2008-02-20 22:23:00.000000000 +0300
X-+++ include/private/gcconfig.h	2009-10-20 01:08:38.000000000 +0400
X-@@ -64,7 +64,7 @@
X- /* Determine the machine type: */
X- # if defined(__arm__) || defined(__thumb__)
X- #    define ARM32
X--#    if !defined(LINUX) && !defined(NETBSD)
X-+#    if !defined(LINUX) && !defined(NETBSD) && !defined(FREEBSD)
X- #      define NOSYS
X- #      define mach_type_known
X- #    endif
X-@@ -334,10 +334,26 @@
X- #    define X86_64
X- #    define mach_type_known
X- # endif
X-+# if defined(__FreeBSD__) && defined(__amd64__)
X-+#    define X86_64
X-+#    define mach_type_known
X-+# endif
X-+# if defined(__FreeBSD__) && defined(__ia64__)
X-+#    define IA64
X-+#    define mach_type_known
X-+# endif
X- # if defined(FREEBSD) && defined(__sparc__)
X- #    define SPARC
X- #    define mach_type_known
X- # endif
X-+# if defined(FREEBSD) && defined(__powerpc__)
X-+#    define POWERPC
X-+#    define mach_type_known
X-+# endif
X-+# if defined(FREEBSD) && defined(__arm__)
X-+#    define ARM32
X-+#    define mach_type_known
X-+# endif
X- # if defined(bsdi) && (defined(i386) || defined(__i386__))
X- #    define I386
X- #    define BSDI
X-@@ -1771,6 +1787,16 @@
X- #     define OS_TYPE "MSWINCE"
X- #     define DATAEND /* not needed */
X- #   endif
X-+#   ifdef FREEBSD
X-+#   define ALIGNMENT 4
X-+#       define OS_TYPE "FREEBSD"
X-+#       ifdef __ELF__
X-+#           define DYNAMIC_LOADING
X-+#       endif
X-+#	define HEURISTIC2
X-+	extern char etext[];
X-+#	define SEARCH_FOR_DATA_START
X-+#   endif
X- #   ifdef NOSYS
X-       /* __data_start is usually defined in the target linker script.  */
X-       extern int __data_start[];
X-@@ -1800,6 +1826,7 @@
X- #     define OS_TYPE "MSWINCE"
X- #     define DATAEND /* not needed */
X- #   endif
X-+		   
X- #   ifdef LINUX
X- #     define OS_TYPE "LINUX"
X- #     define LINUX_STACKBOTTOM
Xdiff -urN /usr/ports/devel/boehm-gc-redirect/files/patch-os_dep.c devel/boehm-gc-redirect/files/patch-os_dep.c
X--- /usr/ports/devel/boehm-gc-redirect/files/patch-os_dep.c	2012-11-08 04:44:39.000000000 +0900
X+++ devel/boehm-gc-redirect/files/patch-os_dep.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,44 +0,0 @@
X---- os_dep.c.orig	2008-02-29 11:01:28.000000000 -0800
X-+++ os_dep.c	2010-04-01 00:50:34.000000000 -0700
X-@@ -816,7 +816,7 @@
X-     || defined(HURD) || defined(NETBSD)
X- 	static struct sigaction old_segv_act;
X- #	if defined(_sigargs) /* !Irix6.x */ || defined(HPUX) \
X--	|| defined(HURD) || defined(NETBSD)
X-+	|| defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 	    static struct sigaction old_bus_act;
X- #	endif
X- #   else
X-@@ -826,7 +826,7 @@
X-     void GC_set_and_save_fault_handler(handler h)
X-     {
X- #	if defined(SUNOS5SIGS) || defined(IRIX5)  \
X--        || defined(OSF1) || defined(HURD) || defined(NETBSD)
X-+        || defined(OSF1) || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 	  struct sigaction	act;
X- 
X- 	  act.sa_handler	= h;
X-@@ -846,7 +846,7 @@
X- #	  else
X- 	        (void) sigaction(SIGSEGV, &act, &old_segv_act);
X- #		if defined(IRIX5) && defined(_sigargs) /* Irix 5.x, not 6.x */ \
X--		   || defined(HPUX) || defined(HURD) || defined(NETBSD)
X-+		   || defined(HPUX) || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 		    /* Under Irix 5.x or HP/UX, we may get SIGBUS.	*/
X- 		    /* Pthreads doesn't exist under Irix 5.x, so we	*/
X- 		    /* don't have to worry in the threads case.		*/
X-@@ -2713,7 +2713,13 @@
X- #   include <errno.h>
X- #   if defined(FREEBSD)
X- #     define SIG_OK TRUE
X--#     define CODE_OK (code == BUS_PAGE_FAULT)
X-+#     if defined(POWERPC)
X-+#	define AIM	/* Pretend that we're AIM. */
X-+#	include <machine/trap.h>
X-+#       define CODE_OK (code == EXC_DSI)
X-+#     else
X-+#       define CODE_OK (code == BUS_PAGE_FAULT)
X-+#     endif
X- #   elif defined(OSF1)
X- #     define SIG_OK (sig == SIGSEGV)
X- #     define CODE_OK (code == 2 /* experimentally determined */)
abfa6072f2c9834f0488586bc29bf3c8
echo x - devel_boehm-gc-threaded.diff
sed 's/^X//' >devel_boehm-gc-threaded.diff << '4667d3e4f3c25a353f30946228b2e3d7'
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/Makefile devel/boehm-gc-threaded/Makefile
X--- /usr/ports/devel/boehm-gc-threaded/Makefile	2012-11-08 04:45:15.000000000 +0900
X+++ devel/boehm-gc-threaded/Makefile	2013-01-17 19:53:55.000000000 +0900
X@@ -1,73 +1,11 @@
X-# New ports collection makefile for:	boehm-gc-redirect
X-# Date created:		12/17/2009
X-# Whom:			stas
X-#
X+# Created by: stas
X # $FreeBSD: head/devel/boehm-gc-threaded/Makefile 300896 2012-07-14 13:54:48Z beat $
X-#
X 
X-PORTNAME=	boehm-gc
X-PORTVERSION=	7.1
X-PORTREVISION=	1
X-CATEGORIES=	devel
X-MASTER_SITES=	http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
X-PKGNAMESUFFIX=	-${GC_VARIANT}
X-DISTNAME=	gc-${PORTVERSION:S/.a/alpha/}
X+PORTREVISION=	0
X 
X-MAINTAINER=	ports@FreeBSD.org
X-COMMENT=	Garbage collection and memory leak detection for C and C++
X+MASTERDIR=	${.CURDIR}/../boehm-gc
X+DESCR=		${.CURDIR}/pkg-descr
X 
X-RUN_DEPENDS=	${PREFIX}/include/gc/gc.h:${PORTSDIR}/devel/boehm-gc
X-
X-GNU_CONFIGURE=	yes
X-USE_LDCONFIG=	yes
X-CONFIGURE_ARGS=	--enable-cplusplus --disable-static --enable-threads=posix \
X-		--enable-thread-local-alloc
X-CONFIGURE_ENV=	CFLAGSS="${CFLAGS} LIBS="${LIBS}
X-MAKE_JOBS_UNSAFE=	yes
X-INSTLIBS=	cord gc gccpp
X GC_VARIANT=	threaded
X-SOVER=	1
X-
X-OPTIONS_DEFINE=	PARALLEL_MARK DEBUG
X-PARALLEL_MARK_DESC=	Parallel-thread marking (faster for SMP)
X-
X-PLIST_FILES=	${INSTLIBS:S,^,lib/lib,g:S,$,-${GC_VARIANT}.so.${SOVER},g} \
X-		${INSTLIBS:S,^,lib/lib,g:S,$,-${GC_VARIANT}.so,g} \
X-		libdata/pkgconfig/bdw-gc-${GC_VARIANT}.pc
X-
X-.include <bsd.port.pre.mk>
X-
X-.if ${ARCH} == "ia64"
X-BROKEN=	Does not compile on ia64
X-.endif
X-
X-.if ${PORT_OPTIONS:MPARALLEL_MARK}
X-CONFIGURE_ARGS+=	--enable-parallel-mark
X-.endif
X-
X-.if ${PORT_OPTIONS:MDEBUG}
X-CONFIGURE_ARGS+=	--enable-gc-debug
X-PKGNAMESUFFIX:=	${PKGNAMESUFFIX}+fulldebug
X-.endif
X-
X-post-patch:
X-	${REINPLACE_CMD} -E -e 's,libgc\.la,libgc-${GC_VARIANT}.la,g' \
X-		-e 's,libgccpp\.la,libgccpp-${GC_VARIANT}.la,g' \
X-		-e 's,libcord\.la,libcord-${GC_VARIANT}.la,g' \
X-		${WRKSRC}/Makefile.in
X-	${REINPLACE_CMD} -e 's,-lgc,-lgc-${GC_VARIANT},' ${WRKSRC}/bdw-gc.pc.in
X-
X-do-install:
X-.for LIB in ${INSTLIBS}
X-	${INSTALL_DATA} ${WRKSRC}/.libs/lib${LIB}-${GC_VARIANT}.so.${SOVER} \
X-	    ${PREFIX}/lib/lib${LIB}-${GC_VARIANT}.so.${SOVER}
X-	@(cd ${PREFIX}/lib && ${LN} -s lib${LIB}-${GC_VARIANT}.so.${SOVER} \
X-	    lib${LIB}-${GC_VARIANT}.so)
X-.endfor
X-	${INSTALL_DATA} ${WRKSRC}/bdw-gc.pc \
X-		${PREFIX}/libdata/pkgconfig/bdw-gc-${GC_VARIANT}.pc
X-
X-test: build
X-	cd ${WRKSRC} && ${MAKE} check
X 
X-.include <bsd.port.post.mk>
X+.include "${MASTERDIR}/Makefile"
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/distinfo devel/boehm-gc-threaded/distinfo
X--- /usr/ports/devel/boehm-gc-threaded/distinfo	2012-11-08 04:45:14.000000000 +0900
X+++ devel/boehm-gc-threaded/distinfo	1970-01-01 09:00:00.000000000 +0900
X@@ -1,2 +0,0 @@
X-SHA256 (gc-7.1.tar.gz) = e3cef6028fe3efe7de3bcf4107c880eae50b3ee79841450d885467c09bcebf30
X-SIZE (gc-7.1.tar.gz) = 1077714
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/files/patch-configure devel/boehm-gc-threaded/files/patch-configure
X--- /usr/ports/devel/boehm-gc-threaded/files/patch-configure	2012-11-08 04:45:15.000000000 +0900
X+++ devel/boehm-gc-threaded/files/patch-configure	1970-01-01 09:00:00.000000000 +0900
X@@ -1,12 +0,0 @@
X---- configure.orig	2009-12-19 14:02:54.000000000 +0300
X-+++ configure	2009-12-19 14:04:13.000000000 +0300
X-@@ -6161,6 +6161,9 @@
X-  sparc-*-netbsd*)
X-     machdep="mach_dep.lo sparc_netbsd_mach_dep.lo"
X-     ;;
X-+ sparc64-*-freebsd*)
X-+    machdep="mach_dep.lo sparc_mach_dep.lo"
X-+    ;;
X-  sparc-sun-solaris2.3)
X-     machdep="mach_dep.lo sparc_mach_dep.lo"
X-     cat >>confdefs.h <<\_ACEOF
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/files/patch-dbg_mlc.c devel/boehm-gc-threaded/files/patch-dbg_mlc.c
X--- /usr/ports/devel/boehm-gc-threaded/files/patch-dbg_mlc.c	2012-11-08 04:45:14.000000000 +0900
X+++ devel/boehm-gc-threaded/files/patch-dbg_mlc.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,77 +0,0 @@
X---- dbg_mlc.c.orig	2009-10-20 00:34:39.000000000 +0400
X-+++ dbg_mlc.c	2009-10-20 00:41:22.000000000 +0400
X-@@ -456,10 +456,34 @@
X-     GC_register_displacement((word)sizeof(oh) + offset);
X- }
X- 
X-+#if defined(__FreeBSD__)
X-+#include <dlfcn.h>
X-+static void GC_caller_func_offset(ad, symp, offp)
X-+const GC_word ad;
X-+const char **symp;
X-+int *offp;
X-+{
X-+    Dl_info caller;
X-+    if (dladdr((const void *)ad, &caller) && caller.dli_sname != NULL) {
X-+      *symp = caller.dli_sname;
X-+      *offp = (const char *)ad - (const char *)caller.dli_saddr;
X-+    }
X-+}
X-+#else
X-+#define GC_caller_func(ad, symp, offp)
X-+#endif
X-+
X- void * GC_debug_malloc(size_t lb, GC_EXTRA_PARAMS)
X- {
X-     void * result = GC_malloc(lb + DEBUG_BYTES);
X--    
X-+
X-+#ifdef GC_ADD_CALLER
X-+    if (s == NULL) {
X-+      GC_caller_func_offset(ra, &s, &i);
X-+      if (s == NULL)
X-+        s = "unknown";
X-+    }
X-+#endif
X-     if (result == 0) {
X-         GC_err_printf("GC_debug_malloc(%lu) returning NIL (",
X-         	      (unsigned long) lb);
X-@@ -764,6 +788,13 @@
X-     size_t old_sz;
X-     hdr * hhdr;
X-     
X-+#ifdef GC_ADD_CALLER
X-+    if (s == NULL) {
X-+      GC_caller_func_offset(ra, &s, &i);
X-+      if (s == NULL)
X-+        s = "unknown";
X-+    }
X-+#endif
X-     if (p == 0) return(GC_debug_malloc(lb, OPT_RA s, i));
X-     if (base == 0) {
X-         GC_err_printf("Attempt to reallocate invalid pointer %p\n", p);
X-@@ -1041,17 +1072,21 @@
X- }
X- 
X- #ifdef GC_ADD_CALLER
X--# define RA GC_RETURN_ADDR,
X-+# ifdef GC_RETURN_ADDR_PARENT
X-+#  define RA GC_RETURN_ADDR_PARENT,
X-+# else
X-+#  define RA GC_RETURN_ADDR,
X-+# endif
X- #else
X- # define RA
X- #endif
X- 
X- void * GC_debug_malloc_replacement(size_t lb)
X- {
X--    return GC_debug_malloc(lb, RA "unknown", 0);
X-+    return GC_debug_malloc(lb, RA NULL, 0);
X- }
X- 
X- void * GC_debug_realloc_replacement(void *p, size_t lb)
X- {
X--    return GC_debug_realloc(p, lb, RA "unknown", 0);
X-+    return GC_debug_realloc(p, lb, RA NULL, 0);
X- }
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/files/patch-dyn_load.c devel/boehm-gc-threaded/files/patch-dyn_load.c
X--- /usr/ports/devel/boehm-gc-threaded/files/patch-dyn_load.c	2012-11-08 04:45:14.000000000 +0900
X+++ devel/boehm-gc-threaded/files/patch-dyn_load.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,15 +0,0 @@
X---- dyn_load.c.orig	Thu May  6 08:03:06 2004
X-+++ dyn_load.c	Sun Oct 31 01:53:01 2004
X-@@ -97,6 +97,12 @@
X- #      else
X- #        define ElfW(type) Elf64_##type
X- #      endif
X-+#    elif defined(__FreeBSD__)
X-+#      if __ELF_WORD_SIZE == 32
X-+#        define ElfW(type) Elf32_##type
X-+#      else
X-+#        define ElfW(type) Elf64_##type
X-+#      endif
X- #    else
X- #      if !defined(ELF_CLASS) || ELF_CLASS == ELFCLASS32
X- #        define ElfW(type) Elf32_##type
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/files/patch-include-gc.h devel/boehm-gc-threaded/files/patch-include-gc.h
X--- /usr/ports/devel/boehm-gc-threaded/files/patch-include-gc.h	2012-11-08 04:45:14.000000000 +0900
X+++ devel/boehm-gc-threaded/files/patch-include-gc.h	1970-01-01 09:00:00.000000000 +0900
X@@ -1,10 +0,0 @@
X---- include/gc.h.orig	Wed Jun  4 17:07:33 2003
X-+++ include/gc.h	Wed May 12 20:03:22 2004
X-@@ -487,6 +487,7 @@
X-     /* gcc knows how to retrieve return address, but we don't know */
X-     /* how to generate call stacks.				   */
X- #   define GC_RETURN_ADDR (GC_word)__builtin_return_address(0)
X-+#   define GC_RETURN_ADDR_PARENT (GC_word)__builtin_return_address(1)
X- # else
X-     /* Just pass 0 for gcc compatibility. */
X- #   define GC_RETURN_ADDR 0
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/files/patch-include-private-gcconfig.h devel/boehm-gc-threaded/files/patch-include-private-gcconfig.h
X--- /usr/ports/devel/boehm-gc-threaded/files/patch-include-private-gcconfig.h	2012-11-08 04:45:14.000000000 +0900
X+++ devel/boehm-gc-threaded/files/patch-include-private-gcconfig.h	1970-01-01 09:00:00.000000000 +0900
X@@ -1,63 +0,0 @@
X---- include/private/gcconfig.h.orig	2008-02-20 22:23:00.000000000 +0300
X-+++ include/private/gcconfig.h	2009-10-20 01:08:38.000000000 +0400
X-@@ -64,7 +64,7 @@
X- /* Determine the machine type: */
X- # if defined(__arm__) || defined(__thumb__)
X- #    define ARM32
X--#    if !defined(LINUX) && !defined(NETBSD)
X-+#    if !defined(LINUX) && !defined(NETBSD) && !defined(FREEBSD)
X- #      define NOSYS
X- #      define mach_type_known
X- #    endif
X-@@ -334,10 +334,26 @@
X- #    define X86_64
X- #    define mach_type_known
X- # endif
X-+# if defined(__FreeBSD__) && defined(__amd64__)
X-+#    define X86_64
X-+#    define mach_type_known
X-+# endif
X-+# if defined(__FreeBSD__) && defined(__ia64__)
X-+#    define IA64
X-+#    define mach_type_known
X-+# endif
X- # if defined(FREEBSD) && defined(__sparc__)
X- #    define SPARC
X- #    define mach_type_known
X- # endif
X-+# if defined(FREEBSD) && defined(__powerpc__)
X-+#    define POWERPC
X-+#    define mach_type_known
X-+# endif
X-+# if defined(FREEBSD) && defined(__arm__)
X-+#    define ARM32
X-+#    define mach_type_known
X-+# endif
X- # if defined(bsdi) && (defined(i386) || defined(__i386__))
X- #    define I386
X- #    define BSDI
X-@@ -1771,6 +1787,16 @@
X- #     define OS_TYPE "MSWINCE"
X- #     define DATAEND /* not needed */
X- #   endif
X-+#   ifdef FREEBSD
X-+#   define ALIGNMENT 4
X-+#       define OS_TYPE "FREEBSD"
X-+#       ifdef __ELF__
X-+#           define DYNAMIC_LOADING
X-+#       endif
X-+#	define HEURISTIC2
X-+	extern char etext[];
X-+#	define SEARCH_FOR_DATA_START
X-+#   endif
X- #   ifdef NOSYS
X-       /* __data_start is usually defined in the target linker script.  */
X-       extern int __data_start[];
X-@@ -1800,6 +1826,7 @@
X- #     define OS_TYPE "MSWINCE"
X- #     define DATAEND /* not needed */
X- #   endif
X-+		   
X- #   ifdef LINUX
X- #     define OS_TYPE "LINUX"
X- #     define LINUX_STACKBOTTOM
Xdiff -urN /usr/ports/devel/boehm-gc-threaded/files/patch-os_dep.c devel/boehm-gc-threaded/files/patch-os_dep.c
X--- /usr/ports/devel/boehm-gc-threaded/files/patch-os_dep.c	2012-11-08 04:45:14.000000000 +0900
X+++ devel/boehm-gc-threaded/files/patch-os_dep.c	1970-01-01 09:00:00.000000000 +0900
X@@ -1,44 +0,0 @@
X---- os_dep.c.orig	2008-02-29 11:01:28.000000000 -0800
X-+++ os_dep.c	2010-04-01 00:50:34.000000000 -0700
X-@@ -816,7 +816,7 @@
X-     || defined(HURD) || defined(NETBSD)
X- 	static struct sigaction old_segv_act;
X- #	if defined(_sigargs) /* !Irix6.x */ || defined(HPUX) \
X--	|| defined(HURD) || defined(NETBSD)
X-+	|| defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 	    static struct sigaction old_bus_act;
X- #	endif
X- #   else
X-@@ -826,7 +826,7 @@
X-     void GC_set_and_save_fault_handler(handler h)
X-     {
X- #	if defined(SUNOS5SIGS) || defined(IRIX5)  \
X--        || defined(OSF1) || defined(HURD) || defined(NETBSD)
X-+        || defined(OSF1) || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 	  struct sigaction	act;
X- 
X- 	  act.sa_handler	= h;
X-@@ -846,7 +846,7 @@
X- #	  else
X- 	        (void) sigaction(SIGSEGV, &act, &old_segv_act);
X- #		if defined(IRIX5) && defined(_sigargs) /* Irix 5.x, not 6.x */ \
X--		   || defined(HPUX) || defined(HURD) || defined(NETBSD)
X-+		   || defined(HPUX) || defined(HURD) || defined(NETBSD) || defined(FREEBSD)
X- 		    /* Under Irix 5.x or HP/UX, we may get SIGBUS.	*/
X- 		    /* Pthreads doesn't exist under Irix 5.x, so we	*/
X- 		    /* don't have to worry in the threads case.		*/
X-@@ -2713,7 +2713,13 @@
X- #   include <errno.h>
X- #   if defined(FREEBSD)
X- #     define SIG_OK TRUE
X--#     define CODE_OK (code == BUS_PAGE_FAULT)
X-+#     if defined(POWERPC)
X-+#	define AIM	/* Pretend that we're AIM. */
X-+#	include <machine/trap.h>
X-+#       define CODE_OK (code == EXC_DSI)
X-+#     else
X-+#       define CODE_OK (code == BUS_PAGE_FAULT)
X-+#     endif
X- #   elif defined(OSF1)
X- #     define SIG_OK (sig == SIGSEGV)
X- #     define CODE_OK (code == 2 /* experimentally determined */)
4667d3e4f3c25a353f30946228b2e3d7
exit

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130126054824.82b8c584037321604403887d>