From e15c49d89e8b3801b0234c13c0147dbb8c1ff188 Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Sep 08 2008 11:56:51 +0000 Subject: - upstream DONT_ADD_BYTE_AT_END patch - spec cosmetics --- diff --git a/gc-7.1-dont_add_byte.patch b/gc-7.1-dont_add_byte.patch new file mode 100644 index 0000000..6161973 --- /dev/null +++ b/gc-7.1-dont_add_byte.patch @@ -0,0 +1,23 @@ +diff -up gc-7.1/thread_local_alloc.c.dont_add_byte gc-7.1/thread_local_alloc.c +--- gc-7.1/thread_local_alloc.c.dont_add_byte 2007-10-24 19:22:37.000000000 -0500 ++++ gc-7.1/thread_local_alloc.c 2008-09-08 06:53:20.000000000 -0500 +@@ -291,14 +291,16 @@ void GC_mark_thread_local_fls_for(GC_tlf + ptr_t q; + int j; + +- for (j = 1; j < TINY_FREELISTS; ++j) { ++ for (j = 0; j < TINY_FREELISTS; ++j) { + q = p -> ptrfree_freelists[j]; + if ((word)q > HBLKSIZE) GC_set_fl_marks(q); + q = p -> normal_freelists[j]; + if ((word)q > HBLKSIZE) GC_set_fl_marks(q); + # ifdef GC_GCJ_SUPPORT +- q = p -> gcj_freelists[j]; +- if ((word)q > HBLKSIZE) GC_set_fl_marks(q); ++ if (j > 0) { ++ q = p -> gcj_freelists[j]; ++ if ((word)q > HBLKSIZE) GC_set_fl_marks(q); ++ } + # endif /* GC_GCJ_SUPPORT */ + } + } diff --git a/gc.spec b/gc.spec index 095babd..a2cbc05 100644 --- a/gc.spec +++ b/gc.spec @@ -10,7 +10,11 @@ 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) +# To be more backward-compatible abi-wise, TODO: upstream ml reference Patch1: gc-7.0-gcinit.patch +## upstream patches +# http://www.hpl.hp.com/hosted/linux/mail-archives/gc/2008-May/002206.html +Patch100: gc-7.1-dont_add_byte.patch BuildRequires: automake libtool @@ -41,6 +45,8 @@ Provides: libgc-devel = %{version}-%{release} %patch1 -p1 -b .gcinit %endif +%patch100 -p1 -b .dont_add_byte + # refresh auto*/libtool to purge rpaths rm -f libtool libtool.m4 libtoolize --force @@ -63,15 +69,15 @@ make %{?_smp_mflags} %install -rm -rf $RPM_BUILD_ROOT +rm -rf %{buildroot} -make install DESTDIR=$RPM_BUILD_ROOT +make install DESTDIR=%{buildroot} -install -p -D -m644 doc/gc.man $RPM_BUILD_ROOT%{_mandir}/man3/gc.3 +install -p -D -m644 doc/gc.man %{buildroot}%{_mandir}/man3/gc.3 ## Unpackaged files -rm -rf $RPM_BUILD_ROOT%{_datadir}/gc -rm -f $RPM_BUILD_ROOT%{_libdir}/lib*.la +rm -rf %{buildroot}%{_datadir}/gc +rm -f %{buildroot}%{_libdir}/lib*.la %check @@ -79,7 +85,7 @@ make check %clean -rm -rf $RPM_BUILD_ROOT +rm -rf %{buildroot} %post -p /sbin/ldconfig @@ -105,6 +111,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* 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)