summaryrefslogtreecommitdiff
path: root/devel/boehm-gc
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2008-05-21 13:47:25 +0000
committerwiz <wiz@pkgsrc.org>2008-05-21 13:47:25 +0000
commitb59b927232b85afcac1ec019ccd7acf212eaa84e (patch)
tree8bf8c5bc00093015363e9c91c8430df646cef32e /devel/boehm-gc
parent1c33796849977cd7325ca04ca6248fa86869c99f (diff)
downloadpkgsrc-b59b927232b85afcac1ec019ccd7acf212eaa84e.tar.gz
Update to 7.1. Extract from ChangeLog:
* doc/gcinterface.html: Improve C++ interface documentation. * allchblk.c (GC_allochblk): Check for overflow during size rounding. * malloc.c: (free replacement) Fix caller address space check. * finalize.c (GC_grow_table): Dereference table in null-check. * allchblk.c (add_to_fl): disable assertions with USE_MUNMAP, and refine assertions to handle huge unmergable blocks. * allchblk.c (GC_enough_large_bytes_left): No longer take parameters; return free list index bound. (GC_merge_unmapped): Don't access nexthdr until after null test. (Fixes bug in 1/29/08 check-in.) (GC_allochblk): Calculate when splitting is allowable only once here, not when considering each block. (GC_allchblk_nth): Accept new may_split parameter. Avoid some redundant tests for exact size matches. * alloc.c (GC_should_collect): Cache min_bytes_allocd. (GC_maybe_gc): Make locking assertion testable. * mark_rts.c: Fix indentation. * pthread_stop_world.c: Replace old GC_err_printf1 reference. * misc.c (GC_init_inner): Assert !GC_need_to_lock only when defined. (GC_call_with_stack_base): Add GC_API. * os_dep.c (GC_get_stack_base): Add GC_API. * win32_threads.c: (GC_register_my_thread, GC_unregister_my_thread): Add GC_API. * include/gc.h: Add GC_API annotations. * include/private/gc_locks.h: Define UNCOND_LOCK etc. also for PCR. * include/private/gc_priv.h, mark_rts.c, typd_mlc.c: Add GC_push_typed_structures() to push GC_ext_descriptors. * allchblk.c (GC_merge_unmapped, GC_freehblk): Refuse to create blocks large enough that their size, when interpreted as a signed value, would be negative. * include/private/gc_priv.h: Update MAX_ROOT_SETS and LOG_PHT_ENTRIES to handle larger heaps. * allchblk.c, alloc.c, include/private/gc_priv.h: Track GC_bytes_dropped and use in GC triggering decisions. * alloc.c (min_bytes_allocd): Weight atomic blocks less. * alloc.c (GC_add_to_heap): Call GC_install_header(p) AFTER adjusting p. * alloc.c: Define GC_version instead of in version.h. * version.h: Remove. * include/gc_version.h: Move most of version.h here. * include/gc.h, doc/README.macros: Add GC_NO_THREAD_REDIRECTS, GC_NO_THREAD_DECLS, don't test explicitly for GC_SOLARIS_THREADS. * alloc.c: Deal correctly with address wrapping for GC_greatest_plausible_heap_addr and GC_least_plausible_heap_addr. * finalize.c, include/gc.h (GC_register_disappearing_link, GC_register_finalizer_inner): Improve out-of-memory handling. * dyn_load.c (GC_dyld_image_add): Remove ifdef clause and use the macro GC_GETSECTBYNAME instead. * include/private/gc_priv.h: Define GC_GETSECTBYNAME according to the architecture (Darwin). * thread_local_alloc.c (GC_malloc_atomic, GC_gcj_malloc): Pass granules, not bytes, to GC_FAST_MALLOC_GRANS. * include/gc.h: Never include gc_local_alloc.h. * malloc.c: Update GC_large_allocd_bytes on explicit deallocation. * allchblk.c: Sanity check GC_max_large_allocd_bytes. * include/extra/gc.h, include/extra/gc_cpp.h: New. * include/include.am: Install gc.h and gc_cpp.h in $(prefix)/include again. * dbg_mlc.c: Use random() on all glibc systems. * mach_dep.c (GC_with_callee_saves_pushed): Don't use getcontext() on HURD. Add comment. * pthread_stop_world.c (GC_suspend_handler, GC_stop_init): Accomodate systems without SA_SIGINFO. * alloc.c, backgraph.c, headers.c, include/private/gc_priv.h: Maintain GC_our_memory and GC_n_memory. * dbg_mlc.c (GC_print_smashed_obj): Improve message. (GC_print_all_smashed_proc): Pass client object address instead of base. * dyn_load.c (sort_heap_sects): New. (GC_register_map_entries): Register sections that are contiguous and merged with our heap. * malloc.c, os_dep.c (GC_text_mapping): Check for just base name of libraries. * malloc.c (calloc): Check for special callers even with USE_PROC_FOR_LIBRARIES. Move assertion. Add rudimentary malloc/free tracing. * misc.c: No longer call GC_init_lib_bounds explicitly. * thread_local_alloc.c (GC_malloc, GC_malloc_atomic): Always initialize on demand. * alloc.c (GC_stopped_mark): Call GC_add_current_malloc_heap() while world is still running. * os_dep.c (GC_is_heap_base): Don't call GC_add_current_malloc_heap() with world stopped. * include/gc.h (GC_INIT for cygwin): Always call GC_add_roots. * misc.c (GC_init/GC_init_inner): Perform all work in GC_init_inner.
Diffstat (limited to 'devel/boehm-gc')
-rw-r--r--devel/boehm-gc/Makefile12
-rw-r--r--devel/boehm-gc/PLIST5
-rw-r--r--devel/boehm-gc/distinfo11
-rw-r--r--devel/boehm-gc/patches/patch-ab2
-rw-r--r--devel/boehm-gc/patches/patch-ac62
5 files changed, 13 insertions, 79 deletions
diff --git a/devel/boehm-gc/Makefile b/devel/boehm-gc/Makefile
index 720c1005f6b..99e23aa2083 100644
--- a/devel/boehm-gc/Makefile
+++ b/devel/boehm-gc/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.60 2008/03/03 16:27:41 tnn Exp $
+# $NetBSD: Makefile,v 1.61 2008/05/21 13:47:25 wiz Exp $
-DISTNAME= gc-7.0
+DISTNAME= gc-7.1
PKGNAME= ${DISTNAME:S/gc/boehm-gc/}
-PKGREVISION= 1
CATEGORIES= devel
MASTER_SITES= http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/
@@ -38,13 +37,6 @@ EXTRACT_ELEMENTS= -u
CFLAGS+= -D__MIPSEL__
.endif
-post-extract:
- ${MV} ${WRKSRC}/doc/gc.man ${WRKSRC}/doc/gc.man.in
-
-pre-build:
- ${SED} -e "s|@PREFIX@|${PREFIX}|g" \
- ${WRKSRC}/doc/gc.man.in > ${WRKSRC}/doc/gc.man
-
post-install:
${INSTALL_MAN} ${WRKSRC}/doc/gc.man ${DESTDIR}${PREFIX}/${PKGMANDIR}/man3/gc.3
diff --git a/devel/boehm-gc/PLIST b/devel/boehm-gc/PLIST
index 130e36bec4f..f2b7864868a 100644
--- a/devel/boehm-gc/PLIST
+++ b/devel/boehm-gc/PLIST
@@ -1,4 +1,5 @@
-@comment $NetBSD: PLIST,v 1.9 2007/07/07 15:21:07 wiz Exp $
+@comment $NetBSD: PLIST,v 1.10 2008/05/21 13:47:25 wiz Exp $
+include/gc.h
include/gc/gc.h
include/gc/gc_allocator.h
include/gc/gc_amiga_redirects.h
@@ -11,6 +12,7 @@ include/gc/gc_mark.h
include/gc/gc_pthread_redirects.h
include/gc/gc_tiny_fl.h
include/gc/gc_typed.h
+include/gc/gc_version.h
include/gc/leak_detector.h
include/gc/new_gc_alloc.h
include/gc/private/gc_hdrs.h
@@ -18,6 +20,7 @@ include/gc/private/gc_locks.h
include/gc/private/gc_priv.h
include/gc/private/gcconfig.h
include/gc/weakpointer.h
+include/gc_cpp.h
lib/libcord.la
lib/libgc.la
lib/libgccpp.la
diff --git a/devel/boehm-gc/distinfo b/devel/boehm-gc/distinfo
index 133a55cd7fd..b76dc6db34b 100644
--- a/devel/boehm-gc/distinfo
+++ b/devel/boehm-gc/distinfo
@@ -1,10 +1,9 @@
-$NetBSD: distinfo,v 1.34 2008/03/03 16:27:41 tnn Exp $
+$NetBSD: distinfo,v 1.35 2008/05/21 13:47:25 wiz Exp $
-SHA1 (gc-7.0.tar.gz) = 657d84b702a572f8a510d2c28578a6dbaad3fed2
-RMD160 (gc-7.0.tar.gz) = 4912e2590dd8212bebeeb1e32506762ca31d0088
-Size (gc-7.0.tar.gz) = 1072682 bytes
+SHA1 (gc-7.1.tar.gz) = e84cba5d18f4ea5ed4e5fd3f1dc6a46bc190ff6f
+RMD160 (gc-7.1.tar.gz) = 9338c1128686395739e3acd9052a651d1dffffb2
+Size (gc-7.1.tar.gz) = 1077714 bytes
SHA1 (patch-aa) = 87a5bd5e83b0201d80a1e4e4ce6745c11b2e7cfe
-SHA1 (patch-ab) = 99795ee73356e90be3fd721a89a6a38efcf209bf
-SHA1 (patch-ac) = 64c0f042a1ed7488158d49c77bab0330537d9e96
+SHA1 (patch-ab) = 9b5133c7aa84e6824616e29613716a2fedd1d334
SHA1 (patch-ad) = 893b5146db0d9f82ec95acd7e217f3d910e33ea0
SHA1 (patch-af) = 80f1b9b136f808db1b227b70801ffa378abd07c7
diff --git a/devel/boehm-gc/patches/patch-ab b/devel/boehm-gc/patches/patch-ab
index ce27257a1c4..97b09c00d3a 100644
--- a/devel/boehm-gc/patches/patch-ab
+++ b/devel/boehm-gc/patches/patch-ab
@@ -1,3 +1,5 @@
+$NetBSD: patch-ab,v 1.19 2008/05/21 13:47:25 wiz Exp $
+
--- configure.orig 2007-06-30 17:40:25.000000000 +0200
+++ configure 2008-03-03 11:27:56.000000000 +0100
@@ -6143,6 +6143,9 @@
diff --git a/devel/boehm-gc/patches/patch-ac b/devel/boehm-gc/patches/patch-ac
deleted file mode 100644
index bb49f786a37..00000000000
--- a/devel/boehm-gc/patches/patch-ac
+++ /dev/null
@@ -1,62 +0,0 @@
-$NetBSD: patch-ac,v 1.11 2004/07/09 00:18:54 recht Exp $
-
---- doc/gc.man.in.orig 2004-03-23 01:36:15.000000000 +0100
-+++ doc/gc.man.in 2004-04-04 14:13:02.000000000 +0200
-@@ -11,7 +11,7 @@
- void * GC_realloc(void *ptr, size_t size);
- .br
- .sp
--cc ... gc.a
-+cc ... -lgc
- .LP
- .SH DESCRIPTION
- .I GC_malloc
-@@ -82,6 +82,48 @@
- .LP
- Other facilities not discussed here include limited facilities to support incremental collection on machines without appropriate VM support, provisions for providing more explicit object layout information to the garbage collector, more direct support for ``weak'' pointers, support for ``abortable'' garbage collections during idle time, etc.
- .LP
-+.SH "PORT INFORMATION"
-+.LP
-+In this (BSD package) installation,
-+.I gc.h
-+and
-+.I gc_cpp.h
-+will be found in
-+.I @PREFIX@/include,
-+and the libraries in
-+.I @PREFIX@/lib.
-+.LP
-+These libraries have been compiled as drop-in replacements
-+for malloc and free (which is to say, all malloc
-+calls will allocate garbage-collectable data).
-+There is no need to include "gc.h" in your C files unless you want
-+access to the debugging (and other) functions defined there,
-+or unless you want to explicitly use
-+.I GC_malloc_uncollectable
-+for some allocations.
-+Just link against them whenever you want either garbage
-+collection or leak detection.
-+.LP
-+The C++ header file, "gc_cpp.h",
-+.I is
-+necessary for C++ programs, to obtain the appropriate
-+definitions of the
-+.I new
-+and
-+.I delete
-+operators.
-+The comments in both of these header files presently
-+provide far better documentation
-+for the package than this man page;
-+look there for more information.
-+.LP
-+Both libraries are compiled without (explicit) support
-+for the experimental
-+.I gc
-+extension of
-+.I g++.
-+This may or may not make a difference.
-+.LP
- .SH "SEE ALSO"
- The README and gc.h files in the distribution. More detailed definitions of the functions exported by the collector are given there. (The above list is not complete.)
- .LP