dev-build/libtool: Sync with Gentoo

It's from Gentoo commit d6dd999d966e8da7bfd567285ebbc6ebc9fc333e.
This commit is contained in:
Flatcar Buildbot 2025-04-07 07:06:03 +00:00 committed by Krzesimir Nowak
parent d3daf109b0
commit 38795c6996
4 changed files with 0 additions and 206 deletions

View File

@ -1,2 +1 @@
DIST libtool-2.4.7.tar.xz 1016040 BLAKE2B 5e022586337637dd634bd40578ad944bec6e3b8de41f95d55777b90cc88cbc4badb3d76cbf0e638166ece1ea7de828e83590e1e6bac30c1e4b1c254a11a742f2 SHA512 47f4c6de40927254ff9ba452612c0702aea6f4edc7e797f0966c8c6bf0340d533598976cdba17f0bdc64545572e71cd319bbb587aa5f47cd2e7c1d96f873a3da
DIST libtool-2.5.4.tar.xz 1056924 BLAKE2B 47de3c49a690d44d7ddd5e3b5e4090c91dc5fbb9c40fc4a3963e150fb7329326ee3e21b8c149974726171c4b0380028e0efc7a369c4f04357eea46f69852e1cc SHA512 eed207094bcc444f4bfbb13710e395e062e3f1d312ca8b186ab0cbd22dc92ddef176a0b3ecd43e02676e37bd9e328791c59a38ef15846d4eae15da4f20315724

View File

@ -1,31 +0,0 @@
https://bugs.gentoo.org/892635
https://lists.gnu.org/archive/html/libtool-patches/2022-12/msg00004.html
From 414deacee0f564afdf2d7750450274c581330a59 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20B=C3=A9rat?= <fberat@redhat.com>
Date: Wed, 21 Dec 2022 13:14:03 +0100
Subject: [PATCH] tests: Fix grep warning about stray \ before /
Recent version of grep emit a warning if stray \ is found before /.
This leads to the link-order test failure.
* tests/link-order.at: Remove unneeded \ before /
--- a/tests/link-order.at
+++ b/tests/link-order.at
@@ -99,12 +99,12 @@ aix* | interix*) ;; # These systems have different path syntax
case $hardcode_direct$hardcode_direct_absolute in
yesno)
AT_CHECK([if $EGREP relinking stderr; then
- $EGREP " .*\/new\/lib/libb$shared_ext .*\/old\/lib/libcee$shared_ext" stdout
+ $EGREP " .*/new/lib/libb$shared_ext .*/old/lib/libcee$shared_ext" stdout
else :; fi], [0], [ignore], [], [echo "wrong link order"])
;;
*)
AT_CHECK([if $EGREP relinking stderr; then
- $EGREP " -L.*\/new\/lib -lb -L.*\/old\/lib -lcee" stdout
+ $EGREP " -L.*/new/lib -lb -L.*/old/lib -lcee" stdout
else :; fi], [0], [ignore], [], [echo "wrong link order"])
;;
esac
--
2.38.1

View File

@ -1,47 +0,0 @@
https://lists.gnu.org/archive/html/libtool-patches/2022-12/msg00000.html
From d72817b1ee5d7b666bf30b0234e32423252d6ad8 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sat, 10 Dec 2022 02:00:22 +0000
Subject: [PATCH] Allow -Werror and -Werror=* through flag filtering
* build-aux/ltmain.in (func_mode_link): allow -Werror and -Werror=* through
flat filtering at link time.
This is needed for detecting likely-runtime problems with LTO using
e.g. -Werror=odr or -Werror=lto-type-mismatch.
Bug: https://bugs.gentoo.org/884767
Signed-off-by: Sam James <sam@gentoo.org>
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -5408,10 +5408,11 @@ func_mode_link ()
# -fsanitize=* Clang/GCC memory and address sanitizer
# -fuse-ld=* Linker select flags for GCC
# -Wa,* Pass flags directly to the assembler
+ # -Werror, -Werror=* Report (specified) warnings as errors
-64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
- -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*)
+ -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*|-Werror|-Werror=*)
func_quote_arg pretty "$arg"
arg=$func_quote_arg_result
func_append compile_command " $arg"
--- a/build-aux/ltmain.sh
+++ a/build-aux/ltmain.sh
@@ -5408,10 +5408,11 @@ func_mode_link ()
# -fsanitize=* Clang/GCC memory and address sanitizer
# -fuse-ld=* Linker select flags for GCC
# -Wa,* Pass flags directly to the assembler
+ # -Werror, -Werror=* Report (specified) warnings as errors
-64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
- -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*)
+ -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*|-Werror|-Werror=*)
func_quote_arg pretty "$arg"
arg=$func_quote_arg_result
func_append compile_command " $arg"
--
2.38.1

View File

@ -1,127 +0,0 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
# Please bump with dev-libs/libltdl.
# bug #225559
LIBTOOLIZE="true"
WANT_LIBTOOL="none"
inherit autotools prefix multiprocessing
if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://git.savannah.gnu.org/git/libtool.git"
inherit git-r3
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
DESCRIPTION="A shared library tool for developers"
HOMEPAGE="https://www.gnu.org/software/libtool/"
LICENSE="GPL-2"
SLOT="2"
IUSE="vanilla"
# Pull in libltdl directly until we convert packages to the new dep.
RDEPEND="
sys-devel/gnuconfig
>=dev-build/autoconf-2.69:*
>=dev-build/automake-1.13:*
"
DEPEND="${RDEPEND}"
[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man"
# Note that we have more patches in https://gitweb.gentoo.org/proj/elt-patches.git/
# for package builds. The patches here are just those which are definitely fine
# for the system-wide libtool installation as well.
PATCHES=(
# bug #109105
"${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch
# bug #581314
"${FILESDIR}"/${PN}-2.4.6-ppc64le.patch
"${FILESDIR}"/${PN}-2.2.6a-darwin-module-bundle.patch
"${FILESDIR}"/${PN}-2.4.6-darwin-use-linux-version.patch
"${FILESDIR}"/${PN}-2.4.7-werror-lto.patch
"${FILESDIR}"/${PN}-2.4.7-grep-3.8.patch
)
src_prepare() {
if [[ ${PV} == *9999 ]] ; then
eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch # bug #650876
./bootstrap || die
else
PATCHES+=(
"${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch # bug #650876
)
fi
# WARNING: File build-aux/ltmain.sh is read-only; trying to patch anyway
chmod +w build-aux/ltmain.sh || die
if use vanilla ; then
eapply_user
return 0
else
default
fi
if use prefix ; then
# seems that libtool has to know about EPREFIX a little bit
# better, since it fails to find prefix paths to search libs
# from, resulting in some packages building static only, since
# libtool is fooled into thinking that libraries are unavailable
# (argh...). This could also be fixed by making the gcc wrapper
# return the correct result for -print-search-dirs (doesn't
# include prefix dirs ...).
eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch
eprefixify m4/libtool.m4
fi
pushd libltdl >/dev/null || die
AT_NOELIBTOOLIZE=yes eautoreconf
popd >/dev/null || die
AT_NOELIBTOOLIZE=yes eautoreconf
# Make sure timestamps don't trigger a rebuild of man pages. #556512
if [[ ${PV} != *9999 ]] ; then
touch doc/*.1 || die
export HELP2MAN=true
fi
}
src_configure() {
# the libtool script uses bash code in it and at configure time, tries
# to find a bash shell. if /bin/sh is bash, it uses that. this can
# cause problems for people who switch /bin/sh on the fly to other
# shells, so just force libtool to use /bin/bash all the time.
# Do not bother hardcoding the full path to sed.
# Just rely on $PATH. bug #574550
export CONFIG_SHELL="${EPREFIX}"/bin/bash
export ac_cv_path_SED="sed"
export ac_cv_path_EGREP="grep -E"
export ac_cv_path_EGREP_TRADITIONAL="grep -E"
export ac_cv_path_FGREP="grep -F"
export ac_cv_path_GREP="grep"
export ac_cv_path_lt_DD="dd"
[[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g"
ECONF_SOURCE="${S}" econf ${myconf} --disable-ltdl-install
}
src_test() {
emake check TESTSUITEFLAGS="--jobs=$(get_makeopts_jobs)"
}
src_install() {
default
local x
while read -d $'\0' -r x ; do
ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die
done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0)
}