From 4d13ec8b1d8b7c2cb898921f05242faa77e2135b Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Jul 24 2007 22:31:33 +0000 Subject: - gcinit patch, ABI compatibility (#248700) --- diff --git a/gc-7.0-gcinit.patch b/gc-7.0-gcinit.patch new file mode 100644 index 0000000..2ddeb25 --- /dev/null +++ b/gc-7.0-gcinit.patch @@ -0,0 +1,24 @@ +--- gc-7.0/malloc.c~ 2007-06-06 22:48:35.000000000 +0200 ++++ gc-7.0/malloc.c 2007-07-24 12:56:29.000000000 +0200 +@@ -263,6 +263,9 @@ + size_t lg; + DCL_LOCK_STATE; + ++ if (!GC_is_initialized) ++ GC_init(); ++ + if(SMALL_OBJ(lb)) { + lg = GC_size_map[lb]; + opp = (void **)&(GC_objfreelist[lg]); +--- gc-7.0/thread_local_alloc.c~ 2007-06-28 07:05:00.000000000 +0200 ++++ gc-7.0/thread_local_alloc.c 2007-07-24 13:01:28.000000000 +0200 +@@ -141,6 +141,9 @@ + void *result; + void **tiny_fl; + ++ if (!GC_is_initialized) ++ GC_init(); ++ + # if defined(REDIRECT_MALLOC) && !defined(USE_PTHREAD_SPECIFIC) + GC_key_t k = GC_thread_key; + if (EXPECT(0 == k, 0)) { diff --git a/gc.spec b/gc.spec index 2ca043b..706198c 100644 --- a/gc.spec +++ b/gc.spec @@ -3,13 +3,15 @@ Summary: A garbage collector for C and C++ Name: gc Version: 7.0 -Release: 1%{?dist} +Release: 2%{?dist} Group: System Environment/Libraries License: BSD Url: http://www.hpl.hp.com/personal/Hans_Boehm/gc/ Source0: http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Patch1: gc-7.0-gcinit.patch + # rpmforge compatibility Obsoletes: libgc < %{version}-%{release} Provides: libgc = %{version}-%{release} @@ -33,6 +35,8 @@ Provides: libgc-devel = %{version}-%{release} %prep %setup -q +%patch1 -p1 -b .gcinit + %build @@ -90,6 +94,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* 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