Source: libgc
Severity: wishlist
Tags: patch
I have updated the libgc package to upstream version 7.6.8. Attached
is the necessary patch.
Upstream suggested that this would be a good idea for debian in issue
https://github.com/ivmai/bdwgc/issues/241
so I gave it a go and it is straightforward. Only issue was symbol
fix, discussed in https://github.com/ivmai/bdwgc/issues/243
I leave it up to you whether you agree that this would be the right
thing to do for buster, but if so I hope this report is useful.
Just do
wget https://github.com/ivmai/bdwgc/releases/download/v7.6.8/gc-7.6.8.tar.gz
cd libgc-7.6.4
uupdate ../gc-7.6.8.tar.gz
cd ../libgc-7.6.8
and apply attached patch
to get the new package.
(If you do do a new upload adding the symbol fix for arm64ilp32 would be
appreciated too):
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=872392
diff -Nru libgc-7.6.4/debian/libgc1c2.symbols
libgc-7.6.8/debian/libgc1c2.symbols
--- libgc-7.6.4/debian/libgc1c2.symbols 2018-09-09 13:17:15.000000000 +0000
+++ libgc-7.6.8/debian/libgc1c2.symbols 2018-10-23 08:58:46.000000000 +0000
@@ -9,6 +9,7 @@
GC_FirstDLOpenedLinkMap@Base 1:7.2d
(arch=kfreebsd-amd64 kfreebsd-i386)GC_FreeBSDGetDataStart@Base 1:7.2d
(arch=sparc sparc64)GC_SysVGetDataStart@Base 1:7.2d
+ GC_abort_on_oom@Base 1:7.6.8
(arch=!arm64 !nios2 !hppa !hurd-i386 !kfreebsd-amd64 !kfreebsd-i386 !ppc64el
!sh4)GC_acquire_mark_lock@Base 1:7.4.2
(arch=!arm64 !nios2 !hppa !hurd-i386 !kfreebsd-amd64 !kfreebsd-i386 !ppc64el
!sh4)GC_active_count@Base 1:7.4.2
GC_add_ext_descriptor@Base 1:7.2d
@@ -618,7 +619,6 @@
GC_split_block@Base 1:7.2d
GC_stackbottom@Base 1:7.2d
GC_start_call_back@Base 1:7.2d
- GC_start_debugging@Base 1:7.2d
GC_start_debugging_inner@Base 1:7.4.2
GC_start_mark_threads@Base 1:7.4.2
(arch=!arm64 !hppa !hurd-i386 !ppc64el !sh4 !kfreebsd-amd64
!kfreebsd-i386)GC_start_mark_threads_inner@Base 1:7.6.4
@@ -634,7 +634,6 @@
GC_stop_init@Base 1:7.2d
GC_stop_world@Base 1:7.2d
GC_stopped_mark@Base 1:7.2d
- GC_store_debug_info@Base 1:7.2d
GC_store_debug_info_inner@Base 1:7.2d
GC_strdup@Base 1:7.2d
GC_strndup@Base 1:7.2d
@@ -663,6 +662,7 @@
GC_try_to_collect_inner@Base 1:7.2d
GC_typed_mark_proc@Base 1:7.2d
GC_typed_mark_proc_index@Base 1:7.2d
+ GC_unblock_gc_signals@Base 1:7.6.8
GC_unix_get_mem@Base 1:7.2d
GC_unix_mmap_get_mem@Base 1:7.6.4
(arch=!hurd-i386)GC_unix_sbrk_get_mem@Base 1:7.6.4
@@ -689,6 +689,7 @@
(arch=sparc sparc64)_etext@Base 1:7.2d
(arch=kfreebsd-amd64 kfreebsd-i386)etext@Base 1:7.2d
libgccpp.so.1 libgc1c2 #MINVER#
+ _Z18GC_throw_bad_allocv@Base 1:7.6.8
_ZdaPv@Base 1:7.2d
(arch-bits=32)_ZdaPvj@Base 1:7.6.4
(arch-bits=64)_ZdaPvm@Base 1:7.6.4
diff -Nru libgc-7.6.4/debian/patches/02-manpage.diff
libgc-7.6.8/debian/patches/02-manpage.diff
--- libgc-7.6.4/debian/patches/02-manpage.diff 2018-09-08 15:22:10.000000000
+0000
+++ libgc-7.6.8/debian/patches/02-manpage.diff 2018-10-23 08:58:46.000000000
+0000
@@ -1,13 +1,11 @@
Various manpage changes. Imported semi-automatically from .diff.gz.
-Index: b/doc/gc.man
+Index: libgc-7.6.8/doc/gc.man
===================================================================
---- a/doc/gc.man
-+++ b/doc/gc.man
-@@ -1,8 +1,8 @@
--.TH GC_MALLOC 1L "2 October 2003"
-+.TH GC_MALLOC 3 "2 October 2003"
+--- libgc-7.6.8.orig/doc/gc.man
++++ libgc-7.6.8/doc/gc.man
+@@ -2,7 +2,7 @@
.SH NAME
GC_malloc, GC_malloc_atomic, GC_free, GC_realloc, GC_enable_incremental,
GC_register_finalizer, GC_malloc_ignore_off_page,
GC_malloc_atomic_ignore_off_page, GC_set_warn_proc \- Garbage collecting malloc
replacement
.SH SYNOPSIS
diff -Nru libgc-7.6.4/debian/patches/enable-parallel-mark-where-supported.diff
libgc-7.6.8/debian/patches/enable-parallel-mark-where-supported.diff
--- libgc-7.6.4/debian/patches/enable-parallel-mark-where-supported.diff
2018-09-08 15:22:19.000000000 +0000
+++ libgc-7.6.8/debian/patches/enable-parallel-mark-where-supported.diff
2018-10-23 08:58:46.000000000 +0000
@@ -1,15 +1,15 @@
-Index: b/configure.ac
+Index: libgc-7.6.8/configure.ac
===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -184,7 +184,9 @@ case "$THREADS" in
+--- libgc-7.6.8.orig/configure.ac
++++ libgc-7.6.8/configure.ac
+@@ -188,7 +188,9 @@ case "$THREADS" in
AC_CHECK_LIB(pthread, pthread_self, THREADDLLIBS="-lpthread",,)
case "$host" in
x86-*-linux* | ia64-*-linux* | i586-*-linux* | i686-*-linux* \
- | x86_64-*-linux* | alpha-*-linux* | powerpc*-*-linux* | sparc*-*-linux*)
+ | x86_64-*-linux* | alpha-*-linux* | powerpc-*-linux* | sparc*-*-linux* \
+ | s390*-*-linux* | ppc64-*-linux* | m68k-*-linux* | mips*-*-linux* \
-+ | arm*-*-linux* | ppc-*-linux* | powerpc64-*-linux*)
++ | arm*-*-linux* | aarch64-*-linux* | ppc-*-linux* | powerpc64-*-linux*)
AC_DEFINE(GC_LINUX_THREADS)
AC_DEFINE(_REENTRANT)
if test "${enable_parallel_mark}" != no; then
diff -Nru libgc-7.6.4/debian/patches/enable-threads-on-hurd.diff
libgc-7.6.8/debian/patches/enable-threads-on-hurd.diff
--- libgc-7.6.4/debian/patches/enable-threads-on-hurd.diff 2018-09-08
15:22:15.000000000 +0000
+++ libgc-7.6.8/debian/patches/enable-threads-on-hurd.diff 2018-10-23
08:58:46.000000000 +0000
@@ -1,8 +1,8 @@
-Index: b/include/gc_config_macros.h
+Index: libgc-7.6.8/include/gc_config_macros.h
===================================================================
---- a/include/gc_config_macros.h
-+++ b/include/gc_config_macros.h
-@@ -122,6 +122,10 @@
+--- libgc-7.6.8.orig/include/gc_config_macros.h
++++ libgc-7.6.8/include/gc_config_macros.h
+@@ -126,6 +126,10 @@
# if defined(__rtems__) && (defined(i386) || defined(__i386__))
# define GC_RTEMS_PTHREADS
# endif