From 05920a1caf40a9073f2f93f2506bc8d9effef477 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Fri, 21 Sep 2012 13:01:53 +0200 Subject: [PATCH 1/6] rebuild for gcc 4.7.2 --- libtool.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/libtool.spec b/libtool.spec index 463d502..50e12b3 100644 --- a/libtool.spec +++ b/libtool.spec @@ -1,9 +1,9 @@ -%define gcc_version 4.7.1 +%define gcc_version 4.7.2 Summary: The GNU Portable Library Tool Name: libtool Version: 2.4.2 -Release: 6%{?dist} +Release: 7%{?dist} License: GPLv2+ and LGPLv2+ and GFDL URL: http://www.gnu.org/software/libtool/ Group: Development/Tools @@ -144,6 +144,9 @@ fi %changelog +* Fri Sep 21 2012 Dan Horák - 2.4.2-7 +- rebuild for gcc 4.7.2 + * Thu Jul 19 2012 Fedora Release Engineering - 2.4.2-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild From 653b3fbae0e03dcd65df648f76a9d46e0369c216 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Thu, 4 Oct 2012 08:54:02 +0200 Subject: [PATCH 2/6] Add tar as BuildRequires for libtool - we need this because tar is missing in Fedora installed with minimal profile (Resolves: #794675) --- libtool.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libtool.spec b/libtool.spec index 50e12b3..bd2b4a8 100644 --- a/libtool.spec +++ b/libtool.spec @@ -3,7 +3,7 @@ Summary: The GNU Portable Library Tool Name: libtool Version: 2.4.2 -Release: 7%{?dist} +Release: 8%{?dist} License: GPLv2+ and LGPLv2+ and GFDL URL: http://www.gnu.org/software/libtool/ Group: Development/Tools @@ -15,6 +15,8 @@ Requires(post): /sbin/install-info Requires(preun): /sbin/install-info BuildRequires: autoconf >= 2.59, automake >= 1.9.2, texinfo +# we need this because tar is missing in Fedora installed with minimal profile +BuildRequires: tar Requires: autoconf >= 2.58, automake >= 1.4, sed # make sure we can configure all supported langs BuildRequires: gcc, gcc-c++, libstdc++-devel, gcc-gfortran, gcc-java @@ -144,6 +146,9 @@ fi %changelog +* Thu Oct 04 2012 Pavel Raiskup - 2.4.2-8 +- make the libtool dependant on tar (#794675) + * Fri Sep 21 2012 Dan Horák - 2.4.2-7 - rebuild for gcc 4.7.2 From 5b043ec825310586f8a8d8ad28937ab3629796d5 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Thu, 4 Oct 2012 16:51:44 +0200 Subject: [PATCH 3/6] Fix fedora-review warnings, etc. - bad build circumstances fix - s/${buildroot}/%{buildroot}/ - simplify 'make check' command - ... viz. spec file changelog --- libtool.spec | 80 ++++++++++++++++++++++++++++------------------------ 1 file changed, 43 insertions(+), 37 deletions(-) diff --git a/libtool.spec b/libtool.spec index bd2b4a8..a4630e2 100644 --- a/libtool.spec +++ b/libtool.spec @@ -1,9 +1,9 @@ -%define gcc_version 4.7.2 +%global gcc_version 4.7.2 Summary: The GNU Portable Library Tool Name: libtool Version: 2.4.2 -Release: 8%{?dist} +Release: 9%{?dist} License: GPLv2+ and LGPLv2+ and GFDL URL: http://www.gnu.org/software/libtool/ Group: Development/Tools @@ -16,10 +16,10 @@ Requires(preun): /sbin/install-info BuildRequires: autoconf >= 2.59, automake >= 1.9.2, texinfo # we need this because tar is missing in Fedora installed with minimal profile -BuildRequires: tar +Requires: tar Requires: autoconf >= 2.58, automake >= 1.4, sed # make sure we can configure all supported langs -BuildRequires: gcc, gcc-c++, libstdc++-devel, gcc-gfortran, gcc-java +BuildRequires: libstdc++-devel, gcc-gfortran, gcc-java # /usr/bin/libtool includes paths within gcc's versioned directories # Libtool must be rebuilt whenever a new upstream gcc is built Requires: gcc = %{gcc_version} @@ -34,7 +34,7 @@ If you are developing programs which will use shared libraries, but do not use the rest of the GNU Autotools (such as GNU Autoconf and GNU Automake), you should install the libtool package. -The libtool package also includes all files needed to integrate the GNU +The libtool package also includes all files needed to integrate the GNU Portable Library Tool (libtool) and the GNU Libtool Dynamic Module Loader (ltdl) into a package built using the GNU Autotools (including GNU Autoconf and GNU Automake). @@ -53,11 +53,9 @@ library that provides a consistent, portable interface which simplifies the process of using dynamic modules. These runtime libraries are needed by programs that link directly to the -system-installed ltdl libraries; they are not needed by software built using +system-installed ltdl libraries; they are not needed by software built using the rest of the GNU Autotools (including GNU Autoconf and GNU Automake). - - %package ltdl-devel Summary: Tools needed for development using the GNU Libtool Dynamic Module Loader Group: Development/Libraries @@ -67,47 +65,49 @@ License: LGPLv2+ %description ltdl-devel Static libraries and header files for development with ltdl. - - %prep %setup -n libtool-%{version} -q %patch0 -p1 -b .rpath %build -./bootstrap - export CC=gcc export CXX=g++ export F77=gfortran export CFLAGS="$RPM_OPT_FLAGS -fPIC" -# don't conflict with libtool-1.5, use own directory: -sed -e 's/pkgdatadir="\\${datadir}\/\$PACKAGE"/pkgdatadir="\\${datadir}\/\${PACKAGE}"/' configure > configure.tmp; mv -f configure.tmp configure; chmod a+x configure -./configure --prefix=%{_prefix} --exec-prefix=%{_prefix} --bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} --datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} --libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} --mandir=%{_mandir} --infodir=%{_infodir} -# build not smp safe: -make #%{?_smp_mflags} -for i in ChangeLog.1997 ChangeLog.1998 ChangeLog.1999 ChangeLog.2002; do + +%configure --prefix=%{_prefix} \ + --exec-prefix=%{_prefix} \ + --bindir=%{_bindir} \ + --sbindir=%{_sbindir} \ + --sysconfdir=%{_sysconfdir} \ + --datadir=%{_datadir} \ + --includedir=%{_includedir} \ + --libdir=%{_libdir} \ + --libexecdir=%{_libexecdir} \ + --localstatedir=%{_localstatedir} \ + --mandir=%{_mandir} \ + --infodir=%{_infodir} + +## build not smp safe: +make # %%{?_smp_mflags} + +for i in ChangeLog.1997 ChangeLog.1998 ChangeLog.1999 ChangeLog.2002; do iconv -f ISO_8859-15 -t UTF8 $i > $i.tmp mv -f $i.tmp $i done %check -make check VERBOSE=yes | tee make_check.log 2>&1 # || (cat make_check.log && false) - +make check %install -make install DESTDIR=$RPM_BUILD_ROOT -rm -f %{buildroot}%{_infodir}/dir -rm -f %{buildroot}%{_libdir}/libltdl.la %{buildroot}%{_libdir}/libltdl.a - +make install DESTDIR=%{buildroot} %post /sbin/install-info %{_infodir}/libtool.info.gz %{_infodir}/dir || : %post ltdl -p /sbin/ldconfig - - %preun if [ "$1" = 0 ]; then /sbin/install-info --delete %{_infodir}/libtool.info.gz %{_infodir}/dir || : @@ -115,8 +115,6 @@ fi %postun ltdl -p /sbin/ldconfig - - %files %defattr(-,root,root) %doc AUTHORS COPYING NEWS README THANKS TODO ChangeLog* @@ -133,19 +131,27 @@ fi %defattr(-,root,root) %doc libltdl/COPYING.LIB %{_libdir}/libltdl.so.* +%{_libdir}/libltdl.so %dir %{_datadir}/libtool %files ltdl-devel %defattr(-,root,root) %doc libltdl/README %{_datadir}/libtool/libltdl -%{_libdir}/libltdl.so %{_includedir}/ltdl.h %{_includedir}/libltdl - - %changelog +* Mon Oct 22 2012 Pavel Raiskup - 2.4.2-9 +- fix fedora-review warnings: s/RPM_BUILD_ROOT/buildroot/, remove trailing + white-spaces, move libltdl.so to ltdl sub-package, remove unnecessary BR +- remove unnecessary newlines +- fix the BuildRequire ~> Require only (#79467 related) +- fix weird build circumstances (don't call ./bootstrap, don't call autoconf + manually, do not touch configure script) +- remove 'tee' invocation for copying testsuite output (the file + 'test-suite.log' is good enough) + * Thu Oct 04 2012 Pavel Raiskup - 2.4.2-8 - make the libtool dependant on tar (#794675) @@ -314,8 +320,8 @@ fi * Thu Dec 07 2006 Karsten Hopp 1.5.22-7 - update config.guess, config.sub with newer files from automake-1.10 -- skip over lines in /etc/ld.so.conf.d/* which don't look like absolute paths - (p.e. files from kernel-xen). This avoids having unwanted relative paths in +- skip over lines in /etc/ld.so.conf.d/* which don't look like absolute paths + (p.e. files from kernel-xen). This avoids having unwanted relative paths in lib_search_path * Wed Jul 12 2006 Jesse Keating - 1.5.22-6.1 @@ -454,7 +460,7 @@ fi - rebuild * Thu Jul 17 2003 Jens Petersen - 1.5-5 -- bring back libtool-1.4.2-demo.patch to disable nopic tests on amd64 +- bring back libtool-1.4.2-demo.patch to disable nopic tests on amd64 and s390x again * Tue Jul 15 2003 Owen Taylor @@ -465,7 +471,7 @@ fi [reported by twaugh] - use -nostdlib also when linking with g++ and non-GNU ld in _LT_AC_LANG_CXX_CONFIG [reported by fnasser, patch by aoliva] -- use %%configure with CC and CXX set +- use %%configure with CC and CXX set * Thu Jun 12 2003 Jens Petersen - 1.5-3 - don't use %%configure since target options caused libtool to assume @@ -545,7 +551,7 @@ fi * Fri Sep 13 2002 Nalin Dahyabhai - patch to find the proper libdir on multilib boxes - + * Mon Aug 19 2002 Jens Petersen 1.4.2-12 - don't include demo in doc, specially now that we "make check" (#71609) @@ -666,7 +672,7 @@ fi - disable the --cache-file passing to ltconfig; this breaks the older ltconfig scripts found around. -* Sun Mar 21 1999 Cristian Gafton +* Sun Mar 21 1999 Cristian Gafton - auto rebuild in the new build environment (release 2) * Fri Mar 19 1999 Jeff Johnson From 742d286e386bf261123fe7a0b07a93f8b06054d0 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Wed, 24 Oct 2012 13:56:45 +0200 Subject: [PATCH 4/6] Temporarily disable the test 37 (gcj && ecj check) --- libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch | 13 +++++++++++++ libtool.spec | 11 +++++++++-- 2 files changed, 22 insertions(+), 2 deletions(-) create mode 100644 libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch diff --git a/libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch b/libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch new file mode 100644 index 0000000..bbce6cd --- /dev/null +++ b/libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch @@ -0,0 +1,13 @@ +diff --git a/tests/convenience.at b/tests/convenience.at +index f076e61..b97b5f3 100644 +--- a/tests/convenience.at ++++ b/tests/convenience.at +@@ -231,6 +231,8 @@ AT_SETUP([Java convenience archives]) + LT_AT_EXEC_TAG([GCJ]) + AT_KEYWORDS([libtool]) + ++AT_CHECK([exit 77]) ++ + cat >foo1.java < - 2.4.2-10 +- temporarily disable the 'gcj' tests (#869578) -- this is just to (1) allow + build under f18+ and RHEL-7.0 and (2) don't through out upstream testsuite. + Added patch must be removed once the 'ecj' utility is fixed + * Mon Oct 22 2012 Pavel Raiskup - 2.4.2-9 - fix fedora-review warnings: s/RPM_BUILD_ROOT/buildroot/, remove trailing white-spaces, move libltdl.so to ltdl sub-package, remove unnecessary BR From 4460f68b01a15961562cdebcc1186976e585752f Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Thu, 25 Oct 2012 08:02:37 +0200 Subject: [PATCH 5/6] Another fixes for spec file - disable static compilation of libltdl.a (it was deleted anyway) - do not own /usr/share/libtool/ by libtool-ltdl --- libtool.spec | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/libtool.spec b/libtool.spec index c8490f2..9366c44 100644 --- a/libtool.spec +++ b/libtool.spec @@ -89,7 +89,8 @@ export CFLAGS="$RPM_OPT_FLAGS -fPIC" --libexecdir=%{_libexecdir} \ --localstatedir=%{_localstatedir} \ --mandir=%{_mandir} \ - --infodir=%{_infodir} + --infodir=%{_infodir} \ + --disable-static ## build not smp safe: make # %%{?_smp_mflags} @@ -104,6 +105,10 @@ make check VERBOSE=yes %install make install DESTDIR=%{buildroot} +# info's TOP dir (by default owned by info) +rm -f %{buildroot}%{_infodir}/dir +# *.la files generated by libtool shouldn't be distributed +rm -f %{buildroot}%{_libdir}/libltdl.la %post /sbin/install-info %{_infodir}/libtool.info.gz %{_infodir}/dir || : @@ -133,8 +138,6 @@ fi %defattr(-,root,root) %doc libltdl/COPYING.LIB %{_libdir}/libltdl.so.* -%{_libdir}/libltdl.so -%dir %{_datadir}/libtool %files ltdl-devel %defattr(-,root,root) @@ -142,12 +145,16 @@ fi %{_datadir}/libtool/libltdl %{_includedir}/ltdl.h %{_includedir}/libltdl +# .so files without version must be in -devel subpackage +%{_libdir}/libltdl.so %changelog -* Wed Oct 24 2012 Pavel Raiskup - 2.4.2-10 +* Thu Oct 25 2012 Pavel Raiskup - 2.4.2-10 - temporarily disable the 'gcj' tests (#869578) -- this is just to (1) allow build under f18+ and RHEL-7.0 and (2) don't through out upstream testsuite. Added patch must be removed once the 'ecj' utility is fixed +- libtool-ltdl shouldn't own /usr/share/libtool/ directory +- move the .so file without version back to devel package (sorry for that) * Mon Oct 22 2012 Pavel Raiskup - 2.4.2-9 - fix fedora-review warnings: s/RPM_BUILD_ROOT/buildroot/, remove trailing From c49bc7bb8e449b66bd3401e9b709c195cc7a9184 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Thu, 25 Oct 2012 09:30:36 +0200 Subject: [PATCH 6/6] No, `./configure --disable-static' breaks `make check' --- libtool.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libtool.spec b/libtool.spec index 9366c44..48da088 100644 --- a/libtool.spec +++ b/libtool.spec @@ -89,8 +89,7 @@ export CFLAGS="$RPM_OPT_FLAGS -fPIC" --libexecdir=%{_libexecdir} \ --localstatedir=%{_localstatedir} \ --mandir=%{_mandir} \ - --infodir=%{_infodir} \ - --disable-static + --infodir=%{_infodir} ## build not smp safe: make # %%{?_smp_mflags} @@ -107,8 +106,9 @@ make check VERBOSE=yes make install DESTDIR=%{buildroot} # info's TOP dir (by default owned by info) rm -f %{buildroot}%{_infodir}/dir -# *.la files generated by libtool shouldn't be distributed -rm -f %{buildroot}%{_libdir}/libltdl.la +# *.la *.a files generated by libtool shouldn't be distributed (and the +# `./configure --disable-static' breaks testsuite) +rm -f %{buildroot}%{_libdir}/libltdl.{a,la} %post /sbin/install-info %{_infodir}/libtool.info.gz %{_infodir}/dir || :