diff --git a/gc.atomic-locks.patch b/gc.atomic-locks.patch new file mode 100644 index 0000000..7f1e39c --- /dev/null +++ b/gc.atomic-locks.patch @@ -0,0 +1,36 @@ +Use gcc build-in atomic functions, +the selfmade versions will not work on powerpc + +--- + include/private/gc_locks.h | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +--- a/include/private/gc_locks.h ++++ b/include/private/gc_locks.h +@@ -88,6 +88,18 @@ + /* acquisition and release. We need this for correct operation of the */ + /* incremental GC. */ + # ifdef __GNUC__ ++#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 1 ++static inline int GC_test_and_set(volatile unsigned int *addr) ++{ ++#define GC_TEST_AND_SET_DEFINED ++ return (int)__sync_lock_test_and_set(addr, 1); ++} ++static inline void GC_clear(volatile unsigned int *addr) ++{ ++#define GC_CLEAR_DEFINED ++ __sync_lock_test_and_set(addr, 0); ++} ++#else /* ! __GNUC__ 4.1+ */ + # if defined(I386) + inline static int GC_test_and_set(volatile unsigned int *addr) { + int oldval; +@@ -288,6 +300,7 @@ + return ret; + } + # endif ++# endif /* !__GNUC__ 4.1+ */ + # endif /* __GNUC__ */ + # if (defined(ALPHA) && !defined(__GNUC__)) + # ifndef OSF1 diff --git a/gc.changes b/gc.changes index 3b81a6b..4865cec 100644 --- a/gc.changes +++ b/gc.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Tue Nov 11 09:35:00 CET 2008 - olh@suse.de + +- use gcc built-in atomic functions, to fix w3m build + +------------------------------------------------------------------- +Thu Oct 30 12:34:56 CET 2008 - olh@suse.de + +- obsolete old -XXbit packages (bnc#437293) + ------------------------------------------------------------------- Mon Feb 25 06:37:27 CET 2008 - crrodriguez@suse.de diff --git a/gc.spec b/gc.spec index affa01d..d94525e 100644 --- a/gc.spec +++ b/gc.spec @@ -2,9 +2,16 @@ # spec file for package gc (Version 6.6) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. -# This file and all modifications and additions to the pristine -# package are under the same license as the package itself. # +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + # Please submit bugfixes or comments via http://bugs.opensuse.org/ # @@ -13,8 +20,16 @@ Name: gc Version: 6.6 -Release: 96 +Release: 136 AutoReqProv: on +# bug437293 +%ifarch ppc64 +Obsoletes: boehm-gc-64bit +%endif +%ifarch %ix86 ppc +Obsoletes: boehm-gc-32bit +%endif +# Group: Development/Libraries/C and C++ License: BSD 3-Clause Url: http://www.hpl.hp.com/personal/Hans_Boehm/gc/ @@ -25,6 +40,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: gcc-c++ Patch: gcc4.patch Patch1: configure.patch +Patch2: gc.atomic-locks.patch %description The Boehm-Demers-Weiser conservative garbage collector can be used as a @@ -42,6 +58,7 @@ Authors: Alan J. Demers %package devel +License: BSD 3-Clause Summary: A garbage collector for C and C++ Group: Development/Libraries/C and C++ Provides: gc:/usr/include/gc/gc.h @@ -67,6 +84,7 @@ Authors: %setup -n %name%version %patch %patch1 +%patch2 -p1 %build #%{suse_update_config -f} @@ -106,11 +124,15 @@ rm -rf $RPM_BUILD_ROOT %{_includedir}/* %changelog +* Tue Nov 11 2008 olh@suse.de +- use gcc built-in atomic functions, to fix w3m build +* Thu Oct 30 2008 olh@suse.de +- obsolete old -XXbit packages (bnc#437293) * Mon Feb 25 2008 crrodriguez@suse.de - fix library-without-ldconfig-postin errors * Wed Nov 21 2007 uli@suse.de - implicit malloc() redirection breaks some apps (bug #335123) -* Sun May 27 2007 ro@suse.de +* Sat May 26 2007 ro@suse.de - split off devel package * Mon Jan 30 2006 uli@suse.de - enabled malloc redirection, C++ support