@ -7,9 +7,42 @@
Summary: The GNU Portable Library Tool
Summary: The GNU Portable Library Tool
Name: libtool
Name: libtool
Version: 2.4.6
Version: 2.4.7
Release: 45%{?dist}
Release: 12%{?dist}
License: GPLv2+ and LGPLv2+ and GFDL
# To help future rebase, the following licenses were seen in the following files/folders:
# '*' is anything that was not explicitly listed earlier in the folder
#
# From libtool package:
# usr/bin/:
# libtool - GPL-2.0-or-later WITH Libtool-exception AND MIT
# libtoolize - GPL-2.0-or-later AND MIT
# usr/share/:
# aclocal/* - FSFULLR
# doc/libtool:
# AUTHORS - GPL-2.0-or-later
# * - FSFAP
# info/* - GFDL-1.3-or-later
# libtool/build-aux/:
# {compile,depcomp,missing} - GPL-2.0-or-later WITH Autoconf-exception-generic
# config.{guess,sub} - GPL-3.0-or-later WITH Autoconf-exception-generic-3.0
# install-sh - X11 AND LicenseRef-Fedora-public-domain
# ltmain.sh - GPL-2.0-or-later WITH Libtool-exception AND MIT
# usr/share/man/man1/*: generated from usr/bin/libtool{,ize} using help2man
#
# From libtool-ltdl package:
# usr/lib64/
# * - LGPL-2.0-or-later WITH Libtool-exception
#
# From libtool-ltdl-devel package:
# usr/include/* - LGPL-2.0-or-later WITH Libtool-exception
# usr/share/:
# README - FSFAP
# {*.c,*.h,Makefile.am,configure.ac,ltdl.mk} - LGPL-2.0-or-later WITH Libtool-exception
# Makefile.in - FSFULLRWD
# aclocal.m4 - FSFULLR AND FSFULLRWD
# configure - FSFUL
License: GPL-2.0-or-later AND GPL-2.0-or-later WITH Autoconf-exception-generic AND GPL-2.0-or-later WITH Libtool-exception AND LGPL-2.0-or-later WITH Libtool-exception AND GPL-3.0-or-later WITH Autoconf-exception-generic-3.0 AND MIT AND FSFAP AND FSFULLR AND FSFULLRWD AND GFDL-1.3-or-later AND X11 AND LicenseRef-Fedora-public-domain
URL: http://www.gnu.org/software/libtool/
URL: http://www.gnu.org/software/libtool/
Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
@ -18,30 +51,37 @@ Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
# ~> remove possibly once #1158915 gets fixed somehow
# ~> remove possibly once #1158915 gets fixed somehow
Patch0: libtool-2.4.5-rpath.patch
Patch0: libtool-2.4.5-rpath.patch
# ~> downstream (TODO)
Patch1: libtool-2.4.6-am-1.16-test.patch
# ~> upstream 702a97fbb
Patch2: libtool-2.4.6-specs.patch
# See the rhbz#1289759 and rhbz#1214506. We disable hardening namely because
# See the rhbz#1289759 and rhbz#1214506. We disable hardening namely because
# that bakes the CFLAGS/LDFLAGS into installed /bin/libtool and ltmain.sh files.
# that bakes the CFLAGS/LDFLAGS into installed /bin/libtool and ltmain.sh files.
# At the same time we want to have libltdl.so hardened. Downstream-only patch.
# At the same time we want to have libltdl.so hardened. Downstream-only patch.
%undefine _hardened_build
%undefine _hardened_build
Patch3: libtool-2.4.6-hardening.patch
Patch1: libtool-2.4.7-hardening.patch
# rhbz#1622611, upstream 350082b6aa89f9ef603fcebbb4cf33f15a743f2f
Patch4: libtool-2.4.6-fatal-handler.patch
# The testsuite seems to not properly handle template instantiation and as
# The testsuite seems to not properly handle template instantiation and as
# a result fails. libtool itself appears to be OK from my by-hand testing. (by Jeff Law)
# a result fails. libtool itself appears to be OK from my by-hand testing. (by Jeff Law)
# Disable LTO for link-order2 test (Related: #1988112)
# Disable LTO for link-order2 test (Related: #1988112)
Patch5: libtool-2.4.6-disable-lto-link-order2.patch
Patch2: libtool-2.4.6-disable-lto-link-order2.patch
# non-PIC libraries are not supported on ARMv7
# Since we removed "-fPIC" from global CFLAGS this test fails on this arch (as expected)
# Please refer to the following ticket regarding PIC support on ARM:
# https://bugs.launchpad.net/ubuntu/+source/gcc-4.4/+bug/503448
Patch3: libtool-2.4.6-disable_non-pic_arm.patch
# rhbz#2047389, patch sent upstream
# https://lists.gnu.org/archive/html/libtool-patches/2022-02/msg00000.html
Patch4: libtool-2.4.6-keep-compiler-deps.patch
# Patch sent upstream
# https://lists.gnu.org/archive/html/libtool-patches/2022-12/msg00004.html
Patch5: 0001-tests-Fix-grep-warning-about-stray-before.patch
%if ! 0%{?_module_build}
%if ! 0%{?_module_build}
Patch100: libtool-nodocs.patch
Patch100: libtool-nodocs.patch
%endif
%endif
Patch101: libtool-c99.patch
# /usr/bin/libtool includes paths within gcc's versioned directories
# /usr/bin/libtool includes paths within gcc's versioned directories
# Libtool must be rebuilt whenever a new upstream gcc is built
# Libtool must be rebuilt whenever a new upstream gcc is built
# Starting with gcc 7 gcc in Fedora is packaged so that only major
# Starting with gcc 7 gcc in Fedora is packaged so that only major
@ -106,51 +146,27 @@ Static libraries and header files for development with ltdl.
%prep
%prep
%setup -n libtool-%{version} -q
%autosetup -n libtool-%{version} -p1
%patch0 -p1 -b .rpath
%patch1 -p1 -b .test
%patch2 -p1 -b .gcc-specs
%patch3 -p1 -b .ltdl-hardening
%patch4 -p1 -b .fatal-handler
%patch5 -p1 -b .disable-lto-link-order2
%if ! 0%{?_module_build}
%patch100 -p1 -b .nodocs
%endif
autoreconf -v
autoreconf -v
%build
%build
export CC=gcc
export CXX=g++
%configure
export F77=gfortran
export CFLAGS="$RPM_OPT_FLAGS -fPIC -fstack-protector-strong"
%make_build \
%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}
make %{?_smp_mflags} \
CUSTOM_LTDL_CFLAGS="%_hardening_cflags" \
CUSTOM_LTDL_CFLAGS="%_hardening_cflags" \
CUSTOM_LTDL_LDFLAGS="%_hardening_ldflags"
CUSTOM_LTDL_LDFLAGS="%_hardening_ldflags"
%check
%check
%if %{with check}
%if %{with check}
make check VERBOSE=yes || { cat testsuite.log ; false ; }
make check VERBOSE=yes || { cat tests/testsuite.dir/*/testsuite.log ; false ; }
%endif
%endif
%install
%install
make install DESTDIR=%{buildroot}
%make_install
# info's TOP dir (by default owned by info)
# info's TOP dir (by default owned by info)
rm -f %{buildroot}%{_infodir}/dir
rm -f %{buildroot}%{_infodir}/dir
# *.la *.a files generated by libtool shouldn't be distributed (and the
# *.la *.a files generated by libtool shouldn't be distributed (and the
@ -188,23 +204,81 @@ rm -f %{buildroot}%{_libdir}/libltdl.{a,la}
%changelog
%changelog
* Tue Jan 11 2022 Marek Kulik <mkulik@redhat.com> - 2.4.6-45
* Tue Nov 26 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 2.4.7-12
- Rebuilt for MSVSphere 10
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 2.4.7-12
- Bump release for June 2024 mass rebuild
* Fri May 31 2024 Frédéric Bérat <fberat@redhat.com> - 2.4.7-11
- Rework hardening patch to include loaders. (RHEL-33501)
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Jan 15 2024 Jakub Jelinek <jakub@redhat.com> - 2.4.7-9
- bump: for gcc 14.* in rawhide
* Tue Aug 08 2023 Frederic Berat <fberat@redhat.com> - 2.4.7-8
- Migrate to SPDX licenses (#2222091).
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Jan 16 2023 Jakub Jelinek <jakub@redhat.com> - 2.4.7-5
- bump: for gcc 13.* in rawhide
* Tue Jan 10 2023 Florian Weimer <fweimer@redhat.com> - 2.4.7-4
- C99 compatibility fix in the testsuite
* Wed Dec 21 2022 Frederic Berat <fberat@redhat.com> - 2.4.7-3
- Fix test failure due to grep update
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Mar 21 2022 Frederic Berat <fberat@redhat.com> - 2.4.7-1
- Rebase to libtool 2.4.7 (#2065004)
* Thu Feb 17 2022 Frederic Berat <fberat@redhat.com> - 2.4.6-50
- Keep compiler generated list of library dependencies.
* Sun Feb 13 2022 Jeff Law <jeffreyalaw@gmail.com> - 2.4.6-49
- Re-enable LTO (completing change from Nov 29, 2021)
* Tue Feb 01 2022 Frederic Berat <fberat@redhat.com> - 2.4.6-48
- Add support for "-fsanitize", rhbz#2024647
- Add support for "-fuse-ld", rhbz#2024647
- Use make macros (based on Tom Stellard work for f33 and Timm Bäder)
https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
- Disable non-PIC test for ARM as this is not supported on this arch
- Use autosetup
- Use plain %%configure
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-47
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Jan 10 2022 Jakub Jelinek <jakub@redhat.com> - 2.4.6-46
- bump: for gcc 12.* in rawhide
* Mon Nov 29 2021 Marek Kulik <mkulik@redhat.com> - 2.4.6-45
- Enable LTO build
- Enable LTO build
- Add disable-lto-link-order2.patch to pass tests
- Add disable-lto-link-order2.patch to pass tests
- Resolves: #1988112
* Mon Aug 23 2021 Ondrej Dubaj <odubaj@redhat.com> - 2.4.6-44
* Mon Oct 04 2021 Ondrej Dubaj <odubaj@redhat.com> - 2.4.6-44
- added -fstack-protector-strong to CFLAGS (#1988402)
- rebuild with automake-1.16.5
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.4.6-43
* Mon Aug 30 2021 Ondrej Dubaj <odubaj@redhat.com> - 2.4.6-43
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
- rebuild with automake-1.16.4
Related: rhbz#1991688
* Fri Aug 6 2021 Florian Weimer <fweimer@redhat.com> - 2.4.6-42
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org > - 2.4.6-42
- Rebuild to pick up new build flags from redhat-rpm-config (#1984652)
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 2.4.6-41
* Thu Mar 25 2021 Ondrej Dubaj <odubaj @redhat.com> - 2.4.6-41
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
- rebuild with automake-1.16.3
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-40
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-40
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild