diff options
14 files changed, 96 insertions, 586 deletions
diff --git a/metadata/md5-cache/sys-devel/binutils-2.39-r2 b/metadata/md5-cache/sys-devel/binutils-2.39-r4 index 3f222d44..034840ef 100644 --- a/metadata/md5-cache/sys-devel/binutils-2.39-r2 +++ b/metadata/md5-cache/sys-devel/binutils-2.39-r4 @@ -6,12 +6,12 @@ EAPI=7 HOMEPAGE=https://sourceware.org/binutils/ INHERIT=libtool flag-o-matic gnuconfig strip-linguas toolchain-funcs IUSE=cet default-gold doc gold gprofng multitarget +nls pgo +plugins static-libs test vanilla -KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 +KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 LICENSE=GPL-3+ RDEPEND=>=sys-devel/binutils-config-3 sys-libs/zlib REQUIRED_USE=default-gold? ( gold ) RESTRICT=!test? ( test ) SLOT=2.39 -SRC_URI=mirror://gnu/binutils/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39-patches-4.tar.xz +SRC_URI=mirror://gnu/binutils/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39-patches-5.tar.xz _eclasses_=edos2unix 33e347e171066657f91f8b0c72ec8773 eutils 8f942ebdcf04334697649d4a0bf65a32 flag-o-matic 69394e25812406faa1f90edaf4969395 gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multilib 5ca4e49abed8e3a2f7b56920eadee157 strip-linguas ac3ee41ee2d31d8c41a77c0838320cc7 toolchain-funcs 9a610728b9bcca1919234cceb35a1027 wrapper 4a1902f969e5718126434fc35f3a0d9c -_md5_=7320280f2c354df6e57a53498912e436 +_md5_=be0b46c8672ab8649f7aebe8da451aee diff --git a/metadata/md5-cache/sys-devel/libtool-2.4.7 b/metadata/md5-cache/sys-devel/libtool-2.4.7-r1 index a4bf1894..9ff5c6f7 100644 --- a/metadata/md5-cache/sys-devel/libtool-2.4.7 +++ b/metadata/md5-cache/sys-devel/libtool-2.4.7-r1 @@ -6,10 +6,10 @@ EAPI=7 HOMEPAGE=https://www.gnu.org/software/libtool/ INHERIT=autotools prefix IUSE=vanilla -KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt +KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt LICENSE=GPL-2 RDEPEND=sys-devel/gnuconfig >=sys-devel/autoconf-2.69:* >=sys-devel/automake-1.13:* >=dev-libs/libltdl-2.4.7 SLOT=2 SRC_URI=mirror://gnu/libtool/libtool-2.4.7.tar.xz _eclasses_=autotools 6dcd6b6a486e79928e1243ff9ba41fcc gnuconfig b6b3e92f8b8c996400074b5f61a59256 libtool 241a8f577b9781a42a7421e53448a44e multilib 5ca4e49abed8e3a2f7b56920eadee157 prefix eab3c99d77fe00506c109c8a736186f7 toolchain-funcs 9a610728b9bcca1919234cceb35a1027 -_md5_=f4d264f4b8ba5df17fc5bdcc45368b74 +_md5_=47f9c94ee07116f242075c7850e3f19f diff --git a/metadata/md5-cache/sys-libs/binutils-libs-2.39-r1 b/metadata/md5-cache/sys-libs/binutils-libs-2.39-r4 index de92be88..ea30ed57 100644 --- a/metadata/md5-cache/sys-libs/binutils-libs-2.39-r1 +++ b/metadata/md5-cache/sys-libs/binutils-libs-2.39-r4 @@ -6,10 +6,10 @@ EAPI=7 HOMEPAGE=https://sourceware.org/binutils/ INHERIT=libtool toolchain-funcs multilib-minimal IUSE=64-bit-bfd cet multitarget nls static-libs abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_s390_32 abi_s390_64 -KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris +KEYWORDS=~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris LICENSE=|| ( GPL-3 LGPL-3 ) RDEPEND=sys-libs/zlib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_s390_32(-)?,abi_s390_64(-)?] >=sys-devel/binutils-config-5 SLOT=0/2.39 -SRC_URI=mirror://gnu/binutils/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39-patches-4.tar.xz +SRC_URI=mirror://gnu/binutils/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39.tar.xz https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.39-patches-5.tar.xz _eclasses_=libtool 241a8f577b9781a42a7421e53448a44e multibuild bddcb51b74f4a76724ff7cf8e7388869 multilib 5ca4e49abed8e3a2f7b56920eadee157 multilib-build e8aed98bd43dbd25694310a660ad562c multilib-minimal 4b0f1857965db8869a729948d5277e0b out-of-source-utils 1a9007554652a6e627edbccb3c25a439 toolchain-funcs 9a610728b9bcca1919234cceb35a1027 -_md5_=5a57e6ae46ec518819986c4a11635ce8 +_md5_=38b042655236adf2937a96a3c6d6bd06 diff --git a/metadata/pkg_desc_index b/metadata/pkg_desc_index index d586772a..7f1f50cd 100644 --- a/metadata/pkg_desc_index +++ b/metadata/pkg_desc_index @@ -51,9 +51,9 @@ sys-boot/grub 2.04-r12: GNU GRUB boot loader sys-boot/os-prober 1.77-r10: Utility to detect other OSs on a set of drives sys-boot/plymouth 0.9.4-r11: Graphical boot animation (splash) and logger sys-boot/unetbootin-static 625-r3: Universal Netboot Installer creates Live USB systems for various OS distributions -sys-devel/binutils 2.39-r2: Tools necessary to build programs +sys-devel/binutils 2.39-r4: Tools necessary to build programs sys-devel/gcc 12.2.0: The GNU Compiler Collection -sys-devel/libtool 2.4.7: A shared library tool for developers +sys-devel/libtool 2.4.7-r1: A shared library tool for developers sys-fs/cryptsetup 2.3.4-r10: Tool to setup encrypted devices with dm-crypt sys-fs/gocryptfs 2.0.1-r1: Encrypted overlay filesystem written in Go sys-fs/vhba 20211218: Virtual (SCSI) Host Bus Adapter kernel module for the CDEmu suite @@ -71,7 +71,7 @@ sys-kernel/nvidia-drivers-dkms 390.157-r1 470.161.03-r1 515.86.01-r1 525.85.05: sys-kernel/vhba-dkms 20211218: Virtual (SCSI) Host Bus Adapter kernel module for the CDEmu suite sources sys-kernel/virtualbox-modules-dkms 7.0.6: Kernel Modules source for Virtualbox sys-kernel/zfs-dkms 2.1.7: ZFS sources for linux -sys-libs/binutils-libs 2.39-r1: Core binutils libraries (libbfd, libopcodes, libiberty) for external packages +sys-libs/binutils-libs 2.39-r4: Core binutils libraries (libbfd, libopcodes, libiberty) for external packages sys-libs/glibc 2.36-r5: GNU libc C library sys-power/radeon-profile 20200824-r10: Read current clocks of ATi/AMD Radeon cards virtual/libudev 314.1337: Virtual for libudev providers diff --git a/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch b/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch deleted file mode 100644 index 02cb1d7e..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-darwin20.patch +++ /dev/null @@ -1,13 +0,0 @@ -macOS Big Sur is 11.0, Darwin 20, after a long line of 10.X releases. -macOS Monterey is 12.0. ---- a/m4/libtool.m4 -+++ b/m4/libtool.m4 -@@ -1076,7 +1076,7 @@ - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - 10.[[012]][[,.]]*) - _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; -- 10.*) -+ 10.*|11.*|12.*) - _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; - esac - ;; diff --git a/sys-devel/libtool/files/libtool-2.4.6-libtoolize-delay-help.patch b/sys-devel/libtool/files/libtool-2.4.6-libtoolize-delay-help.patch deleted file mode 100644 index 974cd44d..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-libtoolize-delay-help.patch +++ /dev/null @@ -1,53 +0,0 @@ -https://lists.gnu.org/archive/html/libtool-patches/2016-02/msg00002.html - -From 53419307d5b44e5b0cff80d76f88ea02f237b747 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Sat, 13 Feb 2016 03:32:20 -0500 -Subject: [PATCH] libtoolize: don't execute automake and autoconf on every - invocation. - -Same fix as applied to libtool in commit 408cfb9c5fa8a666917167ffb806cb -to delay use of automake/autoconf to when the --help option is actually -specified. - -* libtoolize.in (func_help): Override func_help() from -gl/build-aux/options-parser to only run automake --version and -autoconf --version when libtool --help is executed on the command -line. ---- - libtoolize.in | 12 +++++++++--- - 1 file changed, 9 insertions(+), 3 deletions(-) - -diff --git a/libtoolize.in b/libtoolize.in -index 3fe61ce..0d4af3d 100644 ---- a/libtoolize.in -+++ b/libtoolize.in -@@ -94,7 +94,12 @@ usage_message="Options: - " - - # Additional text appended to 'usage_message' in response to '--help'. --long_help_message=$long_help_message" -+func_help () -+{ -+ $debug_cmd -+ -+ func_usage_message -+ $ECHO "$long_help_message - 'environment' show warnings about LIBTOOLIZE_OPTIONS content - 'file' show warnings about file copying and linking - -@@ -120,8 +125,9 @@ include the following information: - - Report bugs to <@PACKAGE_BUGREPORT@>. - GNU @PACKAGE@ home page: <@PACKAGE_URL@>. --General help using GNU software: <http://www.gnu.org/gethelp/>. --" -+General help using GNU software: <http://www.gnu.org/gethelp/>." -+ exit 0 -+} - - warning_categories='environment file' - --- -2.6.2 - diff --git a/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch b/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch deleted file mode 100644 index d27f976c..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch +++ /dev/null @@ -1,118 +0,0 @@ -From 351a88feee66eda6ce33eb06acdebb8e9c6d6716 Mon Sep 17 00:00:00 2001 -From: Pavel Raiskup <praiskup@redhat.com> -Date: Fri, 18 Sep 2015 23:17:07 +0200 -Subject: [PATCH] libtoolize: fix infinite recursion in m4 - -Some projects use this construct in configure.ac: - - m4_define([version], m4_include([version])) - pkg_version=version - -When the m4_include builtin is undefined (as was done in -libtoolize and extract-trace scripts), the call to this 'version' -macro enters an infinite recursion (until ENOMEM). So rather -re-define all potentially dangerous macros by empty strings, -suggested by Eric Blake. - -While we are on it, merge the macro-"blacklist" with similar list -implemented in gettext, except for 'm4_esyscmd'. It's kept -defined because we already trace AC_INIT macro for package -version, while it is often specified by -m4_esyscmd(git-version-gen). Similarly to m4_include, m4_esyscmd -might be opt-in-blacklisted in future. - -References: -http://lists.gnu.org/archive/html/libtool/2015-09/msg00000.html -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764580 - -* gl/build-aux/extract-trace (_G_mini): Redefine trace-breaking -macros to empty strings rather than undefining those. Use 'dnl' -for comments. -* bootstrap: Likewise, sync with extract-trace. -* NEWS: Document. -* NO-THANKS: Mention Hiroyuki Sato. - -Signed-off-by: Pavel Raiskup <praiskup@redhat.com> ---- - NEWS | 4 ++++ - NO-THANKS | 1 + - bootstrap | 42 +++++++++++++++++++++++++++--------------- - build-aux/extract-trace | 42 +++++++++++++++++++++++++++--------------- - 4 files changed, 59 insertions(+), 30 deletions(-) - -diff --git a/gl/build-aux/extract-trace b/gl/build-aux/extract-trace -index 315a32a..c6abd21 100755 ---- a/build-aux/extract-trace -+++ b/build-aux/extract-trace -@@ -329,29 +329,41 @@ func_extract_trace () - # arguments to Autocof functions, but without following - # 'm4_s?include' files. - _G_mini=' -- # Initialisation. -+ dnl Initialisation. - m4_changequote([,]) - m4_define([m4_copy], [m4_define([$2], m4_defn([$1]))]) - m4_define([m4_rename], [m4_copy([$1], [$2])m4_undefine([$1])]) - -- # Disable these macros. -- m4_undefine([m4_dnl]) -- m4_undefine([m4_include]) -- m4_undefine([m4_m4exit]) -- m4_undefine([m4_m4wrap]) -- m4_undefine([m4_maketemp]) -+ dnl Replace macros which may abort m4 with a no-op variant. -+ m4_pushdef([m4_assert]) -+ m4_pushdef([m4_exit]) -+ m4_pushdef([m4_fatal]) -+ m4_pushdef([m4_m4exit]) - -- # Copy and rename macros not handled by "m4 --prefix". -+ dnl Replace macros that might break stderr of m4. -+ m4_pushdef([m4_errprint]) -+ m4_pushdef([m4_errprintn]) -+ m4_pushdef([m4_include]) -+ m4_pushdef([m4_warn]) -+ -+ dnl Avoid side-effects of tracing by extract-trace. -+ m4_pushdef([m4_maketemp]) -+ m4_pushdef([m4_mkstemp]) -+ -+ dnl TODO: reasons for this -+ m4_pushdef([m4_dnl]) -+ m4_pushdef([m4_m4wrap]) -+ -+ dnl Copy and rename macros not handled by "m4 --prefix". - m4_define([dnl], [m4_builtin([dnl])]) - m4_copy([m4_define], [m4_defun]) - m4_rename([m4_ifelse], [m4_if]) -- m4_ifdef([m4_mkstemp], [m4_undefine([m4_mkstemp])]) - m4_rename([m4_patsubst], [m4_bpatsubst]) - m4_rename([m4_regexp], [m4_bregexp]) - -- # "m4sugar.mini" - useful m4-time macros for dynamic arguments. -- # If we discover packages that need more m4 macros defined in -- # order to bootstrap correctly, add them here: -+ dnl "m4sugar.mini" - useful m4-time macros for dynamic arguments. -+ dnl If we discover packages that need more m4 macros defined in -+ dnl order to bootstrap correctly, add them here: - m4_define([m4_bmatch], - [m4_if([$#], 0, [], [$#], 1, [], [$#], 2, [$2], - [m4_if(m4_bregexp([$1], [$2]), -1, -@@ -362,11 +374,11 @@ func_extract_trace () - m4_define([m4_require], [$1]) - m4_define([m4_shift3], [m4_shift(m4shift(m4shift($@)))]) - -- # "autoconf.mini" - things from autoconf macros we care about. -+ dnl "autoconf.mini" - things from autoconf macros we care about. - m4_copy([m4_defun], [AC_DEFUN]) - -- # Dummy definitions for the macros we want to trace. -- # AM_INIT_AUTOMAKE at least produces no trace without this. -+ dnl Dummy definitions for the macros we want to trace. -+ dnl AM_INIT_AUTOMAKE at least produces no trace without this. - ' - - _G_save=$IFS --- -2.6.2 - diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch b/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch deleted file mode 100644 index 853a22ef..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch +++ /dev/null @@ -1,46 +0,0 @@ -https://bugs.gentoo.org/573744 - -From a5c6466528c060cc4660ad0319c00740db0e42ba Mon Sep 17 00:00:00 2001 -From: Jeremy Huddleston Sequoia <jeremyhu@macports.org> -Date: Sun, 18 Oct 2015 21:55:39 -0700 -Subject: [PATCH] libtool: fix GCC/clang linking with -fsanitize=* - -References: -https://lists.gnu.org/archive/html/libtool/2014-04/msg00026.html - -* build-aux/ltmain.in (func_mode_link): Pass -fsanitize=* to the -linker to allow trivial use of the clang address sanitizer. - -Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> -Copyright-paperwork-exempt: Yes - ---- a/build-aux/ltmain.in -+++ b/build-aux/ltmain.in -@@ -5362,10 +5362,11 @@ - # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization - # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang -+ # -fsanitize=* Clang/GCC memory and address sanitizer - -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=*) -+ -specs=*|-fsanitize=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result - func_append compile_command " $arg" ---- a/build-aux/ltmain.sh -+++ b/build-aux/ltmain.sh -@@ -7274,10 +7274,11 @@ - # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization - # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang -+ # -fsanitize=* Clang/GCC memory and address sanitizer - -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=*) -+ -specs=*|-fsanitize=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result - func_append compile_command " $arg" diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch b/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch deleted file mode 100644 index f6c0a3dc..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch +++ /dev/null @@ -1,43 +0,0 @@ -https://lists.gnu.org/archive/html/libtool-patches/2015-03/msg00000.html -https://lists.gnu.org/archive/html/libtool-patches/2016-02/msg00001.html - -From 2f258b87ce4415edede1b2a84a3a7dbcf44555c2 Mon Sep 17 00:00:00 2001 -From: Mike Frysinger <vapier@gentoo.org> -Date: Mon, 16 Mar 2015 18:17:31 -0400 -Subject: [PATCH] libtool: pass through -fuse-ld flags - -Starting with gcc-4.8, there's a -fuse-ld flag that can be used to select -between bfd & gold. Make sure we pass it through to the linking stage. - -* build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags through. - ---- a/build-aux/ltmain.in -+++ b/build-aux/ltmain.in -@@ -5363,10 +5363,11 @@ - # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang - # -fsanitize=* Clang/GCC memory and address sanitizer -+ # -fuse-ld=* Linker select flags for GCC - -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=*) -+ -specs=*|-fsanitize=*|-fuse-ld=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result - func_append compile_command " $arg" ---- a/build-aux/ltmain.sh -+++ b/build-aux/ltmain.sh -@@ -7275,10 +7275,11 @@ - # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang - # -fsanitize=* Clang/GCC memory and address sanitizer -+ # -fuse-ld=* Linker select flags for GCC - -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=*) -+ -specs=*|-fsanitize=*|-fuse-ld=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result - func_append compile_command " $arg" diff --git a/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch b/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch deleted file mode 100644 index c7720935..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 702a97fbb09bd7088a50f2b239016d1e32843c24 Mon Sep 17 00:00:00 2001 -From: Pavel Raiskup <praiskup@redhat.com> -Date: Fri, 18 Sep 2015 10:36:43 +0200 -Subject: [PATCH] libtool: fix GCC linking with -specs=* - -References: -https://bugzilla.redhat.com/show_bug.cgi?id=985592 - -* build-aux/ltmain.in (func_mode_link): Pass -specs=* -to the linker, Fedora uses this option for hardening. - -Signed-off-by: Pavel Raiskup <praiskup@redhat.com> - ---- a/build-aux/ltmain.in -+++ b/build-aux/ltmain.in -@@ -5360,10 +5360,12 @@ - # -tp=* Portland pgcc target processor selection - # --sysroot=* for sysroot support - # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization -+ # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang - -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=*) -+ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ -+ -specs=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result - func_append compile_command " $arg" ---- a/build-aux/ltmain.sh -+++ b/build-aux/ltmain.sh -@@ -7272,10 +7272,12 @@ - # -tp=* Portland pgcc target processor selection - # --sysroot=* for sysroot support - # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization -+ # -specs=* GCC specs files - # -stdlib=* select c++ std lib with clang - -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=*) -+ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ -+ -specs=*) - func_quote_for_eval "$arg" - arg=$func_quote_for_eval_result - func_append compile_command " $arg" diff --git a/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch b/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch deleted file mode 100644 index 580d635d..00000000 --- a/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch +++ /dev/null @@ -1,253 +0,0 @@ -https://bugs.gentoo.org/542252 - -From 32f0df9835ac15ac17e04be57c368172c3ad1d19 Mon Sep 17 00:00:00 2001 -From: Pavel Raiskup <praiskup@redhat.com> -Date: Sun, 4 Oct 2015 21:55:03 +0200 -Subject: [PATCH] libtool: mitigate the $sed_quote_subst slowdown - -When it is reasonably possible, use shell implementation for -quoting. - -References: -http://lists.gnu.org/archive/html/libtool/2015-03/msg00005.html -http://lists.gnu.org/archive/html/libtool/2015-02/msg00000.html -https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20006 - -* gl/build-aux/funclib.sh (func_quote): New function that can be -used as substitution for '$SED $sed_quote_subst' call. -* build-aux/ltmain.in (func_emit_wrapper): Use func_quote instead -of '$SED $sed_quote_subst'. -(func_mode_link): Likewise. -* NEWS: Document. -* bootstrap: Sync with funclib.sh. - ---- a/build-aux/ltmain.in -+++ b/build-aux/ltmain.in -@@ -3346,7 +3346,8 @@ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - file=\"\$0\"" - -- qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` -+ func_quote "$ECHO" -+ qECHO=$func_quote_result - $ECHO "\ - - # A function that is used when there is no print builtin or printf. -@@ -8598,8 +8599,8 @@ - relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" - fi - done -- relink_command="(cd `pwd`; $relink_command)" -- relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` -+ func_quote "(cd `pwd`; $relink_command)" -+ relink_command=$func_quote_result - fi - - # Only actually do things if not in dry run mode. -@@ -8845,7 +8846,8 @@ - done - # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" -- relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` -+ func_quote "$relink_command" -+ relink_command=$func_quote_result - if test yes = "$hardcode_automatic"; then - relink_command= - fi ---- a/build-aux/funclib.sh -+++ b/build-aux/funclib.sh -@@ -1,5 +1,5 @@ - # Set a version string for this script. --scriptversion=2015-01-20.17; # UTC -+scriptversion=2015-10-04.22; # UTC - - # General shell script boiler plate, and helper functions. - # Written by Gary V. Vaughan, 2004 -@@ -1026,6 +1026,57 @@ - } - - -+# func_quote ARG -+# -------------- -+# Aesthetically quote one ARG, store the result into $func_quote_result. Note -+# that we keep attention to performance here (so far O(N) complexity as long as -+# func_append is O(1)). -+func_quote () -+{ -+ $debug_cmd -+ -+ func_quote_result=$1 -+ -+ case $func_quote_result in -+ *[\\\`\"\$]*) -+ case $func_quote_result in -+ *[\[\*\?]*) -+ func_quote_result=`$ECHO "$func_quote_result" | $SED "$sed_quote_subst"` -+ return 0 -+ ;; -+ esac -+ -+ func_quote_old_IFS=$IFS -+ for _G_char in '\' '`' '"' '$' -+ do -+ # STATE($1) PREV($2) SEPARATOR($3) -+ set start "" "" -+ func_quote_result=dummy"$_G_char$func_quote_result$_G_char"dummy -+ IFS=$_G_char -+ for _G_part in $func_quote_result -+ do -+ case $1 in -+ quote) -+ func_append func_quote_result "$3$2" -+ set quote "$_G_part" "\\$_G_char" -+ ;; -+ start) -+ set first "" "" -+ func_quote_result= -+ ;; -+ first) -+ set quote "$_G_part" "" -+ ;; -+ esac -+ done -+ IFS=$func_quote_old_IFS -+ done -+ ;; -+ *) ;; -+ esac -+} -+ -+ - # func_quote_for_eval ARG... - # -------------------------- - # Aesthetically quote ARGs to be evaled later. -@@ -1042,12 +1093,8 @@ - func_quote_for_eval_unquoted_result= - func_quote_for_eval_result= - while test 0 -lt $#; do -- case $1 in -- *[\\\`\"\$]*) -- _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; -- *) -- _G_unquoted_arg=$1 ;; -- esac -+ func_quote "$1" -+ _G_unquoted_arg=$func_quote_result - if test -n "$func_quote_for_eval_unquoted_result"; then - func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" - else ---- a/build-aux/ltmain.sh -+++ b/build-aux/ltmain.sh -@@ -64,7 +64,7 @@ - # libraries, which are installed to $pkgauxdir. - - # Set a version string for this script. --scriptversion=2015-01-20.17; # UTC -+scriptversion=2015-10-04.22; # UTC - - # General shell script boiler plate, and helper functions. - # Written by Gary V. Vaughan, 2004 -@@ -1091,6 +1091,57 @@ - } - - -+# func_quote ARG -+# -------------- -+# Aesthetically quote one ARG, store the result into $func_quote_result. Note -+# that we keep attention to performance here (so far O(N) complexity as long as -+# func_append is O(1)). -+func_quote () -+{ -+ $debug_cmd -+ -+ func_quote_result=$1 -+ -+ case $func_quote_result in -+ *[\\\`\"\$]*) -+ case $func_quote_result in -+ *[\[\*\?]*) -+ func_quote_result=`$ECHO "$func_quote_result" | $SED "$sed_quote_subst"` -+ return 0 -+ ;; -+ esac -+ -+ func_quote_old_IFS=$IFS -+ for _G_char in '\' '`' '"' '$' -+ do -+ # STATE($1) PREV($2) SEPARATOR($3) -+ set start "" "" -+ func_quote_result=dummy"$_G_char$func_quote_result$_G_char"dummy -+ IFS=$_G_char -+ for _G_part in $func_quote_result -+ do -+ case $1 in -+ quote) -+ func_append func_quote_result "$3$2" -+ set quote "$_G_part" "\\$_G_char" -+ ;; -+ start) -+ set first "" "" -+ func_quote_result= -+ ;; -+ first) -+ set quote "$_G_part" "" -+ ;; -+ esac -+ done -+ IFS=$func_quote_old_IFS -+ done -+ ;; -+ *) ;; -+ esac -+} -+ -+ - # func_quote_for_eval ARG... - # -------------------------- - # Aesthetically quote ARGs to be evaled later. -@@ -1107,12 +1158,8 @@ - func_quote_for_eval_unquoted_result= - func_quote_for_eval_result= - while test 0 -lt $#; do -- case $1 in -- *[\\\`\"\$]*) -- _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; -- *) -- _G_unquoted_arg=$1 ;; -- esac -+ func_quote "$1" -+ _G_unquoted_arg=$func_quote_result - if test -n "$func_quote_for_eval_unquoted_result"; then - func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" - else -@@ -5258,7 +5305,8 @@ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - file=\"\$0\"" - -- qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` -+ func_quote "$ECHO" -+ qECHO=$func_quote_result - $ECHO "\ - - # A function that is used when there is no print builtin or printf. -@@ -10510,8 +10558,8 @@ - relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" - fi - done -- relink_command="(cd `pwd`; $relink_command)" -- relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` -+ func_quote "(cd `pwd`; $relink_command)" -+ relink_command=$func_quote_result - fi - - # Only actually do things if not in dry run mode. -@@ -10757,7 +10805,8 @@ - done - # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" -- relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` -+ func_quote "$relink_command" -+ relink_command=$func_quote_result - if test yes = "$hardcode_automatic"; then - relink_command= - fi diff --git a/sys-devel/libtool/files/libtool-2.4.7-grep-3.8.patch b/sys-devel/libtool/files/libtool-2.4.7-grep-3.8.patch new file mode 100644 index 00000000..8f1de478 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.7-grep-3.8.patch @@ -0,0 +1,31 @@ +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 diff --git a/sys-devel/libtool/files/libtool-2.4.7-werror-lto.patch b/sys-devel/libtool/files/libtool-2.4.7-werror-lto.patch new file mode 100644 index 00000000..c0db69f3 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.7-werror-lto.patch @@ -0,0 +1,47 @@ +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 diff --git a/sys-devel/libtool/libtool-2.4.7.ebuild b/sys-devel/libtool/libtool-2.4.7-r1.ebuild index 09853e34..440935aa 100644 --- a/sys-devel/libtool/libtool-2.4.7.ebuild +++ b/sys-devel/libtool/libtool-2.4.7-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -15,7 +15,7 @@ if [[ ${PV} == *9999 ]] ; then inherit git-r3 else SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" - KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" fi DESCRIPTION="A shared library tool for developers" @@ -30,7 +30,8 @@ RDEPEND=" sys-devel/gnuconfig >=sys-devel/autoconf-2.69:* >=sys-devel/automake-1.13:* - >=dev-libs/libltdl-2.4.7" + >=dev-libs/libltdl-2.4.7 +" DEPEND="${RDEPEND}" [[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man" @@ -43,6 +44,8 @@ PATCHES=( "${FILESDIR}"/${PN}-2.4.6-mint.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() { @@ -85,7 +88,7 @@ src_prepare() { # Make sure timestamps don't trigger a rebuild of man pages. #556512 if [[ ${PV} != *9999 ]] ; then touch doc/*.1 || die - export HELP2MAN=false + export HELP2MAN=true fi } |