summaryrefslogtreecommitdiff
path: root/devel/boehm-gc
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2018-01-10 09:16:20 +0000
committerwiz <wiz@pkgsrc.org>2018-01-10 09:16:20 +0000
commit5a568a330117c832d968f1a0c2334d147b0c74fe (patch)
tree77912446cc1288374df01a69aac2719f2211f7df /devel/boehm-gc
parentce6672ddf8f0b429430578e386bad750848d0711 (diff)
downloadpkgsrc-5a568a330117c832d968f1a0c2334d147b0c74fe.tar.gz
boehm-gc: update to 7.6.2.
== [7.6.2] 2017-12-23 == * Add assertion that no hb_n_marks underflow occurs * Add minimal testing of GC_MALLOC_[ATOMIC_]WORDS and GC_CONS (gctest) * Add minimal testing of GC_set_bit (gctest) * Add more cases to huge_test to cover sizes close to word-type maximum * Add testing of new[]/delete[] (test_cpp) * Adjust AO_HAVE_x check to match AO_fetch_and_add primitive variant used * Adjust code indentation of calloc_explicitly_typed * Align local_mark_stack in help_marker explicitly * Allow custom TRACE_ENTRIES value * Allow gctest and thread_leak_test with zero NTHREADS * Avoid data race in finalized_count (gctest) * Code refactoring of divide-by-HBLKSIZE occurrences * Code refactoring of huge_test * Code refactoring of tests/subthread_create regarding AO add primitive * Compile thread_local_alloc only if multi-threaded build (Makefile.am) * Delete preprocessor output on make clean (Makefile.direct) * Disable implicit multi-threaded mode for Win32 to avoid LOCK crash * Do not disable parallel mark for WRAP_MARK_SOME * Do not enable mprotect-based incremental mode if unmapping is on (gctest) * Do not install documentation if configure --disable-docs (new option) * Do not use tkill (Android) * Document base and size of objects allocated by finalized_malloc * Document configure 'syntax error' issue in README * Eliminate 'address of local variable returned' static analyzer warning * Eliminate 'array vs singleton' code defect in typed_test (gctest) * Eliminate 'assigned value never used' CSA warning in min_bytes_allocd * Eliminate 'boolean result used in bitwise op' cppcheck false warning * Eliminate 'C-style pointer casting' cppcheck style warnings in test * Eliminate 'checking if unsigned variable is <0' cppcheck style warning * Eliminate 'class member var with name also defined in parent' warning * Eliminate 'comparison is always false' static analyzer warning in finalize * Eliminate 'Condition 0==datastart always false' cppcheck warning (dyn_load) * Eliminate 'condition is always true' cppcheck style warning * Eliminate 'constructor with 1 argument is not explicit' cppcheck warning * Eliminate 'CORD_*printf is never used' cppcheck style warnings (cordtest) * Eliminate 'dereference of null' CSA false warning in array_mark_proc * Eliminate 'function result not used' code defect in GC_mark_local * Eliminate 'GC_collecting is set but never used' code defect (Win32) * Eliminate 'GC_record_fault is never used' cppcheck style warning * Eliminate 'integer shift by a negative amount' code defect in finalize * Eliminate 'label not used' cppcheck false warnings in GC_mark_X * Eliminate 'memory leak' code defect for scratch-allocated memory * Eliminate 'memory leak' code defect in remove_specific * Eliminate 'non-null arg compared to null' warning in toggleref_add (GCC) * Eliminate 'non-reentrant function strtok called' cppcheck warning (POSIX) * Eliminate 'possible integer underflow' code defect (cord-de) * Eliminate 'potential overflow' static analyzer warning in test * Eliminate 'printf format specifies type void*' GCC pedantic warnings * Eliminate 'scope of variable can be reduced' cppcheck warnings * Eliminate 'suspicious pointer subtraction' cppcheck warning (gc_cpp) * Eliminate 'this statement may fall through' GCC warnings * Eliminate 'unnecessary comparison of static strings' cppcheck warning * Eliminate 'unsafe vsprintf is deprecated' compiler warning * Eliminate 'unused formal parameter' compiler warnings in C++ code (MS VC) * Eliminate 'unused variable' compiler warning in remove_all_threads_but_me * Eliminate 'use of vulnerable sprintf' code defect in de_win test (cord) * Eliminate 'value exceeds maximum object size' GCC warning in huge_test * Eliminate 'value of CLOCK_TYPE unknown' cppcheck info message * Eliminate 'value of DATASTART2 unknown' cppcheck info messages * Eliminate 'value of GC_PTHREAD_EXIT_ATTRIBUTE unknown' cppcheck messages * Eliminate 'value of GC_RETURN_ADDR_PARENT unknown' cppcheck info messages * Eliminate 'value of NEED_FIXUP_POINTER unknown' cppcheck info messages * Eliminate 'write to memory that was const-qualified' code analyzer warning * Eliminate all 'scope of variable can be reduced' cppcheck style warnings * Eliminate CSA warning about incorrect cast applied to HBLK_OBJS * Eliminate CSA warning about narrowing cast in CleanUp of test_cpp * Eliminate CSA warning of non-virtual destructor in test_cpp base class * Eliminate CSA warning of staticroot that can be a local variable (tests) * Eliminate CSA warning of unmodified non-const static var (disclaim_test) * Eliminate redundant local variable in register_finalizer * Eliminate TSan (Thread Sanitizer) warnings in gctest * Eliminate UBSan warning of overflow during descr subtraction in mark_from * Eliminate unreachable PROC/DEFAULT_VDB GC_printf calls in gctest main() * Eliminate unsigned fl_builder_count underflow in mark_thread * Enable GC_is_tmp_root for all platforms * Execute more single-threaded GC tests by CMake * Expand tabs to spaces in de_win.rc (tests) * Export GC_dump_finalization/regions() * Export GC_is_tmp_root() and GC_print_trace[_inner]() * Export GC_print_free_list() * Fix '32-bit value shift followed by expansion to 64-bit' code defect * Fix 'GC_written_pages never read' code defect (GWW_VDB) * Fix 'label cannot be reached' static analyzer warning in disclaim_test * Fix 'size of tv is unknown' error in brief_async_signal_safe_sleep (musl) * Fix 'syntax error' reported by cppcheck for mach_dep * Fix 'unknown type name GC_INNER' compilation error (FreeBSD) * Fix 'variable assigned a value that is never used' cppcheck style warnings * Fix 'void pointers in calculations: behavior undefined' cppcheck warning * Fix assertion violation about disabled cancel in try_to_collect_inner * Fix atomic_ops build in Makefile.direct for Solaris * Fix Clang static analyzer warning about not found gc_priv.h in extra files * Fix compilation error in get_main_stack_base (Emscripten) * Fix compilation for winpthreads if HANDLE_FORK * Fix compilation if configured with --enable-werror on OS X * Fix cord/de build in Makefile.direct (Linux) * Fix data race in a list referenced by A.aa (gctest) * Fix data race in collectable_count (gctest) * Fix data race in do_local_mark when comparing active_count to helper_count * Fix data race in GC_suspend/resume_thread * Fix data race in last_stop_count access (suspend_handler_inner) * Fix data race in make_descriptor when setting explicit_typing_initialized * Fix data race in mark_thread when updating mark_no * Fix data race when getting object size in explicitly-typed allocators * Fix deadlock in GC_suspend_thread * Fix gctest failure for Darwin if CPPCHECK is defined * Fix lack of barriers to synchronize memory for suspend_handler * Fix marking of disclaim-reachable objects in the incremental mode * Fix message of VDB implementation used if MPROTECT_VDB+GWW_VDB (gctest) * Fix missing started_thread_while_stopped call from mark_some if GCC/Clang * Fix null dereference in GC_stack_range_for if not DARWIN_DONT_PARSE_STACK * Fix page calculation in checksums * Fix parallel build in Makefile.direct * Fix test_cpp and c++ parallel build in Makefile.direct * Fix typo in comment of GC_mark_some * Fix typos in cdescr.html and README.sgi * Make GC_INIT optional for clients even if thread-local allocations enabled * Match uclinux pattern in configure * Move conditional GC_need_to_lock setting to gc_locks.h (refactoring) * Move README.QUICK from DOC_FILES to OTHER_FILES in Makefile.direct * New API function (GC_is_init_called) to check if BDWGC is initialized * New target (check-cpp) in Makefile.direct * Prevent abort in register_data_segments for Symbian and Emscripten * Prevent multiple 'Caught ACCESS_VIOLATION in marker' per collection * Print realloc_count value in gctest * Put invariant name in quotes to make mark_state comments clearer * Refine configure messages when checking for compiler option support * Remove extraneous semicolons after AC_MSG_WARN (configure) * Remove page_was_dirty and remove_protection duplicate definitions * Remove unnecessary type casts of printf arguments to unsigned long * Remove unused ALIGN_DOUBLE, USE_GENERIC_PUSH_REGS macros (TILE-Gx/Pro) * Rename 'test' to 'check' target in Makefile.direct * Replace deprecated rewind to fseek in cordxtra * Report gcc/clang pedantic warnings (configure) * Skip thread suspend/resume API testing for Tru64 (OSF1) * Support AddressSanitizer (Clang/GCC) and MemorySanitizer (Clang) * Support GC_init (and get_stack_base) from non-main thread on FreeBSD/NetBSD * Suppress 'tainted string passed to vulnerable operation' false defects * Suppress 'taking address of label non-standard' GCC/Clang pedantic warning * Test GC initialization from non-main thread on FreeBSD and NetBSD * Test GCJ object creation with length-based descriptor (gctest) * Update comment in finalized_disclaim to match FINALIZER_CLOSURE_FLAG * Update README regarding make cords with Makefile.direct * Update README to use autogen.sh on build from the source repository * Update shared libraries version info to differentiate against v7.4 * Use mprotect instead of mmap in GC_unmap() on Cygwin * Use same style of include gc.h in documentation * Workaround '!GC_page_size is always false' cppcheck style warning * Workaround '#error' cppcheck error messages * Workaround '32-bit value shift by >31 bits is undefined' cppcheck warnings * Workaround 'array compared to 0', 'untrusted loop bound' false defects * Workaround 'bad address arithmetic' static analysis tool false positive * Workaround 'checking if unsigned value is negative' cppcheck warning * Workaround 'checking unsigned value is negative' code defect in mark_from * Workaround 'comparison of identical expressions' false code defects * Workaround 'Condition 0!=GETENV() is always false' cppcheck style warnings * Workaround 'condition is always false' cppcheck warning in get_next_stack * Workaround 'condition is always true' cppcheck style warnings in GC_init * Workaround 'function is never used' cppcheck style warnings * Workaround 'insecure libc pseudo-random number generator used' code defect * Workaround 'int shift by negative amount' false code defect in finalize * Workaround 'local variable size too big' static analyzer warning * Workaround 'memory leak: result' cppcheck false error (POSIX) * Workaround 'null pointer dereference' false positive in push_next_marked * Workaround 'obsolescent bcopy, bzero called' cppcheck warnings (POSIX) * Workaround 'obsolescent usleep called' cppcheck warning (POSIX) * Workaround 'obsolete function alloca() called' cppcheck warnings * Workaround 'passing untyped NULL to variadic function' cppcheck warning * Workaround 'pointer used before comparison to null' code defect (pthread) * Workaround 'possible null pointer dereference' cppcheck warnings * Workaround 'potential multiplication overflow' code defect in de_win (cord) * Workaround 'redundant assignment of *result to itself' cppcheck warning * Workaround 'resource leak' false positives in alloc_MS, bl/envfile_init * Workaround 'same expression on both sides of ==' cppcheck style warning * Workaround 'same expression on both sides of OR' cppcheck style warning * Workaround 'struct member is never used' cppcheck style warnings * Workaround 'tainted int used as loop bound' static analysis tool warning * Workaround 'Uninitialized variable' cppcheck errors * Workaround 'unused variable' cppcheck style warnings * Workaround 'va_list used before va_start' cppcheck error in cord * Workaround 'value of macro unknown' cppcheck info messages * Workaround 'value of REDIRECT_MALLOC/FREE unknown' cppcheck info messages * Workaround 'value of SIGBUS unknown' cppcheck info messages * Workaround 'value of WINAPI unknown' cppcheck info messages * Workaround 'variable hides enumerator with same name' cppcheck warnings * Workaround 'variable reassigned before old value used' cppcheck warnings * Workaround 'waiting while holding lock' code defect in stop_world (Unix) * Workaround false 'uninitialized var use' code defect (initsecondarythread) Also, includes 7.4.6 changes
Diffstat (limited to 'devel/boehm-gc')
-rw-r--r--devel/boehm-gc/Makefile5
-rw-r--r--devel/boehm-gc/distinfo14
-rw-r--r--devel/boehm-gc/patches/patch-dyn__load.c14
-rw-r--r--devel/boehm-gc/patches/patch-include_private_gc__priv.h16
-rw-r--r--devel/boehm-gc/patches/patch-include_private_gcconfig.h19
5 files changed, 15 insertions, 53 deletions
diff --git a/devel/boehm-gc/Makefile b/devel/boehm-gc/Makefile
index 549c0d400f1..77bdfec641b 100644
--- a/devel/boehm-gc/Makefile
+++ b/devel/boehm-gc/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.85 2016/12/03 03:09:26 marino Exp $
+# $NetBSD: Makefile,v 1.86 2018/01/10 09:16:20 wiz Exp $
-DISTNAME= gc-7.6.0
+DISTNAME= gc-7.6.2
PKGNAME= ${DISTNAME:S/gc/boehm-gc/}
-PKGREVISION= 2
CATEGORIES= devel
MASTER_SITES= http://www.hboehm.info/gc/gc_source/
diff --git a/devel/boehm-gc/distinfo b/devel/boehm-gc/distinfo
index b76c8b178be..8d8f7ca13d0 100644
--- a/devel/boehm-gc/distinfo
+++ b/devel/boehm-gc/distinfo
@@ -1,11 +1,9 @@
-$NetBSD: distinfo,v 1.57 2016/12/03 03:09:26 marino Exp $
+$NetBSD: distinfo,v 1.58 2018/01/10 09:16:20 wiz Exp $
-SHA1 (gc-7.6.0.tar.gz) = bae6b3754ff8d3845b5171346bf924e13be6c693
-RMD160 (gc-7.6.0.tar.gz) = f69b900fed7ae844d355cfccad90cd25214da98e
-SHA512 (gc-7.6.0.tar.gz) = 511e8c01287b1ee9dbec87f0573377de77038b7af053a3f33afed9b3ffa30e2402d6a9bb0ca4f4b81cd808209b47b5718d498cff3de6632a057fe03fad51fc43
-Size (gc-7.6.0.tar.gz) = 1111751 bytes
+SHA1 (gc-7.6.2.tar.gz) = 55fc1fe8e0d81acdf6cc29455b151ab74c77c4f2
+RMD160 (gc-7.6.2.tar.gz) = 4058142315c17c7ab758e5425ff89bab7ef25bde
+SHA512 (gc-7.6.2.tar.gz) = 7b54812903929b0d5d1d696beac54629a7667997b41ef45299373bc18b2153d5755286b25e11cc90ffc572239e52a02900927bc60b0ad3593162b8c8e259fd50
+Size (gc-7.6.2.tar.gz) = 1119725 bytes
SHA1 (patch-configure) = f3bb73ee9535fa2d313bab5d4afa961457c8762c
-SHA1 (patch-dyn__load.c) = 5869f863853a80bb290c8224c4f861a92553e278
-SHA1 (patch-include_private_gc__priv.h) = d9fc570f2ef9d57afe92e63db1f9c5f48b1c0514
-SHA1 (patch-include_private_gcconfig.h) = 23621c34483899df0b3d3dd9f982a1d601c716a0
+SHA1 (patch-dyn__load.c) = abc0d7010a57027c50acc8a8bdf2c85271e84c61
SHA1 (patch-tools_threadlibs.c) = 5dd3e8bdbba8806cafcbaa5aa5c0a0778243c8ab
diff --git a/devel/boehm-gc/patches/patch-dyn__load.c b/devel/boehm-gc/patches/patch-dyn__load.c
index 9611fa92eb7..aa1c8100e87 100644
--- a/devel/boehm-gc/patches/patch-dyn__load.c
+++ b/devel/boehm-gc/patches/patch-dyn__load.c
@@ -1,15 +1,15 @@
-$NetBSD: patch-dyn__load.c,v 1.3 2016/12/03 03:09:26 marino Exp $
+$NetBSD: patch-dyn__load.c,v 1.4 2018/01/10 09:16:20 wiz Exp $
Support DragonFly.
---- dyn_load.c.orig 2016-08-02 19:36:14 UTC
+--- dyn_load.c.orig 2017-12-23 08:46:29.000000000 +0000
+++ dyn_load.c
-@@ -435,7 +435,7 @@ GC_INNER GC_bool GC_register_main_static
- # pragma weak dl_iterate_phdr
- #endif
+@@ -426,7 +426,7 @@ GC_INNER GC_bool GC_register_main_static
+ # endif
+ #endif /* __GLIBC__ >= 2 || PLATFORM_ANDROID */
-#if (defined(FREEBSD) && __FreeBSD__ >= 7)
+#if (defined(FREEBSD) && __FreeBSD__ >= 7) || defined __DragonFly__
/* On the FreeBSD system, any target system at major version 7 shall */
- /* have dl_iterate_phdr; therefore, we need not make it weak as above. */
- # define HAVE_DL_ITERATE_PHDR
+ /* have dl_iterate_phdr; therefore, we need not make it weak as below. */
+ # ifndef HAVE_DL_ITERATE_PHDR
diff --git a/devel/boehm-gc/patches/patch-include_private_gc__priv.h b/devel/boehm-gc/patches/patch-include_private_gc__priv.h
deleted file mode 100644
index 603d4349b73..00000000000
--- a/devel/boehm-gc/patches/patch-include_private_gc__priv.h
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-include_private_gc__priv.h,v 1.1 2016/09/21 17:59:11 maya Exp $
-
-Fix 'unknown type name GC_INNER' compilation error (FreeBSD)
-from https://github.com/ivmai/bdwgc/commit/6f4e123e34c2e20343a84b6fadd17bde0e7b354c
-
---- include/private/gc_priv.h.orig 2016-08-02 19:36:14.000000000 +0000
-+++ include/private/gc_priv.h
-@@ -2500,6 +2500,8 @@ GC_INNER ptr_t GC_store_debug_info(ptr_t
- # if !defined(PCR)
- # define NEED_FIND_LIMIT
- # endif
-+ GC_INNER ptr_t GC_FreeBSDGetDataStart(size_t, ptr_t);
-+# define DATASTART_IS_FUNC
- #endif /* DATASTART_USES_BSDGETDATASTART */
-
- #if (defined(NETBSD) || defined(OPENBSD)) && defined(__ELF__) \
diff --git a/devel/boehm-gc/patches/patch-include_private_gcconfig.h b/devel/boehm-gc/patches/patch-include_private_gcconfig.h
deleted file mode 100644
index 25248fcf1ab..00000000000
--- a/devel/boehm-gc/patches/patch-include_private_gcconfig.h
+++ /dev/null
@@ -1,19 +0,0 @@
-$NetBSD: patch-include_private_gcconfig.h,v 1.1 2016/09/21 17:59:11 maya Exp $
-
-Fix 'unknown type name GC_INNER' compilation error (FreeBSD)
-from https://github.com/ivmai/bdwgc/commit/6f4e123e34c2e20343a84b6fadd17bde0e7b354c
-
---- include/private/gcconfig.h.orig 2016-08-02 19:36:14.000000000 +0000
-+++ include/private/gcconfig.h
-@@ -2745,11 +2745,6 @@
- # define SUNOS5SIGS
- #endif
-
--#ifdef DATASTART_USES_BSDGETDATASTART
-- GC_INNER ptr_t GC_FreeBSDGetDataStart(size_t, ptr_t);
--# define DATASTART_IS_FUNC
--#endif
--
- #if !defined(GC_EXPLICIT_SIGNALS_UNBLOCK) && defined(SUNOS5SIGS) \
- && !defined(GC_NO_PTHREAD_SIGMASK)
- # define GC_EXPLICIT_SIGNALS_UNBLOCK