From patchwork Fri Dec 9 21:47:12 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adolf Belka X-Patchwork-Id: 6285 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4NTPkl00YKz3wkR for ; Fri, 9 Dec 2022 21:47:26 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4NTPkh4vPNzY1; Fri, 9 Dec 2022 21:47:24 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4NTPkh34gZz30CB; Fri, 9 Dec 2022 21:47:24 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384 client-signature ECDSA (P-384) client-digest SHA384) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4NTPkg017nz2xQQ for ; Fri, 9 Dec 2022 21:47:22 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4NTPkf05h3zJy; Fri, 9 Dec 2022 21:47:21 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1670622442; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=A7HClt0L2ZHFwpQAUGp5GBoQjIIYszcH6kw4/WjcExU=; b=aoB3CBvsjLFmRAgEx/p2IJ2RnUgginNM8Ci+Xvw8Z8g/XdgdkQBnvYaAhewLY4UnCFCCNl x187BA5pVAKfwGBQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1670622442; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=A7HClt0L2ZHFwpQAUGp5GBoQjIIYszcH6kw4/WjcExU=; b=fnydVoE4sDZooC7eCa1l3K3u0xIXC0Siv6Digju9yASh6NWFT3vIWBra/XB9iR/WTBqixJ YzudwFpE29H3he3l1KVBVVp71/ogBqud8op5aYiXLtpwyjdDv8C/aAEWpYHZxpTjcz7z/v q39aoN2KHrJ+01GgEL6w6lRgd36dkAVRf2kgi/IcXy8htCLglXXzbO5WLpCb6nk8Gqhc+l kS9QS5PU2159uLVpzasJP4as4o3AgDgkhgZHB73gm8SmbqogFzEiFxE88uVmtKM7J65yAj q8sjKq6YqadVHc6k0qEw0ZTPF0CBtxpJxXllBplNkl3TYP08N1GK4sF193PgLA== From: Adolf Belka To: development@lists.ipfire.org Subject: [PATCH 1/2] libtool: Update to version 2.4.7 Date: Fri, 9 Dec 2022 22:47:12 +0100 Message-Id: <20221209214713.3317073-1-adolf.belka@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" - Update from version 2.4.6 (Feb 2015) to 2.4.7 (Mar 2022) - Update of rootfile - The shebang in the libtoolize script has changed from ! /bin/sh to ! /usr/bin/env sh because apparently the previous version presented challenges for containerised environments. For IPFire build it meant that using libtoolize in the build of libxcrypt failed because it could not deal with the changed shebang. - Patch created to change the shebang for libtoolize.in back to the version in 2.4.6 and earlier. - The change of libtoolize.in then caused the libtool build to try and rebuild the man page for it but this fails as help2man is required for this. There is no option in the configure to not build the docs so hence there is an associated patch with this one that build help2man but the rootfile is completely commented out as it is only required for the build - Added --disable-static to the configure options - Changelog Noteworthy changes in release 2.4.7 (2022-03-16) [stable] New features: - Libtool script now supports (configure-time and runtime) ARFLAGS variable, which obsoletes AR_FLAGS. This is due to naming conventions among other *FLAGS and to be consistent with Automake's ARFLAGS. - Gnulib testsuite is enabled and run during 'make check'. - Support the Windows version of the Intel C Compiler (icl) in libtool script. - Pass '-fsanitize=*' flags for GCC and LLVM, and '-specs=*' for GCC to linker. - Pass '-Xassembler=*' and '-Wa,*' flag to compilers and linkers. - The variable 'FILECMD' with default value of '/usr/bin/file' was used to replace existing hard coded references to '/usr/bin/file'. - Add MidnightBSD support. Important incompatible changes: - Libtool changed ARFLAGS/AR_FLAGS default from 'cru' to 'cr'. - Do not pass '-pthread' to Solaris linker. - 'libtool' and 'libtoolize' scripts now use '#! /usr/bin/env sh' shebang. Previously '#! /bin/sh' was used, which presents challenges for containerized environments. Bug fixes: - Fix significant slowdown of libtoolize for certain projects (regression introduced in 2.4.3 release) caused by infinite m4 macro recursion. - Mitigate the slowdown of libtool script (introduced in v2.4.3) caused by increased number of calls to '$SED $sed_quote_subst' (bug#20006). - Properly parse and export TLS symbols on AIX. - Various bug fixes surrounding use of 'sed'. - Darwin systems set proper "allow undefined" flag on OSX 11, and PowerPC 10.5. - Removed some deprecated tests related to 'Makefile.inc' files. Signed-off-by: Adolf Belka --- config/rootfiles/common/libtool | 77 ++++--------------- lfs/libtool | 8 +- ...-2.4.7-correct-libtoolize.in-shebang.patch | 8 ++ 3 files changed, 28 insertions(+), 65 deletions(-) create mode 100644 src/patches/libtool-2.4.7-correct-libtoolize.in-shebang.patch diff --git a/config/rootfiles/common/libtool b/config/rootfiles/common/libtool index 23753c79e..86ffb7fba 100644 --- a/config/rootfiles/common/libtool +++ b/config/rootfiles/common/libtool @@ -5,12 +5,10 @@ #usr/include/libltdl/lt_error.h #usr/include/libltdl/lt_system.h #usr/include/ltdl.h -#usr/lib/libltdl.a #usr/lib/libltdl.la -usr/lib/libltdl.so +#usr/lib/libltdl.so usr/lib/libltdl.so.7 -usr/lib/libltdl.so.7.3.1 -#usr/share/aclocal/argz.m4 +usr/lib/libltdl.so.7.3.2 #usr/share/aclocal/libtool.m4 #usr/share/aclocal/ltargz.m4 #usr/share/aclocal/ltdl.m4 @@ -22,24 +20,11 @@ usr/lib/libltdl.so.7.3.1 #usr/share/info/libtool.info-1 #usr/share/info/libtool.info-2 #usr/share/libtool -#usr/share/libtool/config-h.in -#usr/share/libtool/configure -#usr/share/libtool/configure.ac #usr/share/libtool/COPYING.LIB #usr/share/libtool/Makefile.am #usr/share/libtool/Makefile.in #usr/share/libtool/README #usr/share/libtool/aclocal.m4 -#usr/share/libtool/lt__alloc.c -#usr/share/libtool/lt__argz.c -#usr/share/libtool/lt__dirent.c -#usr/share/libtool/lt__strl.c -#usr/share/libtool/lt_dlloader.c -#usr/share/libtool/lt_error.c -#usr/share/libtool/ltdl.c -#usr/share/libtool/ltdl.h -#usr/share/libtool/ltdl.mk -#usr/share/libtool/slist.c #usr/share/libtool/build-aux #usr/share/libtool/build-aux/compile #usr/share/libtool/build-aux/config.guess @@ -48,34 +33,10 @@ usr/lib/libltdl.so.7.3.1 #usr/share/libtool/build-aux/install-sh #usr/share/libtool/build-aux/ltmain.sh #usr/share/libtool/build-aux/missing -#usr/share/libtool/config -#usr/share/libtool/config/compile -#usr/share/libtool/config/config.guess -#usr/share/libtool/config/config.sub -#usr/share/libtool/config/depcomp -#usr/share/libtool/config/install-sh -#usr/share/libtool/config/ltmain.sh -#usr/share/libtool/config/missing +#usr/share/libtool/config-h.in +#usr/share/libtool/configure +#usr/share/libtool/configure.ac #usr/share/libtool/libltdl -#usr/share/libtool/libltdl/COPYING.LIB -#usr/share/libtool/libltdl/Makefile.am -#usr/share/libtool/libltdl/Makefile.in -#usr/share/libtool/libltdl/Makefile.inc -#usr/share/libtool/libltdl/README -#usr/share/libtool/libltdl/aclocal.m4 -#usr/share/libtool/libltdl/argz.c -#usr/share/libtool/libltdl/argz_.h -#usr/share/libtool/libltdl/config-h.in -#usr/share/libtool/libltdl/configure -#usr/share/libtool/libltdl/configure.ac -#usr/share/libtool/libltdl/lt__alloc.c -#usr/share/libtool/libltdl/lt__dirent.c -#usr/share/libtool/libltdl/lt__strl.c -#usr/share/libtool/libltdl/lt_dlloader.c -#usr/share/libtool/libltdl/lt_error.c -#usr/share/libtool/libltdl/ltdl.c -#usr/share/libtool/libltdl/ltdl.h -#usr/share/libtool/libltdl/slist.c #usr/share/libtool/libltdl/lt__alloc.h #usr/share/libtool/libltdl/lt__argz_.h #usr/share/libtool/libltdl/lt__dirent.h @@ -86,24 +47,6 @@ usr/lib/libltdl.so.7.3.1 #usr/share/libtool/libltdl/lt_error.h #usr/share/libtool/libltdl/lt_system.h #usr/share/libtool/libltdl/slist.h -#usr/share/libtool/libltdl/libltdl -#usr/share/libtool/libltdl/libltdl/lt__alloc.h -#usr/share/libtool/libltdl/libltdl/lt__dirent.h -#usr/share/libtool/libltdl/libltdl/lt__glibc.h -#usr/share/libtool/libltdl/libltdl/lt__private.h -#usr/share/libtool/libltdl/libltdl/lt__strl.h -#usr/share/libtool/libltdl/libltdl/lt_dlloader.h -#usr/share/libtool/libltdl/libltdl/lt_error.h -#usr/share/libtool/libltdl/libltdl/lt_system.h -#usr/share/libtool/libltdl/libltdl/slist.h -#usr/share/libtool/libltdl/loaders -#usr/share/libtool/libltdl/loaders/dld_link.c -#usr/share/libtool/libltdl/loaders/dlopen.c -#usr/share/libtool/libltdl/loaders/dyld.c -#usr/share/libtool/libltdl/loaders/load_add_on.c -#usr/share/libtool/libltdl/loaders/loadlibrary.c -#usr/share/libtool/libltdl/loaders/preopen.c -#usr/share/libtool/libltdl/loaders/shl_load.c #usr/share/libtool/loaders #usr/share/libtool/loaders/dld_link.c #usr/share/libtool/loaders/dlopen.c @@ -112,5 +55,15 @@ usr/lib/libltdl.so.7.3.1 #usr/share/libtool/loaders/loadlibrary.c #usr/share/libtool/loaders/preopen.c #usr/share/libtool/loaders/shl_load.c +#usr/share/libtool/lt__alloc.c +#usr/share/libtool/lt__argz.c +#usr/share/libtool/lt__dirent.c +#usr/share/libtool/lt__strl.c +#usr/share/libtool/lt_dlloader.c +#usr/share/libtool/lt_error.c +#usr/share/libtool/ltdl.c +#usr/share/libtool/ltdl.h +#usr/share/libtool/ltdl.mk +#usr/share/libtool/slist.c #usr/share/man/man1/libtool.1 #usr/share/man/man1/libtoolize.1 diff --git a/lfs/libtool b/lfs/libtool index 1192a9772..014d54028 100644 --- a/lfs/libtool +++ b/lfs/libtool @@ -24,7 +24,7 @@ include Config -VER = 2.4.6 +VER = 2.4.7 THISAPP = libtool-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -42,7 +42,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = 0865af9f8701ca9dc62eec8294a088d24f4a3ff541bc76acfe7b69f70637d7e8261a17d69f7d54a4177f974c429be68467883a1560edb539061966cbf7d4a356 +$(DL_FILE)_BLAKE2 = 5e022586337637dd634bd40578ad944bec6e3b8de41f95d55777b90cc88cbc4badb3d76cbf0e638166ece1ea7de828e83590e1e6bac30c1e4b1c254a11a742f2 install : $(TARGET) @@ -75,9 +75,11 @@ dist: $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libtool-2.4.7-correct-libtoolize.in-shebang.patch $(UPDATE_AUTOMAKE) cd $(DIR_APP) && ./configure \ - --prefix=/usr + --prefix=/usr \ + --disable-static cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) diff --git a/src/patches/libtool-2.4.7-correct-libtoolize.in-shebang.patch b/src/patches/libtool-2.4.7-correct-libtoolize.in-shebang.patch new file mode 100644 index 000000000..6a79bc623 --- /dev/null +++ b/src/patches/libtool-2.4.7-correct-libtoolize.in-shebang.patch @@ -0,0 +1,8 @@ +--- libtool-2.4.7/libtoolize.in.orig 2022-03-17 03:43:39.000000000 +0100 ++++ libtool-2.4.7/libtoolize.in 2022-12-08 18:12:36.134198672 +0100 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env sh ++#! /bin/sh + + # Prepare a package to use libtool. + # Written by Gary V. Vaughan , 2003