From 0f9f8891ae67044340e1d77c493f97e23b5b23a9 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Tue, 20 Sep 2022 10:32:00 -0500 Subject: [PATCH] 8.2.2 (#2124760) --- .gitignore | 1 + ...find-main-data-root-start-if-dl_iter.patch | 44 ------------------- gc-7.6.4-dont_disable_exceptions.patch | 12 ----- gc.spec | 20 +++++---- sources | 2 +- 5 files changed, 14 insertions(+), 65 deletions(-) delete mode 100644 0001-Do-not-probe-to-find-main-data-root-start-if-dl_iter.patch delete mode 100644 gc-7.6.4-dont_disable_exceptions.patch diff --git a/.gitignore b/.gitignore index 864e2b3..47cd827 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /gc-7.6.4.tar.gz /gc-8.0.4.tar.gz /gc-8.0.6.tar.gz +/gc-8.2.2.tar.gz diff --git a/0001-Do-not-probe-to-find-main-data-root-start-if-dl_iter.patch b/0001-Do-not-probe-to-find-main-data-root-start-if-dl_iter.patch deleted file mode 100644 index 908c7d7..0000000 --- a/0001-Do-not-probe-to-find-main-data-root-start-if-dl_iter.patch +++ /dev/null @@ -1,44 +0,0 @@ -From b2875e6e5262785056d49ad2f94bfed295977b2d Mon Sep 17 00:00:00 2001 -From: Ivan Maidanski -Date: Mon, 13 Jun 2022 12:28:56 -0400 -Subject: [PATCH] Do not probe to find main data root start if dl_iterate_phdr - exists - -Issue #432 (bdwgc). - -This avoids invocation of GC_find_limit to get GC_data_start value in -case of GC_register_data_segments is not called. - -* misc.c [SEARCH_FOR_DATA_START] (GC_init): Call -GC_init_linux_data_start() only if GC_REGISTER_MAIN_STATIC_DATA(); -move GC_init_linux_data_start() call down (to be close but precede -GC_dirty_init call); add comment. ---- - misc.c | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/misc.c b/misc.c -index 0869e01..02dc430 100644 ---- a/misc.c -+++ b/misc.c -@@ -1186,11 +1186,12 @@ GC_API void GC_CALL GC_init(void) - /* entirety as part of the root set. This will grow them to */ - /* maximum size, and is generally not desirable. */ - # endif --# if defined(SEARCH_FOR_DATA_START) -- GC_init_linux_data_start(); --# endif --# if defined(NETBSD) && defined(__ELF__) -- GC_init_netbsd_elf(); -+# ifdef SEARCH_FOR_DATA_START -+ /* For MPROTECT_VDB, the temporary fault handler should be */ -+ /* installed first, before the write fault one in GC_dirty_init. */ -+ if (GC_REGISTER_MAIN_STATIC_DATA()) GC_init_linux_data_start(); -+# elif defined(NETBSD) && defined(__ELF__) -+ if (GC_REGISTER_MAIN_STATIC_DATA()) GC_init_netbsd_elf(); - # endif - # if !defined(THREADS) || defined(GC_PTHREADS) \ - || defined(NN_PLATFORM_CTR) || defined(NINTENDO_SWITCH) \ --- -2.36.0 - diff --git a/gc-7.6.4-dont_disable_exceptions.patch b/gc-7.6.4-dont_disable_exceptions.patch deleted file mode 100644 index 422b149..0000000 --- a/gc-7.6.4-dont_disable_exceptions.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up gc-7.6.4/pthread_start.c.dont_disable_exceptions gc-7.6.4/pthread_start.c ---- gc-7.6.4/pthread_start.c.dont_disable_exceptions 2018-01-26 07:16:17.000000000 -0600 -+++ gc-7.6.4/pthread_start.c 2018-03-14 09:21:34.263477197 -0500 -@@ -22,7 +22,7 @@ - /* case at the top of the file. FIXME: it's still unclear whether this */ - /* will actually cause the exit handler to be invoked last when */ - /* thread_exit is called (and if -fexceptions is used). */ --#if defined(__GNUC__) && defined(__linux__) -+#if 0 && defined(__GNUC__) && defined(__linux__) - /* We undefine __EXCEPTIONS to avoid using GCC __cleanup__ attribute. */ - /* The current NPTL implementation of pthread_cleanup_push uses */ - /* __cleanup__ attribute when __EXCEPTIONS is defined (-fexceptions). */ diff --git a/gc.spec b/gc.spec index 691088e..91feaeb 100644 --- a/gc.spec +++ b/gc.spec @@ -1,7 +1,7 @@ Summary: Garbage collector for C and C++ Name: gc -Version: 8.0.6 -Release: 4%{?dist} +Version: 8.2.2 +Release: 1%{?dist} License: BSD URL: https://www.hboehm.info/gc/ @@ -9,12 +9,7 @@ Source0: https://github.com/ivmai/bdwgc/releases/download/v%{version}/gc-%{versi ## upstreamable patches -## upstream patches -Patch0001: 0001-Do-not-probe-to-find-main-data-root-start-if-dl_iter.patch - ## downstream patches -# https://bugzilla.redhat.com/show_bug.cgi?id=1551671 -Patch100: gc-7.6.4-dont_disable_exceptions.patch BuildRequires: automake libtool BuildRequires: gcc-c++ @@ -50,7 +45,11 @@ rm -f libtool libtool.m4 autoreconf -i -f # see https://bugzilla.redhat.com/689877 -CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"; export CPPFLAGS +CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN $CPPFLAGS" +# https://github.com/ivmai/bdwgc/commit/3ea130ae326d02e224921017d3ee9c287fd4e670 +# WAS https://bugzilla.redhat.com/show_bug.cgi?id=1551671 +CPPFLAGS="-DDONT_UNDEF_EXCEPTIONS $CPPFLAGS" +export CPPFLAGS %configure \ --disable-docs \ @@ -89,6 +88,7 @@ make check %{?arch_ignore} %{_libdir}/libcord.so.1* %{_libdir}/libgc.so.1* %{_libdir}/libgccpp.so.1* +%{_libdir}/libgctba.so.1* %files devel %doc doc/README.environment doc/README.linux @@ -99,11 +99,15 @@ make check %{?arch_ignore} %{_libdir}/libcord.so %{_libdir}/libgc.so %{_libdir}/libgccpp.so +%{_libdir}/libgctba.so %{_libdir}/pkgconfig/bdw-gc.pc %{_mandir}/man3/gc.3* %changelog +* Tue Sep 20 2022 Rex Dieter 8.2.2-1 +- 8.2.2 (#2124760) + * Thu Jul 21 2022 Fedora Release Engineering - 8.0.6-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 2f3da25..9aadd83 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gc-8.0.6.tar.gz) = 2ea25003d585118e3ac0e12be9240e8195db511c6e94949f20453dc3cb771380bd5b956c04243b2a8ce31508587aa32de4f0f10a813577e6dbe8367688b7614e +SHA512 (gc-8.2.2.tar.gz) = 4a7b26789ce22ab72bfaadf3029362c5fe26737df1e856e43db7d9b24ee8acf625e35d596bb3f698f91d6a5ddfb6c45a952a1dbd18d47359569696a544c9c248