diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-12-24 15:36:46 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-12-24 15:36:46 +0000 |
commit | 2a15bb4c21792825ebc98028bbcfff4bb76230eb (patch) | |
tree | 78d658bfc8a6fa5463435afbe598bd3847a26be0 /sys-devel/libtool | |
parent | 7e363b923a5933e24521c24eafc75492fa4f5826 (diff) |
import the toolchain from gentoo tree, increase revisions so they cannot beat us
Diffstat (limited to 'sys-devel/libtool')
16 files changed, 1046 insertions, 0 deletions
diff --git a/sys-devel/libtool/Manifest b/sys-devel/libtool/Manifest new file mode 100644 index 00000000..4f2d5bac --- /dev/null +++ b/sys-devel/libtool/Manifest @@ -0,0 +1 @@ +DIST libtool-2.4.6.tar.xz 973080 BLAKE2B 0865af9f8701ca9dc62eec8294a088d24f4a3ff541bc76acfe7b69f70637d7e8261a17d69f7d54a4177f974c429be68467883a1560edb539061966cbf7d4a356 SHA512 a6eef35f3cbccf2c9e2667f44a476ebc80ab888725eb768e91a3a6c33b8c931afc46eb23efaee76c8696d3e4eed74ab1c71157bcb924f38ee912c8a90a6521a4 diff --git a/sys-devel/libtool/files/libtool-2.2.10-eprefix.patch b/sys-devel/libtool/files/libtool-2.2.10-eprefix.patch new file mode 100644 index 00000000..c4693ee7 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.2.10-eprefix.patch @@ -0,0 +1,11 @@ +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -2087,7 +2087,7 @@ + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's,/\([[A-Za-z]]:\),\1,g'` ;; + esac +- sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` ++ sys_lib_search_path_spec=`$ECHO "@GENTOO_PORTAGE_EPREFIX@/lib @GENTOO_PORTAGE_EPREFIX@/usr/lib $lt_search_path_spec" | $lt_NL2SP` + else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + fi]) diff --git a/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch b/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch new file mode 100644 index 00000000..c6b63ed3 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.2.6a-darwin-module-bundle.patch @@ -0,0 +1,24 @@ +In Gentoo Prefix we go by Apple's convention to give modules the .bundle +extension. +http://developer.apple.com/documentation/DeveloperTools/Conceptual/XcodeBuildSystem/500-Linking/bs_linking.html +(Above link was removed by Apple, the link below contains a copy: +http://disanji.net/iOS_Doc/#documentation/DeveloperTools/Conceptual/XcodeBuildSystem/500-Linking/bs_linking.html, +in case it disappears also, the relevant quote: + +Bundle. Bundles are executable files that can be loaded at runtime by +other products. Plug-ins are implemented using bundles. The term bundle +in this context refers to the binary itself, not to a structured +hierarchy. Bundles have the .bundle extension; for example, +MyBundle.bundle.) + +--- libltdl/m4/libtool.m4 ++++ libltdl/m4/libtool.m4 +@@ -2271,7 +2271,7 @@ + soname_spec='${libname}${release}${major}$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH +- shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' ++ shrext_cmds='`test .$module = .yes && echo .bundle || echo .dylib`' + m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' diff --git a/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch new file mode 100644 index 00000000..8244eaa7 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.3-use-linux-version-in-fbsd.patch @@ -0,0 +1,38 @@ +Force linux-style versioning when generating shared libraries on +Gentoo/FreeBSD hosts only. + +Patch by Diego Elio Pettenò + +http://bugs.gentoo.org/109105 + +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -1375,7 +1375,14 @@ + *) objformat=elf ;; + esac + fi +- version_type=freebsd-$objformat ++ # Handle Gentoo/FreeBSD as it was Linux ++ case $host_vendor in ++ gentoo) ++ version_type=linux ;; ++ *) ++ version_type=freebsd-$objformat ;; ++ esac ++ + case $version_type in + freebsd-elf*) + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' +@@ -1386,6 +1392,12 @@ + library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + need_version=yes + ;; ++ linux) ++ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' ++ soname_spec='${libname}${release}${shared_ext}$major' ++ need_lib_prefix=no ++ need_version=no ++ ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in diff --git a/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch b/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch new file mode 100644 index 00000000..b4409815 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-darwin-use-linux-version.patch @@ -0,0 +1,13 @@ +* revert old 1.5 behaviour + +--- libtool-2.4.6/m4/libtool.m4 ++++ libtool-2.4.6/m4/libtool.m4 +@@ -2272,7 +2272,7 @@ + version_type=darwin + need_lib_prefix=no + need_version=no +- library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' ++ library_names_spec='$libname$release$versuffix$shared_ext $libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH 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 new file mode 100644 index 00000000..974cd44d --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-libtoolize-delay-help.patch @@ -0,0 +1,53 @@ +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 new file mode 100644 index 00000000..d27f976c --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-libtoolize-slow.patch @@ -0,0 +1,118 @@ +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 new file mode 100644 index 00000000..c1ea8a82 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-link-fsanitize.patch @@ -0,0 +1,58 @@ +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 +--- + build-aux/ltmain.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index 1cbe875..2a5aaad 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5382,10 +5382,11 @@ func_mode_link () + # -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" + +patch the generated file too to keep help2man from generating man pages +https://bugs.gentoo.org/556512 + +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.sh +@@ -5382,10 +5382,11 @@ func_mode_link () + # -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" +-- +2.6.2 + 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 new file mode 100644 index 00000000..55ec5ae9 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-link-fuse-ld.patch @@ -0,0 +1,54 @@ +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. +--- + build-aux/ltmain.in | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index 2a5aaad..4c24d5d 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5383,10 +5383,11 @@ func_mode_link () + # -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" + +patch the generated file too to keep help2man from generating man pages +https://bugs.gentoo.org/556512 + +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.sh +@@ -5383,10 +5383,11 @@ func_mode_link () + # -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" +-- +2.3.2 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 new file mode 100644 index 00000000..a8fbf28f --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-link-specs.patch @@ -0,0 +1,57 @@ +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> +--- + build-aux/ltmain.in | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index d5cf07a..0c40da0 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5360,10 +5360,12 @@ func_mode_link () + # -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" + +patch the generated file too to keep help2man from generating man pages +https://bugs.gentoo.org/556512 + +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.sh +@@ -5360,10 +5360,12 @@ func_mode_link () + # -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" +-- +2.6.2 + diff --git a/sys-devel/libtool/files/libtool-2.4.6-mint.patch b/sys-devel/libtool/files/libtool-2.4.6-mint.patch new file mode 100644 index 00000000..341a0f02 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-mint.patch @@ -0,0 +1,49 @@ +Patch by Alan Hourihane + +http://bugs.gentoo.org/show_bug.cgi?id=266984 + +diff -ur libtool-2.2.6/configure libtool-2.2.6-mint/configure +--- libtool-2.2.6/configure 2008-09-07 17:52:50.000000000 +0000 ++++ libtool-2.2.6/configure 2009-04-21 08:49:27.000000000 +0000 +@@ -4986,6 +4986,11 @@ + lt_cv_sys_max_cmd_len=8192; + ;; + ++ mint*) ++ # On MiNT this can take a long time and run out of memory. ++ lt_cv_sys_max_cmd_len=8192; ++ ;; ++ + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. +diff -ur libtool-2.2.6/libltdl/configure libtool-2.2.6-mint/libltdl/configure +--- libtool-2.2.6/libltdl/configure 2008-09-07 17:53:05.000000000 +0000 ++++ libtool-2.2.6/libltdl/configure 2009-04-21 08:50:08.000000000 +0000 +@@ -4422,6 +4422,11 @@ + lt_cv_sys_max_cmd_len=8192; + ;; + ++ mint*) ++ # On MiNT this can take a long time and run out of memory. ++ lt_cv_sys_max_cmd_len=8192; ++ ;; ++ + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. +diff -ur libtool-2.2.6/libltdl/m4/libtool.m4 libtool-2.2.6-mint/libltdl/m4/libtool.m4 +--- libtool-2.2.6/m4/libtool.m4 2008-09-05 11:54:41.000000000 +0000 ++++ libtool-2.2.6/m4/libtool.m4 2009-04-21 08:50:26.000000000 +0000 +@@ -1527,6 +1527,11 @@ + lt_cv_sys_max_cmd_len=8192; + ;; + ++ mint*) ++ # On MiNT this can take a long time and run out of memory. ++ lt_cv_sys_max_cmd_len=8192; ++ ;; ++ + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. diff --git a/sys-devel/libtool/files/libtool-2.4.6-ppc64le.patch b/sys-devel/libtool/files/libtool-2.4.6-ppc64le.patch new file mode 100644 index 00000000..78d86c72 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-ppc64le.patch @@ -0,0 +1,111 @@ +From 020afd7d6410f73bc205206abe1b88b4890b83b1 Mon Sep 17 00:00:00 2001 +From: Leno Hou <lenohou@gmail.com> +Date: Sun, 24 Apr 2016 00:46:53 +0800 +Subject: [PATCH] [m4/libtool.m4] linker error for powerpc64le-unknown-linux-gnu + +Hi all, + + 1) As we might know, Gentoo has powerpc64le-unknown-linux-gnu compiler + +leno@localhost ~ $ powerpc64le-unknown-linux-gnu-gcc -v + +Using built-in specs. + +COLLECT_GCC=/usr/powerpc64le-unknown-linux-gnu/gcc-bin/5.3.0/powerpc64le-unknown-linux-gnu-gcc + +COLLECT_LTO_WRAPPER=/usr/libexec/gcc/powerpc64le-unknown-linux-gnu/5.3.0/lto-wrapper + +Target: powerpc64le-unknown-linux-gnu + +Configured with: +/var/tmp/portage/sys-devel/gcc-5.3.0/work/gcc-5.3.0/configure +--host=powerpc64le-unknown-linux-gnu --build=powerpc64le-unknown-linux-gnu +--prefix=/usr --bindir=/usr/powerpc64le-unknown-linux-gnu/gcc-bin/5.3.0 +--includedir=/usr/lib/gcc/powerpc64le-unknown-linux-gnu/5.3.0/include +--datadir=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0 +--mandir=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0/man +--infodir=/usr/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0/info +--with-gxx-include-dir=/usr/lib/gcc/powerpc64le-unknown-linux-gnu/5.3.0/include/g++-v5 +--with-python-dir=/share/gcc-data/powerpc64le-unknown-linux-gnu/5.3.0/python +--enable-languages=c,c++,fortran --enable-obsolete --enable-secureplt +--disable-werror --with-system-zlib --enable-nls --without-included-gettext +--enable-checking=release --with-bugurl=https://bugs.gentoo.org/ +--with-pkgversion='Gentoo 5.3.0 p1.0, pie-0.6.5' --enable-libstdcxx-time +--enable-shared --enable-threads=posix --enable-__cxa_atexit +--enable-clocale=gnu --disable-multilib --enable-altivec +--disable-fixed-point --enable-targets=all --disable-libgcj +--enable-libgomp --disable-libmudflap --disable-libssp --disable-libcilkrts +--enable-lto --without-isl --enable-libsanitizer + +Thread model: posix + +gcc version 5.3.0 (Gentoo 5.3.0 p1.0, pie-0.6.5) + + 2) And the supported emulations + +leno@localhost ~ $ powerpc64le-unknown-linux-gnu-ld -V +GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 + Supported emulations: + elf64lppc + elf32lppc + elf32lppclinux + elf32lppcsim + + 3) But when I set CHOST="powerpc64le-unkown-linux-gnu" in Gentoo and +execute aclocal, automake, libtoolize --copy --force, autoconf. When I +glance in the latest m4/libtool.m4 : + +if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in +... + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" + ;; + powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; +... + *64-bit*) + case $host in +... + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; +... + +seems linked to $LD='$LD-ld -m elf64ppc' and failed to compile packages. + + 4) Below is my workaround patch and works fine for this case. If this is +OK for you, Could this to be merged in upstream? Thanks + +URL: https://debbugs.gnu.org/23348 +URL: https://bugs.gentoo.org/581314 +--- + m4/libtool.m4 | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/m4/libtool.m4 b/m4/libtool.m4 +index ee292aff5bca..758b6951ae07 100644 +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -1417,10 +1417,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; +- powerpcle-*linux*) ++ powerpcle-*linux*|powerpc64le-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; +- powerpc-*linux*) ++ powerpc-*linux*|powerpc64-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) +-- +2.11.1 + diff --git a/sys-devel/libtool/files/libtool-2.4.6-pthread.patch b/sys-devel/libtool/files/libtool-2.4.6-pthread.patch new file mode 100644 index 00000000..49b81c1d --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-pthread.patch @@ -0,0 +1,43 @@ +http://permalink.gmane.org/gmane.comp.gnu.libtool.patches/11704 +https://bugs.gentoo.org/650876 + +From: Pavel Raiskup <praiskup <at> redhat.com> +Subject: [PATCH] libtool: handle the -pthread{,s} options for g++ +Newsgroups: gmane.comp.gnu.libtool.patches +Date: Thursday 28th November 2013 14:18:05 UTC (over 4 years ago) + +As we are forced to pass -nostdlib to g++ for linking, this option +expectedly disables the effectiveness of passed -pthread flag - so +add the -lpthread explicitly to $deplibs to link correctly. + +References: +http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 +https://bugzilla.redhat.com/show_bug.cgi?id=661333 +http://lists.gnu.org/archive/html/bug-libtool/2013-01/msg00018.htm + +* build-aux/ltmain.in (func_mode_link): Explicitly add -lpthread +flag into $deplibs when -pthread is passed (for g++ only). +--- + build-aux/ltmain.in | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index fba05c1..f202b80 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -5113,6 +5113,16 @@ func_mode_link () + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac ++ ++ # As we are forced to pass -nostdlib to g++ during linking, the option ++ # -pthread{,s} is not in effect; add the -lpthread to $deplist ++ # explicitly to link correctly. ++ if test "$tagname" = CXX -a x"$with_gcc" = xyes; then ++ case "$arg" in ++ -pthread*) func_append deplibs " -lpthread" ;; ++ esac ++ fi ++ + continue + ;; diff --git a/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch new file mode 100644 index 00000000..54461ccc --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-pthread_bootstrapped.patch @@ -0,0 +1,21 @@ +https://bugs.gentoo.org/650876 + +--- libtool-2.4.6/build-aux/ltmain.sh ++++ libtool-2.4.6/build-aux/ltmain.sh +@@ -7079,6 +7079,16 @@ + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac ++ ++ # As we are forced to pass -nostdlib to g++ during linking, the option ++ # -pthread{,s} is not in effect; add the -lpthread to $deplist ++ # explicitly to link correctly. ++ if test "$tagname" = CXX -a x"$with_gcc" = xyes; then ++ case "$arg" in ++ -pthread*) func_append deplibs " -lpthread" ;; ++ esac ++ fi ++ + continue + ;; + 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 new file mode 100644 index 00000000..0eeffac7 --- /dev/null +++ b/sys-devel/libtool/files/libtool-2.4.6-sed-quote-speedup.patch @@ -0,0 +1,268 @@ +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. +--- + NEWS | 3 +++ + bootstrap | 61 +++++++++++++++++++++++++++++++++++++++++++------ + build-aux/ltmain.in | 10 ++++---- + gl/build-aux/funclib.sh | 61 +++++++++++++++++++++++++++++++++++++++++++------ + 4 files changed, 117 insertions(+), 18 deletions(-) + +diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in +index 0c40da0..24acefd 100644 +--- a/build-aux/ltmain.in ++++ b/build-aux/ltmain.in +@@ -3346,7 +3346,8 @@ else + 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. +@@ -8596,8 +8597,8 @@ EOF + 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. +@@ -8843,7 +8844,8 @@ EOF + 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/gl/build-aux/funclib.sh b/gl/build-aux/funclib.sh +index 39d972e..47d8b95 100644 +--- 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_relative_path () + } + + ++# 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 () + 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 + +patch the generated file too to keep help2man from generating man pages +https://bugs.gentoo.org/556512 + +--- a/build-aux/ltmain.sh ++++ b/build-aux/ltmain.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_relative_path () + } + + ++# 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 () + 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 +@@ -3346,7 +3346,8 @@ else + 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. +@@ -8596,8 +8597,8 @@ EOF + 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. +@@ -8843,7 +8844,8 @@ EOF + 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 +-- +2.6.2 + diff --git a/sys-devel/libtool/libtool-2.4.6-r1337.ebuild b/sys-devel/libtool/libtool-2.4.6-r1337.ebuild new file mode 100644 index 00000000..0146056f --- /dev/null +++ b/sys-devel/libtool/libtool-2.4.6-r1337.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +LIBTOOLIZE="true" #225559 +WANT_LIBTOOL="none" +inherit autotools epatch epunt-cxx multilib unpacker prefix + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="git://git.savannah.gnu.org/${PN}.git + http://git.savannah.gnu.org/r/${PN}.git" + inherit git-r3 +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" +fi + +DESCRIPTION="A shared library tool for developers" +HOMEPAGE="https://www.gnu.org/software/libtool/" + +LICENSE="GPL-2" +SLOT="2" +IUSE="vanilla" + +# Pull in libltdl directly until we convert packages to the new dep. +RDEPEND="sys-devel/gnuconfig + >=sys-devel/autoconf-2.69 + >=sys-devel/automake-1.13 + dev-libs/libltdl:0 + !<sys-apps/sandbox-2.10-r4" +DEPEND="${RDEPEND} + app-arch/xz-utils" +[[ ${PV} == "9999" ]] && DEPEND+=" sys-apps/help2man" + +PATCHES=( + "${FILESDIR}"/${PN}-2.4.3-use-linux-version-in-fbsd.patch #109105 + "${FILESDIR}"/${P}-link-specs.patch + "${FILESDIR}"/${P}-link-fsanitize.patch #573744 + "${FILESDIR}"/${P}-link-fuse-ld.patch + "${FILESDIR}"/${P}-libtoolize-slow.patch + "${FILESDIR}"/${P}-libtoolize-delay-help.patch + "${FILESDIR}"/${P}-sed-quote-speedup.patch #542252 + "${FILESDIR}"/${P}-ppc64le.patch #581314 + + "${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 +) + +src_unpack() { + if [[ ${PV} == "9999" ]] ; then + git-r3_src_unpack + else + unpacker_src_unpack + fi +} + +src_prepare() { + if [[ "${PV}" = 9999 ]] ; then + eapply "${FILESDIR}"/${P}-pthread.patch #650876 + ./bootstrap || die + else + PATCHES+=( + "${FILESDIR}"/${P}-pthread_bootstrapped.patch #650876 + ) + fi + + if use vanilla ; then + eapply_user + return 0 + else + default + fi + + if use prefix ; then + # seems that libtool has to know about EPREFIX a little bit + # better, since it fails to find prefix paths to search libs + # from, resulting in some packages building static only, since + # libtool is fooled into thinking that libraries are unavailable + # (argh...). This could also be fixed by making the gcc wrapper + # return the correct result for -print-search-dirs (doesn't + # include prefix dirs ...). + eapply "${FILESDIR}"/${PN}-2.2.10-eprefix.patch + eprefixify m4/libtool.m4 + fi + + pushd libltdl >/dev/null + AT_NOELIBTOOLIZE=yes eautoreconf + popd >/dev/null + AT_NOELIBTOOLIZE=yes eautoreconf + epunt_cxx + + # Make sure timestamps don't trigger a rebuild of man pages. #556512 + if [[ ${PV} != "9999" ]] ; then + touch doc/*.1 + export HELP2MAN=false + fi +} + +src_configure() { + # the libtool script uses bash code in it and at configure time, tries + # to find a bash shell. if /bin/sh is bash, it uses that. this can + # cause problems for people who switch /bin/sh on the fly to other + # 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 + export ac_cv_path_SED="$(basename "$(type -P sed)")" + + local myconf + [[ ${CHOST} == *-darwin* ]] && myconf="--program-prefix=g" + ECONF_SOURCE=${S} econf ${myconf} --disable-ltdl-install +} + +src_test() { + emake check +} + +src_install() { + default + + local x + while read -d $'\0' -r x ; do + ln -sf "${EPREFIX}"/usr/share/gnuconfig/${x##*/} "${x}" || die + done < <(find "${ED}" '(' -name config.guess -o -name config.sub ')' -print0) +} |