mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-15 00:46:58 +02:00
sys-devel/libtool: Sync with Gentoo
It's from Gentoo commit 111847c60008231e6329949ec6ce2c8e18ffe41b.
This commit is contained in:
parent
835e1dd756
commit
03fda422c6
@ -1,2 +1 @@
|
||||
DIST libtool-2.4.6.tar.xz 973080 BLAKE2B 0865af9f8701ca9dc62eec8294a088d24f4a3ff541bc76acfe7b69f70637d7e8261a17d69f7d54a4177f974c429be68467883a1560edb539061966cbf7d4a356 SHA512 a6eef35f3cbccf2c9e2667f44a476ebc80ab888725eb768e91a3a6c33b8c931afc46eb23efaee76c8696d3e4eed74ab1c71157bcb924f38ee912c8a90a6521a4
|
||||
DIST libtool-2.4.7.tar.xz 1016040 BLAKE2B 5e022586337637dd634bd40578ad944bec6e3b8de41f95d55777b90cc88cbc4badb3d76cbf0e638166ece1ea7de828e83590e1e6bac30c1e4b1c254a11a742f2 SHA512 47f4c6de40927254ff9ba452612c0702aea6f4edc7e797f0966c8c6bf0340d533598976cdba17f0bdc64545572e71cd319bbb587aa5f47cd2e7c1d96f873a3da
|
||||
|
@ -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
|
||||
;;
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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"
|
@ -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"
|
@ -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"
|
@ -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
|
@ -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
|
@ -1,9 +1,12 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
LIBTOOLIZE="true" #225559
|
||||
# Please bump with dev-libs/libltdl.
|
||||
|
||||
# bug #225559
|
||||
LIBTOOLIZE="true"
|
||||
WANT_LIBTOOL="none"
|
||||
inherit autotools prefix
|
||||
|
||||
@ -12,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 ~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"
|
||||
@ -27,33 +30,29 @@ RDEPEND="
|
||||
sys-devel/gnuconfig
|
||||
>=sys-devel/autoconf-2.69:*
|
||||
>=sys-devel/automake-1.13:*
|
||||
dev-libs/libltdl:0"
|
||||
>=dev-libs/libltdl-2.4.7"
|
||||
DEPEND="${RDEPEND}"
|
||||
[[ ${PV} == *9999 ]] && BDEPEND="sys-apps/help2man"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105
|
||||
"${FILESDIR}"/${PN}-2.4.6-link-specs.patch
|
||||
"${FILESDIR}"/${PN}-2.4.6-link-fsanitize.patch #573744
|
||||
"${FILESDIR}"/${PN}-2.4.6-link-fuse-ld.patch
|
||||
"${FILESDIR}"/${PN}-2.4.6-libtoolize-slow.patch
|
||||
"${FILESDIR}"/${PN}-2.4.6-libtoolize-delay-help.patch
|
||||
"${FILESDIR}"/${PN}-2.4.6-sed-quote-speedup.patch #542252
|
||||
"${FILESDIR}"/${PN}-2.4.6-ppc64le.patch #581314
|
||||
# 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.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.6-darwin20.patch
|
||||
"${FILESDIR}"/${PN}-2.4.7-werror-lto.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch #650876
|
||||
eapply "${FILESDIR}"/${PN}-2.4.6-pthread.patch # bug #650876
|
||||
./bootstrap || die
|
||||
else
|
||||
PATCHES+=(
|
||||
"${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch #650876
|
||||
"${FILESDIR}"/${PN}-2.4.6-pthread_bootstrapped.patch # bug #650876
|
||||
)
|
||||
fi
|
||||
|
||||
@ -87,7 +86,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
|
||||
}
|
||||
|
||||
@ -98,11 +97,13 @@ src_configure() {
|
||||
# shells, so just force libtool to use /bin/bash all the time.
|
||||
export CONFIG_SHELL="$(type -P bash)"
|
||||
|
||||
# Do not bother hardcoding the full path to sed. Just rely on $PATH. #574550
|
||||
# Do not bother hardcoding the full path to sed.
|
||||
# Just rely on $PATH. bug #574550
|
||||
export ac_cv_path_SED="$(basename "$(type -P sed)")"
|
||||
|
||||
[[ ${CHOST} == *-darwin* ]] && local myconf="--program-prefix=g"
|
||||
ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install
|
||||
|
||||
ECONF_SOURCE="${S}" econf ${myconf} --disable-ltdl-install
|
||||
}
|
||||
|
||||
src_install() {
|
@ -85,7 +85,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
|
||||
}
|
||||
|
||||
|
@ -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 ~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"
|
||||
@ -85,7 +85,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
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user