From ae49bef18738ca69a61f31ab6dc8f7d6e7da315b Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 17 May 2022 05:16:31 -0400 Subject: [PATCH] import gc-8.0.4-7.el9 --- .gc.metadata | 1 + .gitignore | 1 + .../gc-7.6.4-dont_disable_exceptions.patch | 12 + SPECS/gc.spec | 431 ++++++++++++++++++ 4 files changed, 445 insertions(+) create mode 100644 .gc.metadata create mode 100644 .gitignore create mode 100644 SOURCES/gc-7.6.4-dont_disable_exceptions.patch create mode 100644 SPECS/gc.spec diff --git a/.gc.metadata b/.gc.metadata new file mode 100644 index 0000000..3220adf --- /dev/null +++ b/.gc.metadata @@ -0,0 +1 @@ +4b8b24534f469b64ff4bc2332a9bdf8bef8bf1d4 SOURCES/gc-8.0.4.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..624dcc2 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/gc-8.0.4.tar.gz diff --git a/SOURCES/gc-7.6.4-dont_disable_exceptions.patch b/SOURCES/gc-7.6.4-dont_disable_exceptions.patch new file mode 100644 index 0000000..422b149 --- /dev/null +++ b/SOURCES/gc-7.6.4-dont_disable_exceptions.patch @@ -0,0 +1,12 @@ +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/SPECS/gc.spec b/SPECS/gc.spec new file mode 100644 index 0000000..98cfd6e --- /dev/null +++ b/SPECS/gc.spec @@ -0,0 +1,431 @@ + +Summary: A garbage collector for C and C++ +Name: gc +Version: 8.0.4 +Release: 7%{?dist} + +License: BSD +Url: http://www.hboehm.info/gc/ +Source0: http://www.hboehm.info/gc/gc_source/gc-%{version}%{?pre}.tar.gz + +## upstreamable patches + +## upstream patches + +## 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++ +## https://www.hboehm.info/gc/ says: "Starting with 8.0, libatomic_ops is only required if the compiler does not understand C atomics." +#BuildRequires: pkgconfig(atomic_ops) >= 7.4 +BuildRequires: pkgconfig +BuildRequires: make + +# rpmforge compatibility +Obsoletes: libgc < %{version}-%{release} +Provides: libgc = %{version}-%{release} + +%description +The Boehm-Demers-Weiser conservative garbage collector can be +used as a garbage collecting replacement for C malloc or C++ new. + +%package devel +Summary: Libraries and header files for %{name} development +Requires: %{name}%{?_isa} = %{version}-%{release} +Obsoletes: libgc-devel < %{version}-%{release} +Provides: libgc-devel = %{version}-%{release} +%description devel +%{summary}. + + +%prep +%autosetup -n gc-%{version}%{?pre} -p1 + + +%build +# refresh auto*/libtool to purge rpaths +rm -f libtool libtool.m4 +autoreconf -i -f + +# see https://bugzilla.redhat.com/689877 +CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"; export CPPFLAGS + +%configure \ + --disable-static \ + --disable-docs \ + --enable-cplusplus \ + --enable-large-config \ +%ifarch %{ix86} + --enable-parallel-mark \ +%endif + --enable-threads=posix + +%make_build + + +%install +%make_install + +install -p -D -m644 doc/gc.man %{buildroot}%{_mandir}/man3/gc.3 + +## Unpackaged files +rm -rfv %{buildroot}%{_datadir}/gc/ +rm -fv %{buildroot}%{_libdir}/lib*.la + + +%check +%ifarch %{arm} +## cordtest segfaults +%global arch_ignore ||: +%endif +## cordtest segfaults or hangs on ix86 +## gctest sometimes(?) hangs on armv7hl, aarch64, ppc64le +%ifnarch %{arm} aarch64 %{ix86} ppc64le +make check %{?arch_ignore} +%endif + + +%ldconfig_scriptlets + +%files +%{_libdir}/libcord.so.1* +%{_libdir}/libgc.so.1* +%{_libdir}/libgccpp.so.1* + +%files devel +%doc doc/README.environment doc/README.linux +%doc doc/*.md +%{_includedir}/gc.h +%{_includedir}/gc_cpp.h +%{_includedir}/gc/ +%{_libdir}/libcord.so +%{_libdir}/libgc.so +%{_libdir}/libgccpp.so +%{_libdir}/pkgconfig/bdw-gc.pc +%{_mandir}/man3/gc.3* + + +%changelog +* Mon Aug 09 2021 Mohan Boddu - 8.0.4-7 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Thu Apr 15 2021 Mohan Boddu - 8.0.4-6 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Tue Jan 26 2021 Fedora Release Engineering - 8.0.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 8.0.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jan 28 2020 Fedora Release Engineering - 8.0.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jan 15 2020 Rex Dieter - 8.0.4-2 +- drop libatomic_ops dep + +* Wed Jan 15 2020 Rex Dieter - 8.0.4-1 +- 8.0.4 +- %%build: --with-libatomic-ops=yes + +* Thu Jul 25 2019 Fedora Release Engineering - 7.6.4-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 7.6.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 7.6.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Mar 14 2018 Rex Dieter - 7.6.4-3 +- gc: Effectively overrides -fexceptions flag (#1551671) +- move autoreconf to %%build + +* Tue Feb 27 2018 Richard W.M. Jones - 7.6.4-2 +- Add upstream patches for RISC-V support. + +* Tue Feb 20 2018 Rex Dieter - 7.6.4-1 +- 7.6.4, reverts abi bump, compat-gc no longer needed + +* Tue Feb 20 2018 Rex Dieter - 7.6.2-4 +- BR: gcc-c++ +- add (temporary) compat-gc + +* Wed Feb 07 2018 Fedora Release Engineering - 7.6.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Feb 03 2018 Igor Gnatenko - 7.6.2-2 +- Switch to %%ldconfig_scriptlets + +* Thu Jan 04 2018 Rex Dieter - 7.6.2-1 +- 7.6.2 (#1531008) +- libgc soname bump +- -devel: include all docs here (ie, remove README's from main too) + +* Fri Dec 29 2017 Rex Dieter - 7.6.0-8 +- rebuild (libatomic_ops) + +* Wed Aug 02 2017 Fedora Release Engineering - 7.6.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 7.6.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed May 03 2017 Petr Šabata - 7.6.0-5 +- Turns out our tests hang on armv7hl too, let's skip them (#1431866) + +* Wed Mar 15 2017 Rex Dieter - 7.6.0-4 +- skip tests on ppcle64 (#1431866) + +* Tue Mar 14 2017 Rex Dieter - 7.6.0-3 +- skip tests on aarch64 (#1431866) + +* Fri Feb 10 2017 Fedora Release Engineering - 7.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Aug 09 2016 Rex Dieter - 7.6.0-1 +- gc-7.6.0 (#1365135) + +* Fri Jun 17 2016 Rex Dieter - 7.4.4-1 +- gc-7.4.4 (#1346538) + +* Sat Feb 27 2016 Dan Horák - 7.4.2-6 +- install also cord_pos.h + +* Wed Feb 03 2016 Fedora Release Engineering - 7.4.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 7.4.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 7.4.2-3 +- Rebuilt for GCC 5 C++11 ABI change + +* Sat Aug 16 2014 Fedora Release Engineering - 7.4.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Mon Jun 16 2014 Rex Dieter 7.4.2-1 +- gc-7.4.2 + +* Wed Jun 11 2014 Pavel Raiskup - 7.4.0-4 +- backport upstream fix for disclaim_test fail on ppc (#1101996) + +* Sat Jun 07 2014 Fedora Release Engineering - 7.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed May 28 2014 Pavel Raiskup - 7.4.0-2 +- ignore test results on ppc-like arches for now (#1101996) + +* Tue May 13 2014 Rex Dieter 7.4.0-1 +- gc-7.4.0 + +* Mon May 12 2014 Rex Dieter 7.2e-3 +- 'make check' non-fatal on ppc64le too (#1096574) + +* Fri Feb 21 2014 Rex Dieter 7.2e-2 +- update Urls to match upstream project move + +* Fri Nov 15 2013 Rex Dieter 7.2e-1 +- gc-7.2e (#892559) + +* Wed Oct 30 2013 Pavel Raiskup - 7.2d-4 +- add support for aarch64 (#969817) +- ignore testsuite results only for powerpc + +* Sat Aug 03 2013 Fedora Release Engineering - 7.2d-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Feb 13 2013 Fedora Release Engineering - 7.2d-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Jan 07 2013 Rex Dieter 7.2d-1 +- gc-7.2d + +* Mon Oct 29 2012 Pavel Raiskup - 7.2c-5 +- fix possible infinite loop in test suite (#871067) + +* Mon Oct 29 2012 Pavel Raiskup - 7.2c-4 +- trim lines, s/[tabs]/[spaces]/ + +* Fri Jul 27 2012 Fedora Release Engineering - 7.2c-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jul 24 2012 Rex Dieter 7.2c-2 +- rebuild + +* Tue Jun 26 2012 Rex Dieter 7.2c-1 +- 7.2c + +* Fri Jun 15 2012 Rex Dieter +- 7.2b-2 +- backport patches from gc-7_2-hotfix-2 branch in lieu of 7.2c release +- gc 7.2 final abi broken when changing several symbols to hidden (#825473) +- CVE-2012-2673 gc: malloc() and calloc() overflows (#828878) + +* Wed May 30 2012 Rex Dieter 7.2b-1 +- gc-7.2b + +* Mon May 14 2012 Rex Dieter +- 7.2-1 +- gc-7.2 (final) + +* Fri Mar 02 2012 Rex Dieter 7.2-0.7.alpha6 +- libatomic_ops: use -DAO_USE_PTHREAD_DEFS on ARMv5 + +* Fri Jan 13 2012 Fedora Release Engineering - 7.2-0.6.alpha6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Wed Oct 26 2011 Fedora Release Engineering - 7.2-0.5.alpha6 +- Rebuilt for glibc bug#747377 + +* Mon Jun 20 2011 Rex Dieter 7.2-0.4.alpha6.20110107 +- gc-7.2alpha6 +- build with -DUSE_GET_STACKBASE_FOR_MAIN (#689877) + +* Wed Feb 09 2011 Rex Dieter 7.2-0.3.alpha5.20110107 +- bdwgc-7.2alpha4 20110107 snapshot + +* Tue Feb 08 2011 Fedora Release Engineering - 7.2-0.2.alpha4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Dec 11 2009 Rex Dieter - 7.2-0.1.alpha4 +- gc-7.2alpha4 +- use/package internal libatomic_ops + +* Tue Dec 8 2009 Michael Schwendt - 7.1-10 +- Explicitly BR libatomic_ops-static in accordance with the Packaging + Guidelines (libatomic_ops-devel is still static-only). + +* Fri Jul 24 2009 Fedora Release Engineering - 7.1-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sun Jul 19 2009 Rex Dieter - 7.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Fri Dec 12 2008 Rex Dieter 7.1-6 +- rebuild for pkgconfig deps + +* Wed Oct 15 2008 Rex Dieter 7.1-5 +- forward-port patches (gcinit, sparc) + +* Fri Oct 03 2008 Rex Dieter 7.1-4 +- BR: libatomic_ops-devel + +* Mon Sep 08 2008 Rex Dieter 7.1-3 +- upstream DONT_ADD_BYTE_AT_END patch +- spec cosmetics + +* Sat Jul 12 2008 Rex Dieter 7.1-2 +- --enable-large-config (#453972) + +* Sun May 04 2008 Rex Dieter 7.1-1 +- gc-7.1 +- purge rpaths + +* Fri Feb 08 2008 Rex Dieter 7.0-7 +- respin (gcc43) + +* Wed Aug 29 2007 Rex Dieter 7.0-6 +- BR: gawk +- fixup compat_header patch to avoid needing auto* tools + +* Wed Aug 29 2007 Rex Dieter 7.0-5 +- compat_header patch (supercedes previous pkgconfig patch) + +* Tue Aug 21 2007 Rex Dieter 7.0-4 +- pkgconfig patch (cflags += -I%%_includedir/gc) + +* Tue Aug 21 2007 Rex Dieter 7.0-3 +- respin (ppc32) + +* Tue Jul 24 2007 Rex Dieter 7.0-2 +- gcinit patch, ABI compatibility (#248700) + +* Mon Jul 09 2007 Rex Dieter 7.0-1 +- gc-7.0 + +* Mon Dec 11 2006 Rex Dieter 6.8-3 +- Obsoletes/Provides: libgc(-devel) (rpmforge compatibility) + +* Mon Aug 28 2006 Rex Dieter 6.8-2 +- fc6 respin + +* Thu Jul 13 2006 Rex Dieter 6.8-1 +- 6.8 + +* Fri Mar 03 2006 Rex Dieter 6.7-1 +- 6.7 + +* Wed Mar 1 2006 Rex Dieter +- fc5: gcc/glibc respin + +* Fri Feb 10 2006 Rex Dieter 6.6-5 +- gcc(4.1) patch + +* Thu Dec 01 2005 Rex Dieter 6.6-4 +- Provides: libgc(-devel) + +* Wed Sep 14 2005 Rex Dieter 6.6-3 +- no-undefined patch, libtool madness (#166344) + +* Mon Sep 12 2005 Rex Dieter 6.6-2 +- drop opendl patch (doesn't appear to be needed anymore) + +* Fri Sep 09 2005 Rex Dieter 6.6-1 +- 6.6 + +* Wed May 25 2005 Rex Dieter 6.5-1 +- 6.5 + +* Wed Apr 6 2005 Michael Schwendt +- rebuilt + +* Wed Jan 26 2005 Rex Dieter 0:6.4-2 +- --enable-threads unconditionally +- --enable-parallel-mark only on %%ix86 (#144681) + +* Mon Jan 10 2005 Rex Dieter 0:6.4-1 +- 6.4 +- update opendl patch + +* Fri Jul 09 2004 Rex Dieter 0:6.3-0.fdr.1 +- 6.3(final) + +* Tue Jun 01 2004 Rex Dieter 0:6.3-0.fdr.0.4.alpha6 +- dlopen patch + +* Wed May 26 2004 Rex Dieter 0:6.3-0.fdr.0.3.alpha6 +- explictly --enable-threads ('n friends) + +* Tue May 25 2004 Rex Dieter 0:6.3-0.fdr.0.2.alpha6 +- 6.3alpha6 +- --disable-static +- --enable-parallel-mark + +* Wed Dec 17 2003 Rex Dieter 0:6.3-0.fdr.0.1.alpha2 +- 6.3alpha2 + +* Thu Oct 02 2003 Rex Dieter 0:6.2-0.fdr.3 +- OK, put manpage in man3. + +* Thu Oct 02 2003 Rex Dieter 0:6.2-0.fdr.2 +- drop manpage pending feedback from developer. + +* Tue Sep 30 2003 Rex Dieter 0:6.2-0.fdr.1 +- fix manpage location +- remove .la file (it appears unnecessary after all, thanks to opendl patch) +- remove cvs tag from description +- touchup -devel desc/summary. +- macro update to support Fedora Core + +* Thu Sep 11 2003 Rex Dieter 0:6.2-0.fdr.0 +- 6.2 release. +- update license (BSD) +- Consider building with: --enable-parallel-mark + (for now, no).