From 21ab67c6dea419e69c18209940025cec90031c5e Mon Sep 17 00:00:00 2001 From: Rex Dieter Date: Fri, 16 Sep 2005 16:07:48 +0000 Subject: [PATCH] - no-undefined patch, libtool madness (#166344) --- gc-6.6-no-undefined.patch | 67 +++++++++++++++++++++++++++++++++++++++ gc.spec | 28 ++++++++++++---- gc6.5-opendl.patch | 64 ------------------------------------- 3 files changed, 88 insertions(+), 71 deletions(-) create mode 100644 gc-6.6-no-undefined.patch delete mode 100644 gc6.5-opendl.patch diff --git a/gc-6.6-no-undefined.patch b/gc-6.6-no-undefined.patch new file mode 100644 index 0000000..518f442 --- /dev/null +++ b/gc-6.6-no-undefined.patch @@ -0,0 +1,67 @@ +--- gc6.6/Makefile.in.no-undefined 2005-09-09 11:34:45.000000000 -0500 ++++ gc6.6/Makefile.in 2005-09-16 10:35:48.700954361 -0500 +@@ -340,15 +340,15 @@ + # linuxthread semaphore functions get linked: + libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) + libgc_la_DEPENDENCIES = @addobjs@ +-libgc_la_LDFLAGS = -version-info 1:2:0 ++libgc_la_LDFLAGS = -version-info 1:2:0 -no-undefined -Wl,--no-undefined + EXTRA_libgc_la_SOURCES = alpha_mach_dep.S \ + mips_sgi_mach_dep.s mips_ultrix_mach_dep.s powerpc_darwin_mach_dep.s \ + rs6000_mach_dep.s sparc_mach_dep.S sparc_netbsd_mach_dep.s \ + sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s + + libgccpp_la_SOURCES = gc_cpp.cc +-libgccpp_la_LIBADD = $(THREADDLLIBS) $(UNWINDLIBS) +-libgccpp_la_LDFLAGS = -version-info 1:2:0 ++libgccpp_la_LIBADD = ./libgc.la ++libgccpp_la_LDFLAGS = -version-info 1:2:0 -no-undefined -Wl,--no-undefined + AM_CXXFLAGS = @GC_CFLAGS@ + AM_CFLAGS = @GC_CFLAGS@ + @CPLUSPLUS_FALSE@extra_checks = +@@ -356,9 +356,9 @@ + + # gctest_OBJECTS = test.o + gctest_SOURCES = tests/test.c +-gctest_LDADD = ./libgc.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) ++gctest_LDADD = ./libgc.la $(EXTRA_TEST_LIBS) + test_cpp_SOURCES = tests/test_cpp.cc +-test_cpp_LDADD = ./libgc.la ./libgccpp.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) ++test_cpp_LDADD = ./libgccpp.la $(EXTRA_TEST_LIBS) + TESTS = gctest $(extra_checks) + all_objs = @addobjs@ $(libgc_la_OBJECTS) + @COMPILER_XLC_FALSE@ASM_CPP_OPTIONS = -Wp,-P -x assembler-with-cpp +--- gc6.6/Makefile.am.no-undefined 2005-05-28 23:54:12.000000000 -0500 ++++ gc6.6/Makefile.am 2005-09-16 10:35:02.816840997 -0500 +@@ -57,7 +57,7 @@ + # linuxthread semaphore functions get linked: + libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) + libgc_la_DEPENDENCIES = @addobjs@ +-libgc_la_LDFLAGS = -version-info 1:2:0 ++libgc_la_LDFLAGS = -version-info 1:2:0 -no-undefined -Wl,--no-undefined + + EXTRA_libgc_la_SOURCES = alpha_mach_dep.S \ + mips_sgi_mach_dep.s mips_ultrix_mach_dep.s powerpc_darwin_mach_dep.s \ +@@ -65,8 +65,8 @@ + sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s + + libgccpp_la_SOURCES = gc_cpp.cc +-libgccpp_la_LIBADD = $(THREADDLLIBS) $(UNWINDLIBS) +-libgccpp_la_LDFLAGS = -version-info 1:2:0 ++libgccpp_la_LIBADD = ./libgc.la ++libgccpp_la_LDFLAGS = -version-info 1:2:0 -no-undefined -Wl,--no-undefined + + EXTRA_DIST += alpha_mach_dep.S mips_sgi_mach_dep.s sparc_mach_dep.S + +@@ -91,9 +91,9 @@ + ## are included in the distribution + # gctest_OBJECTS = test.o + gctest_SOURCES = tests/test.c +-gctest_LDADD = ./libgc.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) ++gctest_LDADD = ./libgc.la $(EXTRA_TEST_LIBS) + test_cpp_SOURCES = tests/test_cpp.cc +-test_cpp_LDADD = ./libgc.la ./libgccpp.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) ++test_cpp_LDADD = ./libgccpp.la $(EXTRA_TEST_LIBS) + + TESTS = gctest $(extra_checks) + diff --git a/gc.spec b/gc.spec index b575ee8..2fa181f 100644 --- a/gc.spec +++ b/gc.spec @@ -1,17 +1,19 @@ -# $Id: gc.spec,v 1.12 2005/09/13 12:37:23 rdieter Exp $ +# $Id: gc.spec,v 1.13 2005/09/16 16:07:48 rdieter Exp $ Summary: C++ Garbage Collector Name: gc Version: 6.6 -Release: 2%{?dist} +Release: 3%{?dist} Group: System Environment/Libraries License: BSD Url: http://www.hpl.hp.com/personal/Hans_Boehm/gc/ Source: http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc6.6.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -Patch1: gc6.5-opendl.patch +# force no undefined symbols (#166344) +Patch1: gc-6.6-no-undefined.patch +BuildRequires: libtool automake autoconf %description @@ -27,9 +29,16 @@ Libraries and header files for %{name} development. %prep -%setup -n %{name}%{version} +%setup -q -n %{name}%{version} -#patch1 -p1 -b .opendl +%patch1 -p1 -b .no-undefined + +cp -f %{_datadir}/aclocal/libtool.m4 . +libtoolize --copy --force +aclocal +automake +autoconf +#autoheader %build @@ -44,6 +53,7 @@ Libraries and header files for %{name} development. make %{?_smp_mflags} + %check || : make check @@ -51,7 +61,7 @@ make check %install rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT +make install DESTDIR=$RPM_BUILD_ROOT install -p -D -m644 doc/gc.man $RPM_BUILD_ROOT%{_mandir}/man3/gc.3 @@ -71,7 +81,8 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) -%doc doc/README doc/README.changes doc/README.contributors +%doc doc/README doc/README.changes doc/README.contributors +%doc doc/README.environment doc/README.linux %{_libdir}/lib*.so.* %files devel @@ -83,6 +94,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Wed Sep 14 2005 Rex Dieter 6.6-3 +- no-undefined patch, libtool madness (#166344) + * Mon Sep 12 2005 Rex Dieter 6.6-2 - drop opendl patch (doesn't appear to be needed anymore) diff --git a/gc6.5-opendl.patch b/gc6.5-opendl.patch deleted file mode 100644 index 801e384..0000000 --- a/gc6.5-opendl.patch +++ /dev/null @@ -1,64 +0,0 @@ ---- gc6.5/Makefile.in.opendl 2005-05-16 18:28:28.000000000 -0500 -+++ gc6.5/Makefile.in 2005-05-25 10:27:00.341398988 -0500 -@@ -336,7 +336,7 @@ - - # Include THREADDLLIBS here to ensure that the correct versions of - # linuxthread semaphore functions get linked: --libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) -+libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) - libgc_la_DEPENDENCIES = @addobjs@ - libgc_la_LDFLAGS = -version-info 1:2:0 - EXTRA_libgc_la_SOURCES = alpha_mach_dep.S \ -@@ -345,7 +345,7 @@ - sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s - - libgccpp_la_SOURCES = gc_cpp.cc --libgccpp_la_LIBADD = $(THREADDLLIBS) $(UNWINDLIBS) -+libgccpp_la_LIBADD = $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) - libgccpp_la_LDFLAGS = -version-info 1:2:0 - AM_CXXFLAGS = @GC_CFLAGS@ - AM_CFLAGS = @GC_CFLAGS@ -@@ -354,9 +354,9 @@ - - # gctest_OBJECTS = test.o - gctest_SOURCES = tests/test.c --gctest_LDADD = ./libgc.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) -+gctest_LDADD = ./libgc.la - test_cpp_SOURCES = tests/test_cpp.cc --test_cpp_LDADD = ./libgc.la ./libgccpp.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) -+test_cpp_LDADD = ./libgc.la ./libgccpp.la - TESTS = gctest $(extra_checks) - all_objs = @addobjs@ $(libgc_la_OBJECTS) - LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) \ ---- gc6.5/Makefile.am.opendl 2005-05-16 17:11:08.000000000 -0500 -+++ gc6.5/Makefile.am 2005-05-25 10:25:35.953868785 -0500 -@@ -55,7 +55,7 @@ - - # Include THREADDLLIBS here to ensure that the correct versions of - # linuxthread semaphore functions get linked: --libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) -+libgc_la_LIBADD = @addobjs@ $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) - libgc_la_DEPENDENCIES = @addobjs@ - libgc_la_LDFLAGS = -version-info 1:2:0 - -@@ -65,7 +65,7 @@ - sparc_sunos4_mach_dep.s ia64_save_regs_in_stack.s - - libgccpp_la_SOURCES = gc_cpp.cc --libgccpp_la_LIBADD = $(THREADDLLIBS) $(UNWINDLIBS) -+libgccpp_la_LIBADD = $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) - libgccpp_la_LDFLAGS = -version-info 1:2:0 - - EXTRA_DIST += alpha_mach_dep.S mips_sgi_mach_dep.s sparc_mach_dep.S -@@ -91,9 +91,9 @@ - ## are included in the distribution - # gctest_OBJECTS = test.o - gctest_SOURCES = tests/test.c --gctest_LDADD = ./libgc.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) -+gctest_LDADD = ./libgc.la - test_cpp_SOURCES = tests/test_cpp.cc --test_cpp_LDADD = ./libgc.la ./libgccpp.la $(THREADDLLIBS) $(UNWINDLIBS) $(EXTRA_TEST_LIBS) -+test_cpp_LDADD = ./libgc.la ./libgccpp.la - - TESTS = gctest $(extra_checks) -