Date: Saturday, August 20, 2022 @ 05:00:20 Author: freswa Revision: 454073
archrelease: copy trunk to staging-x86_64 Added: libtool/repos/staging-x86_64/ libtool/repos/staging-x86_64/PKGBUILD (from rev 454072, libtool/trunk/PKGBUILD) libtool/repos/staging-x86_64/disable-lto-link-order2.patch (from rev 454072, libtool/trunk/disable-lto-link-order2.patch) libtool/repos/staging-x86_64/no_hostname.patch (from rev 454072, libtool/trunk/no_hostname.patch) -------------------------------+ PKGBUILD | 74 ++++++++++++++++++++++++++++++++++++++++ disable-lto-link-order2.patch | 56 ++++++++++++++++++++++++++++++ no_hostname.patch | 12 ++++++ 3 files changed, 142 insertions(+) Copied: libtool/repos/staging-x86_64/PKGBUILD (from rev 454072, libtool/trunk/PKGBUILD) =================================================================== --- staging-x86_64/PKGBUILD (rev 0) +++ staging-x86_64/PKGBUILD 2022-08-20 05:00:20 UTC (rev 454073) @@ -0,0 +1,74 @@ +# Maintainer: Giancarlo Razzolini <grazzol...@archlinux.org> +# Maintainer: Frederik Schwan <freswa at archlinux dot org> +# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org> +# Contributor: Allan McRae <al...@archlinux.org> +# Contributor: judd <jvi...@zeroflux.org> + +# NOTE: requires rebuilt with each new gcc version + +pkgname=libtool +pkgver=2.4.7 +pkgrel=4 +_gccver=12.1.1 +pkgdesc='A generic library support script' +arch=(x86_64) +url='https://www.gnu.org/software/libtool' +license=(GPL) +groups=(base-devel) +depends=(sh tar glibc) +makedepends=("gcc>=$_gccver" git help2man) +checkdepends=(gcc-fortran) +provides=("libltdl=$pkgver" "libtool-multilib=$pkgver") +conflicts=(libltdl libtool-multilib) +replaces=(libltdl libtool-multilib) +options=(debug) +_commit=6d7ce133ce54898cf28abd89d167cccfbc3c9b2b +source=(git+https://git.savannah.gnu.org/git/libtool.git#commit=$_commit + git+https://git.savannah.gnu.org/git/gnulib.git + gnulib-bootstrap::git+https://github.com/gnulib-modules/bootstrap.git + no_hostname.patch + disable-lto-link-order2.patch) +sha256sums=('SKIP' + 'SKIP' + 'SKIP' + '693aabb24a6e7ce21fe0b5d14394e19edcb8476663b5afa4463f9fa0df24d946' + 'b6dce6681f223b18a90614edbcdeb00f228abd1216e22c4bd07285321cd2ceb7') + +pkgver() { + cd libtool + git describe --tags | sed 's/-/+/g;s/^v//' +} + +prepare() { + cd libtool + + patch -Np1 -i ${srcdir}/no_hostname.patch + + # test 67 is broken with lto + # this patch removes the -flto flag for this very test + # adapt when -ffat-lto-objects is enabled by Arch + patch -Np1 -i ${srcdir}/disable-lto-link-order2.patch + + git submodule init + git config --local submodule.gnulib.url "$srcdir/gnulib" + git config --local submodule.gl-mod/bootstrap.url "$srcdir/gnulib-bootstrap" + git submodule update + + ./bootstrap +} + +build() { + cd libtool + ./configure --prefix=/usr lt_cv_sys_lib_dlsearch_path_spec="/usr/lib /usr/lib32" + make +} + +check() { + cd libtool + make check gl_public_submodule_commit= +} + +package() { + cd libtool + make DESTDIR="$pkgdir" install +} Copied: libtool/repos/staging-x86_64/disable-lto-link-order2.patch (from rev 454072, libtool/trunk/disable-lto-link-order2.patch) =================================================================== --- staging-x86_64/disable-lto-link-order2.patch (rev 0) +++ staging-x86_64/disable-lto-link-order2.patch 2022-08-20 05:00:20 UTC (rev 454073) @@ -0,0 +1,56 @@ +This patch is derived from +https://src.fedoraproject.org/rpms/libtool/blob/rawhide/f/libtool-2.4.6-disable-lto-link-order2.patch + +Enabling lto will result in failure during test phase, to be precise test 67 will cause it. +Compiler flags for this test (and most likely for rest of them) are inherited from actual build phase. +I'm not sure if this is expected. + +Most distribution disables this test. We try to keep it by stripping lto flags for it. + +Origin for this tests: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=391427 + +--- a/tests/link-order2.at 2015-01-16 19:52:04.000000000 +0100 ++++ b/tests/link-order2.at 2021-11-30 02:01:09.574451906 +0100 +@@ -47,6 +47,8 @@ + AT_KEYWORDS([libtool]) + AT_KEYWORDS([interactive])dnl running 'wrong' may cause a popup window. + ++NO_LTO_CFLAGS=${CFLAGS/ -flto} ++ + eval `$LIBTOOL --config | $EGREP '^(shlibpath_var|allow_undefined_flag)='` + + undefined_setting=-no-undefined +@@ -89,12 +91,12 @@ + EOF + + for file in a0 a1 b; do +- $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file.c ++ $LIBTOOL --mode=compile $CC $CPPFLAGS $NO_LTO_CFLAGS -c $file.c + done +-$CC $CPPFLAGS $CFLAGS -c main.c ++$CC $CPPFLAGS $NO_LTO_CFLAGS -c main.c + + # Build an old, installed library. +-$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o liba0.la a0.lo -rpath $deflibdir ++$LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o liba0.la a0.lo -rpath $deflibdir + $LIBTOOL --mode=install cp liba0.la $deflibdir/liba0.la + $LIBTOOL --mode=clean rm -f liba0.la + +@@ -118,13 +120,13 @@ + esac + test non-libtool,-static-libtool-libs = "$type_of_depdepl,$static" && + static=-all-static +- $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o liba1.la a1.lo -rpath $libdir +- $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o libb.la b.lo liba1.la -rpath $libdir +- AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main$EXEEXT main.$OBJEXT libb.la -la0], ++ $LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o liba1.la a1.lo -rpath $libdir ++ $LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o libb.la b.lo liba1.la -rpath $libdir ++ AT_CHECK([$LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o main$EXEEXT main.$OBJEXT libb.la -la0], + [], [ignore], [ignore]) + LT_AT_EXEC_CHECK([./main]) + # Now test that if we reverse the link order, the program fails. +- AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong$EXEEXT main.$OBJEXT -la0 libb.la], ++ AT_CHECK([$LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o wrong$EXEEXT main.$OBJEXT -la0 libb.la], + [], [ignore], [ignore]) + if test yes, != "$shared_fails,$static"; then + LT_AT_EXEC_CHECK([./wrong], [1], [], [ignore], [|| (exit 1)]) Copied: libtool/repos/staging-x86_64/no_hostname.patch (from rev 454072, libtool/trunk/no_hostname.patch) =================================================================== --- staging-x86_64/no_hostname.patch (rev 0) +++ staging-x86_64/no_hostname.patch 2022-08-20 05:00:20 UTC (rev 454073) @@ -0,0 +1,12 @@ +Index: libtool-2.4.6/m4/libtool.m4 +=================================================================== +--- libtool-2.4.6.orig/m4/libtool.m4 ++++ libtool-2.4.6/m4/libtool.m4 +@@ -728,7 +728,6 @@ _LT_CONFIG_SAVE_COMMANDS([ + cat <<_LT_EOF >> "$cfgfile" + #! $SHELL + # Generated automatically by $as_me ($PACKAGE) $VERSION +-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: + # NOTE: Changes made to this file will be lost: look at ltmain.sh. + + # Provide generalized library-building support services.