266ee9
266ee9
Summary: A garbage collector for C and C++
266ee9
Name:    gc
266ee9
Version: 7.6.4
266ee9
Release: 3%{?dist}
266ee9
266ee9
License: BSD
266ee9
Url:     http://www.hboehm.info/gc/
266ee9
Source0: http://www.hboehm.info/gc/gc_source/gc-%{version}%{?pre}.tar.gz
266ee9
266ee9
## upstreamable patches
266ee9
266ee9
## upstream patches
266ee9
# Upstream commit 4f7f0eebd24dcde9f2b3ec2cb98913fc39bbdda3.
266ee9
Patch1: 0001-Add-initial-RISC-V-support.patch
266ee9
# Upstream commit 3b008f79ee29dbd0d61cf163d20eee21412df95b.
266ee9
Patch2: 0001-Merge-RISCV-32-64-bit-configurations-definition.patch
266ee9
266ee9
## downstream patches
266ee9
# https://bugzilla.redhat.com/show_bug.cgi?id=1551671
266ee9
Patch100: gc-7.6.4-dont_disable_exceptions.patch
266ee9
266ee9
BuildRequires: automake libtool
266ee9
BuildRequires: gcc-c++
266ee9
BuildRequires: pkgconfig(atomic_ops) >= 7.4
266ee9
BuildRequires: pkgconfig
266ee9
266ee9
# rpmforge compatibility
266ee9
Obsoletes: libgc < %{version}-%{release}
266ee9
Provides:  libgc = %{version}-%{release}
266ee9
266ee9
%description
266ee9
The Boehm-Demers-Weiser conservative garbage collector can be
266ee9
used as a garbage collecting replacement for C malloc or C++ new.
266ee9
266ee9
%package devel
266ee9
Summary: Libraries and header files for %{name} development
266ee9
Requires: %{name}%{?_isa} = %{version}-%{release}
266ee9
Obsoletes: libgc-devel < %{version}-%{release}
266ee9
Provides:  libgc-devel = %{version}-%{release}
266ee9
%description devel
266ee9
%{summary}.
266ee9
266ee9
266ee9
%prep
266ee9
%autosetup -n gc-%{version}%{?pre} -p1
266ee9
266ee9
266ee9
%build
266ee9
# refresh auto*/libtool to purge rpaths
266ee9
rm -f libtool libtool.m4
266ee9
autoreconf -i -f
266ee9
266ee9
# see bugzilla.redhat.com/689877
266ee9
CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"; export CPPFLAGS
266ee9
266ee9
%configure \
266ee9
  --disable-static \
266ee9
  --disable-docs \
266ee9
  --enable-cplusplus \
266ee9
  --enable-large-config \
266ee9
%ifarch %{ix86}
266ee9
  --enable-parallel-mark \
266ee9
%endif
266ee9
  --enable-threads=posix
266ee9
266ee9
%{make_build}
266ee9
266ee9
266ee9
%install
266ee9
%{make_install}
266ee9
266ee9
install -p -D -m644 doc/gc.man  %{buildroot}%{_mandir}/man3/gc.3
266ee9
266ee9
## Unpackaged files
266ee9
rm -rfv %{buildroot}%{_datadir}/gc/
266ee9
rm -fv  %{buildroot}%{_libdir}/lib*.la
266ee9
266ee9
266ee9
%check
266ee9
%ifarch %{arm}
266ee9
## cordtest segfaults
266ee9
%global arch_ignore ||:
266ee9
%endif
266ee9
## cordtest segfaults or hangs on ix86
266ee9
## gctest sometimes(?) hangs on armv7hl, aarch64, ppc64le
266ee9
%ifnarch %{arm} aarch64 %{ix86} ppc64le
266ee9
make check %{?arch_ignore}
266ee9
%endif
266ee9
266ee9
266ee9
%ldconfig_scriptlets
266ee9
266ee9
%files
266ee9
%{_libdir}/libcord.so.1*
266ee9
%{_libdir}/libgc.so.1*
266ee9
%{_libdir}/libgccpp.so.1*
266ee9
266ee9
%files devel
266ee9
%doc doc/README.environment doc/README.linux
266ee9
%doc doc/*.html
266ee9
%{_includedir}/gc.h
266ee9
%{_includedir}/gc_cpp.h
266ee9
%{_includedir}/gc/
266ee9
%{_libdir}/libcord.so
266ee9
%{_libdir}/libgc.so
266ee9
%{_libdir}/libgccpp.so
266ee9
%{_libdir}/pkgconfig/bdw-gc.pc
266ee9
%{_mandir}/man3/gc.3*
266ee9
266ee9
266ee9
%changelog
266ee9
* Wed Mar 14 2018 Rex Dieter <rdieter@fedoraproject.org> - 7.6.4-3
266ee9
- gc: Effectively overrides -fexceptions flag  (#1551671)
266ee9
- move autoreconf to %%build
266ee9
266ee9
* Tue Feb 27 2018 Richard W.M. Jones <rjones@redhat.com> - 7.6.4-2
266ee9
- Add upstream patches for RISC-V support.
266ee9
266ee9
* Tue Feb 20 2018 Rex Dieter <rdieter@fedoraproject.org> - 7.6.4-1
266ee9
- 7.6.4, reverts abi bump, compat-gc no longer needed
266ee9
266ee9
* Tue Feb 20 2018 Rex Dieter <rdieter@fedoraproject.org> - 7.6.2-4
266ee9
- BR: gcc-c++
266ee9
- add (temporary) compat-gc
266ee9
266ee9
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.2-3
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
266ee9
266ee9
* Sat Feb 03 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 7.6.2-2
266ee9
- Switch to %%ldconfig_scriptlets
266ee9
266ee9
* Thu Jan 04 2018 Rex Dieter <rdieter@fedoraproject.org> - 7.6.2-1
266ee9
- 7.6.2 (#1531008)
266ee9
- libgc soname bump
266ee9
- -devel: include all docs here (ie, remove README's from main too)
266ee9
266ee9
* Fri Dec 29 2017 Rex Dieter <rdieter@fedoraproject.org> - 7.6.0-8
266ee9
- rebuild (libatomic_ops)
266ee9
266ee9
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.0-7
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
266ee9
266ee9
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.0-6
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
266ee9
266ee9
* Wed May 03 2017 Petr Å abata <contyk@redhat.com> - 7.6.0-5
266ee9
- Turns out our tests hang on armv7hl too, let's skip them (#1431866)
266ee9
266ee9
* Wed Mar 15 2017 Rex Dieter <rdieter@fedoraproject.org> - 7.6.0-4
266ee9
- skip tests on ppcle64 (#1431866)
266ee9
266ee9
* Tue Mar 14 2017 Rex Dieter <rdieter@fedoraproject.org> - 7.6.0-3
266ee9
- skip tests on aarch64 (#1431866)
266ee9
266ee9
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 7.6.0-2
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
266ee9
266ee9
* Tue Aug 09 2016 Rex Dieter <rdieter@fedoraproject.org> - 7.6.0-1
266ee9
- gc-7.6.0 (#1365135)
266ee9
266ee9
* Fri Jun 17 2016 Rex Dieter <rdieter@fedoraproject.org> - 7.4.4-1
266ee9
- gc-7.4.4 (#1346538)
266ee9
266ee9
* Sat Feb 27 2016 Dan Horák <dan[at]danny.cz> - 7.4.2-6
266ee9
- install also cord_pos.h
266ee9
266ee9
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 7.4.2-5
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
266ee9
266ee9
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.4.2-4
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
266ee9
266ee9
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 7.4.2-3
266ee9
- Rebuilt for GCC 5 C++11 ABI change
266ee9
266ee9
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.4.2-2
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
266ee9
266ee9
* Mon Jun 16 2014 Rex Dieter <rdieter@fedoraproject.org> 7.4.2-1
266ee9
- gc-7.4.2
266ee9
266ee9
* Wed Jun 11 2014 Pavel Raiskup <praiskup@redhat.com> - 7.4.0-4
266ee9
- backport upstream fix for disclaim_test fail on ppc (#1101996)
266ee9
266ee9
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.4.0-3
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
266ee9
266ee9
* Wed May 28 2014 Pavel Raiskup <praiskup@redhat.com> - 7.4.0-2
266ee9
- ignore test results on ppc-like arches for now (#1101996)
266ee9
266ee9
* Tue May 13 2014 Rex Dieter <rdieter@fedoraproject.org> 7.4.0-1
266ee9
- gc-7.4.0
266ee9
266ee9
* Mon May 12 2014 Rex Dieter <rdieter@fedoraproject.org> 7.2e-3
266ee9
- 'make check' non-fatal on ppc64le too (#1096574)
266ee9
266ee9
* Fri Feb 21 2014 Rex Dieter <rdieter@fedoraproject.org> 7.2e-2
266ee9
- update Urls to match upstream project move
266ee9
266ee9
* Fri Nov 15 2013 Rex Dieter <rdieter@fedoraproject.org> 7.2e-1
266ee9
- gc-7.2e (#892559)
266ee9
266ee9
* Wed Oct 30 2013 Pavel Raiskup <praiskup@redhat.com> - 7.2d-4
266ee9
- add support for aarch64 (#969817)
266ee9
- ignore testsuite results only for powerpc
266ee9
266ee9
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2d-3
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
266ee9
266ee9
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2d-2
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
266ee9
266ee9
* Mon Jan 07 2013 Rex Dieter <rdieter@fedoraproject.org> 7.2d-1
266ee9
- gc-7.2d
266ee9
266ee9
* Mon Oct 29 2012 Pavel Raiskup <praiskup@redhat.com> - 7.2c-5
266ee9
- fix possible infinite loop in test suite (#871067)
266ee9
266ee9
* Mon Oct 29 2012 Pavel Raiskup <praiskup@redhat.com> - 7.2c-4
266ee9
- trim lines, s/[tabs]/[spaces]/
266ee9
266ee9
* Fri Jul 27 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2c-3
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
266ee9
266ee9
* Tue Jul 24 2012 Rex Dieter <rdieter@fedoraproject.org> 7.2c-2
266ee9
- rebuild
266ee9
266ee9
* Tue Jun 26 2012 Rex Dieter <rdieter@fedoraproject.org> 7.2c-1
266ee9
- 7.2c
266ee9
266ee9
* Fri Jun 15 2012 Rex Dieter <rdieter@fedoraproject.org>
266ee9
- 7.2b-2
266ee9
- backport patches from gc-7_2-hotfix-2 branch in lieu of 7.2c release
266ee9
- gc 7.2 final abi broken when changing several symbols to hidden (#825473)
266ee9
- CVE-2012-2673 gc: malloc() and calloc() overflows (#828878)
266ee9
266ee9
* Wed May 30 2012 Rex Dieter <rdieter@fedoraproject.org> 7.2b-1
266ee9
- gc-7.2b
266ee9
266ee9
* Mon May 14 2012 Rex Dieter <rdieter@fedoraproject.org>
266ee9
- 7.2-1
266ee9
- gc-7.2 (final)
266ee9
266ee9
* Fri Mar 02 2012 Rex Dieter <rdieter@fedoraproject.org> 7.2-0.7.alpha6
266ee9
- libatomic_ops: use -DAO_USE_PTHREAD_DEFS on ARMv5
266ee9
266ee9
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2-0.6.alpha6
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
266ee9
266ee9
* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2-0.5.alpha6
266ee9
- Rebuilt for glibc bug#747377
266ee9
266ee9
* Mon Jun 20 2011 Rex Dieter <rdieter@fedoraproject.rog> 7.2-0.4.alpha6.20110107
266ee9
- gc-7.2alpha6
266ee9
- build with -DUSE_GET_STACKBASE_FOR_MAIN (#689877)
266ee9
266ee9
* Wed Feb 09 2011 Rex Dieter <rdieter@fedoraproject.org> 7.2-0.3.alpha5.20110107
266ee9
- bdwgc-7.2alpha4 20110107 snapshot
266ee9
266ee9
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.2-0.2.alpha4
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
266ee9
266ee9
* Fri Dec 11 2009 Rex Dieter <rdieter@fedoraproject.org> - 7.2-0.1.alpha4
266ee9
- gc-7.2alpha4
266ee9
- use/package internal libatomic_ops
266ee9
266ee9
* Tue Dec  8 2009 Michael Schwendt <mschwendt@fedoraproject.org> - 7.1-10
266ee9
- Explicitly BR libatomic_ops-static in accordance with the Packaging
266ee9
  Guidelines (libatomic_ops-devel is still static-only).
266ee9
266ee9
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.1-9
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
266ee9
266ee9
* Sun Jul 19 2009 Rex Dieter 
266ee9
- FTBFS gc-7.1-7.fc11 (#511365)
266ee9
266ee9
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 7.1-7
266ee9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
266ee9
266ee9
* Fri Dec 12 2008 Rex Dieter <rdieter@fedoraproject.org> 7.1-6
266ee9
- rebuild for pkgconfig deps
266ee9
266ee9
* Wed Oct 15 2008 Rex Dieter <rdieter@fedoraproject.org> 7.1-5
266ee9
- forward-port patches (gcinit, sparc)
266ee9
266ee9
* Fri Oct 03 2008 Rex Dieter <rdieter@fedoraproject.org> 7.1-4
266ee9
- BR: libatomic_ops-devel
266ee9
266ee9
* Mon Sep 08 2008 Rex Dieter <rdieter@fedoraproject.org> 7.1-3
266ee9
- upstream DONT_ADD_BYTE_AT_END patch
266ee9
- spec cosmetics
266ee9
266ee9
* Sat Jul 12 2008 Rex Dieter <rdieter@fedoraproject.org> 7.1-2
266ee9
- --enable-large-config (#453972)
266ee9
266ee9
* Sun May 04 2008 Rex Dieter <rdieter@fedoraproject.org> 7.1-1
266ee9
- gc-7.1
266ee9
- purge rpaths
266ee9
266ee9
* Fri Feb 08 2008 Rex Dieter <rdieter@fedoraproject.org> 7.0-7
266ee9
- respin (gcc43)
266ee9
266ee9
* Wed Aug 29 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 7.0-6
266ee9
- BR: gawk
266ee9
- fixup compat_header patch to avoid needing auto* tools
266ee9
266ee9
* Wed Aug 29 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 7.0-5
266ee9
- compat_header patch (supercedes previous pkgconfig patch)
266ee9
266ee9
* Tue Aug 21 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 7.0-4
266ee9
- pkgconfig patch (cflags += -I%%_includedir/gc)
266ee9
266ee9
* Tue Aug 21 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 7.0-3
266ee9
- respin (ppc32)
266ee9
266ee9
* Tue Jul 24 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 7.0-2
266ee9
- gcinit patch, ABI compatibility (#248700)
266ee9
266ee9
* Mon Jul 09 2007 Rex Dieter <rdieter[AT]fedoraproject.org> 7.0-1
266ee9
- gc-7.0
266ee9
266ee9
* Mon Dec 11 2006 Rex Dieter <rexdieter[AT]users.sf.net> 6.8-3
266ee9
- Obsoletes/Provides: libgc(-devel) (rpmforge compatibility)
266ee9
266ee9
* Mon Aug 28 2006 Rex Dieter <rexdieter[AT]users.sf.net> 6.8-2
266ee9
- fc6 respin
266ee9
266ee9
* Thu Jul 13 2006 Rex Dieter <rexdieter[AT]users.sf.net> 6.8-1
266ee9
- 6.8
266ee9
266ee9
* Fri Mar 03 2006 Rex Dieter <rexdieter[AT]users.sf.net> 6.7-1
266ee9
- 6.7
266ee9
266ee9
* Wed Mar 1 2006 Rex Dieter <rexdieter[AT]users.sf.net>
266ee9
- fc5: gcc/glibc respin
266ee9
266ee9
* Fri Feb 10 2006 Rex Dieter <rexdieter[AT]users.sf.net> 6.6-5
266ee9
- gcc(4.1) patch
266ee9
266ee9
* Thu Dec 01 2005 Rex Dieter <rexdieter[AT]users.sf.net> 6.6-4
266ee9
- Provides: libgc(-devel)
266ee9
266ee9
* Wed Sep 14 2005 Rex Dieter <rexdieter[AT]users.sf.net> 6.6-3
266ee9
- no-undefined patch, libtool madness (#166344)
266ee9
266ee9
* Mon Sep 12 2005 Rex Dieter <rexdieter[AT]users.sf.net> 6.6-2
266ee9
- drop opendl patch (doesn't appear to be needed anymore)
266ee9
266ee9
* Fri Sep 09 2005 Rex Dieter <rexdieter[AT]users.sf.net> 6.6-1
266ee9
- 6.6
266ee9
266ee9
* Wed May 25 2005 Rex Dieter <rexdieter[AT]users.sf.net> 6.5-1
266ee9
- 6.5
266ee9
266ee9
* Wed Apr  6 2005 Michael Schwendt <mschwendt[AT]users.sf.net>
266ee9
- rebuilt
266ee9
266ee9
* Wed Jan 26 2005 Rex Dieter <rexdieter[AT]users.sf.net> 0:6.4-2
266ee9
- --enable-threads unconditionally
266ee9
- --enable-parallel-mark only on %%ix86 (#144681)
266ee9
266ee9
* Mon Jan 10 2005 Rex Dieter <rexdieter[AT]users.sf.net> 0:6.4-1
266ee9
- 6.4
266ee9
- update opendl patch
266ee9
266ee9
* Fri Jul 09 2004 Rex Dieter <rexdieter at sf.net> 0:6.3-0.fdr.1
266ee9
- 6.3(final)
266ee9
266ee9
* Tue Jun 01 2004 Rex Dieter <rexdieter at sf.net> 0:6.3-0.fdr.0.4.alpha6
266ee9
- dlopen patch
266ee9
266ee9
* Wed May 26 2004 Rex Dieter <rexdieter at sf.net> 0:6.3-0.fdr.0.3.alpha6
266ee9
- explictly --enable-threads ('n friends)
266ee9
266ee9
* Tue May 25 2004 Rex Dieter <rexdieter at sf.net> 0:6.3-0.fdr.0.2.alpha6
266ee9
- 6.3alpha6
266ee9
- --disable-static
266ee9
- --enable-parallel-mark
266ee9
266ee9
* Wed Dec 17 2003 Rex Dieter <rexdieter at sf.net> 0:6.3-0.fdr.0.1.alpha2
266ee9
- 6.3alpha2
266ee9
266ee9
* Thu Oct 02 2003 Rex Dieter <rexdieter at sf.net> 0:6.2-0.fdr.3
266ee9
- OK, put manpage in man3.
266ee9
266ee9
* Thu Oct 02 2003 Rex Dieter <rexdieter at sf.net> 0:6.2-0.fdr.2
266ee9
- drop manpage pending feedback from developer.
266ee9
266ee9
* Tue Sep 30 2003 Rex Dieter <rexdieter at sf.net> 0:6.2-0.fdr.1
266ee9
- fix manpage location
266ee9
- remove .la file (it appears unnecessary after all, thanks to opendl patch)
266ee9
- remove cvs tag from description
266ee9
- touchup -devel desc/summary.
266ee9
- macro update to support Fedora Core
266ee9
266ee9
* Thu Sep 11 2003 Rex Dieter <rexdieter at sf.net> 0:6.2-0.fdr.0
266ee9
- 6.2 release.
266ee9
- update license (BSD)
266ee9
- Consider building with: --enable-parallel-mark
266ee9
  (for now, no).