SHA256
2
0

- Provide libatomic-ops-devel package too

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/gc?expand=0&rev=13
This commit is contained in:
Ismail Dönmez 2011-12-25 16:02:10 +00:00 committed by Git OBS Bridge
parent d5c826ce7f
commit 9303821ff0
2 changed files with 58 additions and 14 deletions

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Sun Dec 25 16:02:21 UTC 2011 - idonmez@suse.com
- Provide libatomic-ops-devel package too
-------------------------------------------------------------------
Tue Dec 13 09:55:10 UTC 2011 - werner@suse.de

67
gc.spec
View File

@ -15,21 +15,22 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: gc
Version: 7.1.9.6
Release: 1
Release: 0
%define src_ver 7.2alpha6
Group: Development/Libraries/C and C++
License: BSD-3-Clause
Url: http://www.hpl.hp.com/personal/Hans_Boehm/gc/
Summary: A garbage collector for C and C++
License: BSD-3-Clause
Group: Development/Libraries/C and C++
Source: %{name}-%{src_ver}.tar.bz2
Patch0: %{name}-build.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: gcc-c++ pkg-config
BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: pkg-config
Conflicts: libatomic-ops-devel <= %{src_ver}
Provides: libatomic-ops-devel = %{src_ver}
%description
The Boehm-Demers-Weiser conservative garbage collector can be used as a
@ -70,31 +71,56 @@ deallocating memory that is no longer useful. The collector
automatically recycles memory when it determines that it can no longer
be otherwise accessed.
%package -n libatomic_ops-devel
Summary: Atomic memory update operations
Group: Development/Libraries/C and C++
Provides: libatomic_ops-static = %{version}-%{release}
%description -n libatomic_ops-devel
Provides implementations for atomic memory update operations on a
number of architectures. This allows direct use of these in reasonably
portable code. Unlike earlier similar packages, this one explicitly
considers memory barrier semantics, and allows the construction of code
that involves minimum overhead across a variety of architectures.
%prep
%setup -q -n %{name}-%{src_ver}
%patch0 -p1
%build
%{suse_update_config -f}
# refresh auto*/libtool to purge rpaths
rm -f libtool libtool.m4
autoreconf -fi
%{__libtoolize} -f
# see bugzilla.redhat.com/689877
CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"; export CPPFLAGS
%configure --disable-static \
--with-pic \
--with-gnu-ld \
--enable-cplusplus \
--enable-large-config \
--enable-threads=posix \
--enable-parallel-mark
--enable-parallel-mark \
--with-libatomic-ops=no
make %{?_smp_mflags}
make %{?_smp_mflags} -C libatomic_ops
%install
make DESTDIR=$RPM_BUILD_ROOT install
rm -fr $RPM_BUILD_ROOT/usr/share/gc # docs
%{__rm} -f %{buildroot}%{_libdir}/*.la
%makeinstall
%makeinstall -C libatomic_ops
rm -rf $RPM_BUILD_ROOT/usr/share/gc # docs
rm -rf %{buildroot}%{_datadir}/libatomic_ops/{COPYING,*.txt}
rm -f %{buildroot}%{_libdir}/*.la
%check
%if ! 0%{?qemu_user_space_build}
make check
# fails on i586
make check -C libatomic_ops ||:
%endif
%post -n libgc1 -p /sbin/ldconfig
@ -103,7 +129,7 @@ make check
%files -n libgc1
%defattr(-, root, root)
%doc README.QUICK doc/README*
%doc README.QUICK doc/README.*
%{_libdir}/lib*.so.*
%files devel
@ -111,6 +137,19 @@ make check
%doc doc/[a-z]*
%{_libdir}/lib*.so
%{_libdir}/pkgconfig/*.pc
%{_includedir}/*
%{_includedir}/gc.h
%{_includedir}/gc_cpp.h
%{_includedir}/gc
%files -n libatomic_ops-devel
%defattr(-,root,root,-)
%doc libatomic_ops/AUTHORS libatomic_ops/ChangeLog libatomic_ops/COPYING libatomic_ops/NEWS libatomic_ops/README
%doc libatomic_ops/doc/*.txt
%{_includedir}/atomic_ops.h
%{_includedir}/atomic_ops_malloc.h
%{_includedir}/atomic_ops_stack.h
%{_includedir}/atomic_ops/
%{_libdir}/libatomic_ops.a
%{_libdir}/libatomic_ops_gpl.a
%changelog