[arch-commits] Commit in libtool/repos (4 files)
Frederik Schwan
freswa at gemini.archlinux.org
Sat Aug 20 05:00:21 UTC 2022
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 <grazzolini at archlinux.org>
+# Maintainer: Frederik Schwan <freswa at archlinux dot org>
+# Contributor: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Contributor: Allan McRae <allan at archlinux.org>
+# Contributor: judd <jvinet at 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.
More information about the arch-commits
mailing list