summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/libtool
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/libtool')
-rw-r--r--meta/recipes-devtools/libtool/libtool-2.4.6.inc48
-rw-r--r--meta/recipes-devtools/libtool/libtool-2.5.0.inc40
-rw-r--r--meta/recipes-devtools/libtool/libtool-cross_2.5.0.bb (renamed from meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb)17
-rw-r--r--meta/recipes-devtools/libtool/libtool-native_2.4.6.bb22
-rw-r--r--meta/recipes-devtools/libtool/libtool-native_2.5.0.bb11
-rw-r--r--meta/recipes-devtools/libtool/libtool/0001-libtool-Fix-support-for-NIOS2-processor.patch68
-rw-r--r--meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Handle-trailing-slashes-on-install-command.patch36
-rw-r--r--meta/recipes-devtools/libtool/libtool/0003-ltmain.in-Add-missing-sysroot-to-library-path.patch26
-rw-r--r--meta/recipes-devtools/libtool/libtool/0004-ltmain.sh-Fix-sysroot-paths-being-encoded-into-RPATH.patch (renamed from meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch)37
-rw-r--r--meta/recipes-devtools/libtool/libtool/0005-ltmain.in-Don-t-encode-RATHS-which-match-default-lin.patch (renamed from meta/recipes-devtools/libtool/libtool/fix-rpath.patch)36
-rw-r--r--meta/recipes-devtools/libtool/libtool/0006-libtool.m4-Handle-as-a-sysroot-correctly.patch38
-rw-r--r--meta/recipes-devtools/libtool/libtool/0008-libtool-Check-for-static-libs-for-internal-compiler-.patch30
-rw-r--r--meta/recipes-devtools/libtool/libtool/dont-depend-on-help2man.patch3
-rw-r--r--meta/recipes-devtools/libtool/libtool/filefix.patch30
-rw-r--r--meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch42
-rw-r--r--meta/recipes-devtools/libtool/libtool/fixinstall.patch6
-rw-r--r--meta/recipes-devtools/libtool/libtool/norm-rpath.patch38
-rw-r--r--meta/recipes-devtools/libtool/libtool/prefix.patch98
-rw-r--r--meta/recipes-devtools/libtool/libtool/rename-with-sysroot.patch166
-rw-r--r--meta/recipes-devtools/libtool/libtool/trailingslash.patch35
-rw-r--r--meta/recipes-devtools/libtool/libtool/unwind-opt-parsing.patch179
-rw-r--r--meta/recipes-devtools/libtool/libtool/use-sysroot-in-libpath.patch22
-rw-r--r--meta/recipes-devtools/libtool/libtool_2.5.0.bb (renamed from meta/recipes-devtools/libtool/libtool_2.4.6.bb)8
-rw-r--r--meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb31
-rw-r--r--meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb23
25 files changed, 290 insertions, 800 deletions
diff --git a/meta/recipes-devtools/libtool/libtool-2.4.6.inc b/meta/recipes-devtools/libtool/libtool-2.4.6.inc
deleted file mode 100644
index f307a10751..0000000000
--- a/meta/recipes-devtools/libtool/libtool-2.4.6.inc
+++ /dev/null
@@ -1,48 +0,0 @@
-SUMMARY = "Generic library support script"
-DESCRIPTION = "This is GNU libtool, a generic library support script. \
-Libtool hides the complexity of generating special library types \
-(such as shared libraries) behind a consistent interface."
-HOMEPAGE = "http://www.gnu.org/software/libtool/libtool.html"
-SECTION = "devel"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://libltdl/COPYING.LIB;md5=4fbd65380cdd255951079008b364516c "
-
-SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
- file://trailingslash.patch \
- file://rename-with-sysroot.patch \
- file://use-sysroot-in-libpath.patch \
- file://fix-final-rpath.patch \
- file://fix-rpath.patch \
- file://norm-rpath.patch \
- file://dont-depend-on-help2man.patch \
- file://fix-resolve-lt-sysroot.patch \
- file://nohardcodepaths.patch \
- file://unwind-opt-parsing.patch \
- file://0001-libtool-Fix-support-for-NIOS2-processor.patch \
- "
-
-SRC_URI[md5sum] = "addf44b646ddb4e3919805aa88fa7c5e"
-SRC_URI[sha256sum] = "e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3"
-
-do_compile_prepend () {
- # Sometimes this file doesn't get rebuilt, force the issue
- rm -f ${S}/build-aux/ltmain.sh
- make build-aux/ltmain.sh
- ./config.status
-}
-
-inherit autotools texinfo
-EXTRA_AUTORECONF = "--exclude=libtoolize"
-
-CACHED_CONFIGUREVARS += "ac_cv_path_GREP=grep"
-
-DEPENDS = "libtool-native"
-
-PACKAGES =+ "libltdl"
-FILES_${PN} += "${datadir}/aclocal"
-
-FILES_${PN}-dev_remove = "${datadir}/aclocal"
-FILES_libltdl = "${libdir}/libltdl${SOLIBS}"
-
-export CONFIG_SHELL="/bin/bash"
diff --git a/meta/recipes-devtools/libtool/libtool-2.5.0.inc b/meta/recipes-devtools/libtool/libtool-2.5.0.inc
new file mode 100644
index 0000000000..e0c9aae387
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool-2.5.0.inc
@@ -0,0 +1,40 @@
+SUMMARY = "Generic library support script"
+DESCRIPTION = "This is GNU libtool, a generic library support script. \
+Libtool hides the complexity of generating special library types \
+(such as shared libraries) behind a consistent interface."
+HOMEPAGE = "http://www.gnu.org/software/libtool/libtool.html"
+SECTION = "devel"
+LICENSE = "GPL-2.0-only & LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://libltdl/COPYING.LIB;md5=4fbd65380cdd255951079008b364516c "
+
+SRC_URI = "https://alpha.gnu.org/gnu/libtool/libtool-${PV}.tar.gz \
+ file://0001-ltmain.in-Handle-trailing-slashes-on-install-command.patch \
+ file://0003-ltmain.in-Add-missing-sysroot-to-library-path.patch \
+ file://0004-ltmain.sh-Fix-sysroot-paths-being-encoded-into-RPATH.patch \
+ file://0005-ltmain.in-Don-t-encode-RATHS-which-match-default-lin.patch \
+ file://dont-depend-on-help2man.patch \
+ file://0006-libtool.m4-Handle-as-a-sysroot-correctly.patch \
+ file://0008-libtool-Check-for-static-libs-for-internal-compiler-.patch \
+ file://nohardcodepaths.patch \
+ file://filefix.patch \
+ "
+
+
+
+SRC_URI[sha256sum] = "d438c317455d85554ce2f998be48866fd40cfcbf834d60b3026f4fc0ed583d23"
+
+inherit autotools texinfo
+EXTRA_AUTORECONF = "--exclude=libtoolize"
+
+CACHED_CONFIGUREVARS += "ac_cv_path_GREP=grep"
+
+DEPENDS = "libtool-native"
+
+PACKAGES =+ "libltdl"
+FILES:${PN} += "${datadir}/aclocal"
+
+FILES:${PN}-dev:remove = "${datadir}/aclocal"
+FILES:libltdl = "${libdir}/libltdl${SOLIBS}"
+
+export CONFIG_SHELL="/bin/bash"
diff --git a/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb b/meta/recipes-devtools/libtool/libtool-cross_2.5.0.bb
index 522bf3a0e9..18849cb8ef 100644
--- a/meta/recipes-devtools/libtool/libtool-cross_2.4.6.bb
+++ b/meta/recipes-devtools/libtool/libtool-cross_2.5.0.bb
@@ -1,17 +1,11 @@
require libtool-${PV}.inc
PACKAGES = ""
-SRC_URI += "file://prefix.patch"
SRC_URI += "file://fixinstall.patch"
datadir = "${STAGING_DIR_TARGET}${target_datadir}"
-do_configure_prepend () {
- # Remove any existing libtool m4 since old stale versions would break
- # any upgrade
- rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
- rm -f ${STAGING_DATADIR}/aclocal/lt*.m4
-}
+inherit nopackages
#
# ccache may or may not be INHERITED, we remove references to it so the sstate
@@ -20,15 +14,16 @@ do_configure_prepend () {
# Find references to LTCC="ccache xxx-gcc" and CC="ccache xxx-gcc"
#
do_install () {
+ ln -s false ${D}
install -d ${D}${bindir_crossscripts}/
- install -m 0755 ${HOST_SYS}-libtool ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
+ install -m 0755 libtool ${D}${bindir_crossscripts}/libtool
sed -e 's@^\(predep_objects="\).*@\1"@' \
-e 's@^\(postdep_objects="\).*@\1"@' \
-e 's@^CC="ccache.@CC="@' \
-e 's@^LTCC="ccache.@LTCC="@' \
- -i ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
- sed -i '/^archive_cmds=/s/\-nostdlib//g' ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
- sed -i '/^archive_expsym_cmds=/s/\-nostdlib//g' ${D}${bindir_crossscripts}/${HOST_SYS}-libtool
+ -i ${D}${bindir_crossscripts}/libtool
+ sed -i '/^archive_cmds=/s/\-nostdlib//g' ${D}${bindir_crossscripts}/libtool
+ sed -i '/^archive_expsym_cmds=/s/\-nostdlib//g' ${D}${bindir_crossscripts}/libtool
GREP='/bin/grep' SED='sed' ${S}/build-aux/inline-source libtoolize > ${D}${bindir_crossscripts}/libtoolize
chmod 0755 ${D}${bindir_crossscripts}/libtoolize
install -d ${D}${target_datadir}/libtool/build-aux/
diff --git a/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb b/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb
deleted file mode 100644
index 4c5218ade0..0000000000
--- a/meta/recipes-devtools/libtool/libtool-native_2.4.6.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-require libtool-${PV}.inc
-
-DEPENDS = ""
-
-SRC_URI += "file://prefix.patch"
-
-inherit native
-
-EXTRA_OECONF = " --with-libtool-sysroot=${STAGING_DIR_NATIVE}"
-
-do_configure_prepend () {
- # Remove any existing libtool m4 since old stale versions would break
- # any upgrade
- rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
- rm -f ${STAGING_DATADIR}/aclocal/lt*.m4
-}
-
-do_install () {
- autotools_do_install
- install -d ${D}${bindir}/
- install -m 0755 ${HOST_SYS}-libtool ${D}${bindir}/${HOST_SYS}-libtool
-}
diff --git a/meta/recipes-devtools/libtool/libtool-native_2.5.0.bb b/meta/recipes-devtools/libtool/libtool-native_2.5.0.bb
new file mode 100644
index 0000000000..be96b52dd6
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool-native_2.5.0.bb
@@ -0,0 +1,11 @@
+require libtool-${PV}.inc
+
+DEPENDS = ""
+
+inherit native
+
+do_install () {
+ autotools_do_install
+ install -d ${D}${bindir}/
+ install -m 0755 libtool ${D}${bindir}/libtool
+}
diff --git a/meta/recipes-devtools/libtool/libtool/0001-libtool-Fix-support-for-NIOS2-processor.patch b/meta/recipes-devtools/libtool/libtool/0001-libtool-Fix-support-for-NIOS2-processor.patch
deleted file mode 100644
index bbd36d8dc1..0000000000
--- a/meta/recipes-devtools/libtool/libtool/0001-libtool-Fix-support-for-NIOS2-processor.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From df2cd898e48208f26320d40c3ed6b19c75c27142 Mon Sep 17 00:00:00 2001
-From: Marek Vasut <marex@denx.de>
-Date: Thu, 17 Sep 2015 00:43:15 +0200
-Subject: [PATCH] libtool: Fix support for NIOS2 processor
-
-The name of the system contains the string "nios2". This string
-is caught by the some of the greedy checks for OS/2 in libtool,
-in particular the *os2* branches of switch statements match for
-the nios2 string, which results in incorrect behavior of libtool.
-
-This patch adds an explicit check for *nios2* before the *os2*
-checks to prevent the OS/2 check incorrectly trapping the nios2
-as well.
-
-Signed-off-by: Marek Vasut <marex@denx.de>
-Upstream-Status: Submitted
----
- build-aux/ltmain.in | 20 ++++++++++++++++++++
- 1 file changed, 20 insertions(+)
-
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
-index d5cf07a..4164284 100644
---- a/build-aux/ltmain.in
-+++ b/build-aux/ltmain.in
-@@ -504,6 +504,12 @@ libtool_validate_options ()
- test : = "$debug_cmd" || func_append preserve_args " --debug"
-
- case $host in
-+ # For NIOS2, we want to make sure that it's not caught by the
-+ # more general OS/2 check below. Otherwise, NIOS2 is the same
-+ # as the default option.
-+ *nios2*)
-+ opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
-+ ;;
- # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
- # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
- *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
-@@ -6220,6 +6226,15 @@ func_mode_link ()
- if test -n "$library_names" &&
- { test no = "$use_static_libs" || test -z "$old_library"; }; then
- case $host in
-+ *nios2*)
-+ # For NIOS2, we want to make sure that it's not caught by the
-+ # more general OS/2 check below. Otherwise, NIOS2 is the same
-+ # as the default option.
-+ if test no = "$installed"; then
-+ func_append notinst_deplibs " $lib"
-+ need_relink=yes
-+ fi
-+ ;;
- *cygwin* | *mingw* | *cegcc* | *os2*)
- # No point in relinking DLLs because paths are not encoded
- func_append notinst_deplibs " $lib"
-@@ -6290,6 +6305,11 @@ func_mode_link ()
- elif test -n "$soname_spec"; then
- # bleh windows
- case $host in
-+ *nios2*)
-+ # For NIOS2, we want to make sure that it's not caught by the
-+ # more general OS/2 check below. Otherwise, NIOS2 is the same
-+ # as the default option.
-+ ;;
- *cygwin* | mingw* | *cegcc* | *os2*)
- func_arith $current - $age
- major=$func_arith_result
---
-2.5.1
-
diff --git a/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Handle-trailing-slashes-on-install-command.patch b/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Handle-trailing-slashes-on-install-command.patch
new file mode 100644
index 0000000000..d5d906e6b6
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/0001-ltmain.in-Handle-trailing-slashes-on-install-command.patch
@@ -0,0 +1,36 @@
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Subject: [PATCH 01/12] ltmain.in: Handle trailing slashes on install commands correctly
+
+A command like:
+
+libtool --mode=install /usr/bin/install -c gck-roots-store-standalone.la '/image/usr/lib/gnome-keyring/standalone/'
+
+where the path ends with a trailing slash currently fails. This occurs in
+software like gnome-keyring or pulseaudio and is because the comparision
+code doesn't see the paths as equal. Strip both paths to ensure this works
+reliably.
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00010.html]
+
+Index: libtool-2.5.0/build-aux/ltmain.in
+===================================================================
+--- libtool-2.5.0.orig/build-aux/ltmain.in
++++ libtool-2.5.0/build-aux/ltmain.in
+@@ -2382,8 +2382,14 @@ func_mode_install ()
+ func_append dir "$objdir"
+
+ if test -n "$relink_command"; then
++ # Strip any trailing slash from the destination.
++ func_stripname '' '/' "$libdir"
++ destlibdir=$func_stripname_result
++ func_stripname '' '/' "$destdir"
++ s_destdir=$func_stripname_result
++
+ # Determine the prefix the user has applied to our future dir.
+- inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
++ inst_prefix_dir=`$ECHO "X$s_destdir" | $Xsed -e "s%$destlibdir\$%%"`
+
+ # Don't allow the user to place us outside of our expected
+ # location b/c this prevents finding dependent libraries that
diff --git a/meta/recipes-devtools/libtool/libtool/0003-ltmain.in-Add-missing-sysroot-to-library-path.patch b/meta/recipes-devtools/libtool/libtool/0003-ltmain.in-Add-missing-sysroot-to-library-path.patch
new file mode 100644
index 0000000000..2436f68a49
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/0003-ltmain.in-Add-missing-sysroot-to-library-path.patch
@@ -0,0 +1,26 @@
+From: Khem Raj <raj.khem@gmail.com>
+Subject: [PATCH 03/12] ltmain.in: Add missing sysroot to library path
+
+When using a sysroot we should append it to libdir, which is helpful in
+cross builds as the system is staged in the sysroot. For normal builds,
+i.e. when lt_sysroot is not set, it will still behave the same and add
+-L/usr/lib to the relink command.
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00017.html]
+Upstream-Status: Backport [https://git.savannah.gnu.org/cgit/libtool.git/commit/?id=3221f9f0fb98d5740ab5d0e8db6a731302520644]
+
+Index: libtool-2.5.0/build-aux/ltmain.in
+===================================================================
+--- libtool-2.5.0.orig/build-aux/ltmain.in
++++ libtool-2.5.0/build-aux/ltmain.in
+@@ -6514,7 +6514,7 @@ func_mode_link ()
+ fi
+ else
+ # We cannot seem to hardcode it, guess we'll fake it.
+- add_dir=-L$libdir
++ add_dir="-L$lt_sysroot$libdir"
+ # Try looking first in the location we're being installed to.
+ if test -n "$inst_prefix_dir"; then
+ case $libdir in
diff --git a/meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch b/meta/recipes-devtools/libtool/libtool/0004-ltmain.sh-Fix-sysroot-paths-being-encoded-into-RPATH.patch
index 5c9f8cc9c0..a6b3313d71 100644
--- a/meta/recipes-devtools/libtool/libtool/fix-final-rpath.patch
+++ b/meta/recipes-devtools/libtool/libtool/0004-ltmain.sh-Fix-sysroot-paths-being-encoded-into-RPATH.patch
@@ -1,32 +1,33 @@
-Upstream-Status: Inappropriate [embedded specific]
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Subject: [PATCH 04/12] ltmain.sh: Fix sysroot paths being encoded into RPATHs
-Enalbing sysroot support exposed a bug where the final library
-had an RPATH encoded into it which still pointed to the sysroot.
-This works around the issue until it gets sorted out upstream.
+There is a bug where RPATHs could end up containing sysroot values when
+cross compiling which is obviously incorrect. Strip out sysroot components
+from libdir when building RPATH values to avoid this.
-Fix suggested by Richard Purdie <richard.purdie@intel.com>
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
-Updated by: Robert Yang <liezhi.yang@windriver.com>
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
---- a/build-aux/ltmain.in
-+++ b/build-aux/ltmain.in
-@@ -7569,9 +7569,11 @@ EOF
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00009.html]
+
+Index: libtool-2.5.0/build-aux/ltmain.in
+===================================================================
+--- libtool-2.5.0.orig/build-aux/ltmain.in
++++ libtool-2.5.0/build-aux/ltmain.in
+@@ -7584,9 +7584,11 @@ func_mode_link ()
test relink = "$opt_mode" || rpath=$compile_rpath$rpath
for libdir in $rpath; do
if test -n "$hardcode_libdir_flag_spec"; then
-+ func_replace_sysroot "$libdir"
-+ libdir=$func_replace_sysroot_result
-+ func_stripname '=' '' "$libdir"
-+ libdir=$func_stripname_result
++ func_replace_sysroot "$libdir"
++ libdir=$func_replace_sysroot_result
++ func_stripname '=' '' "$libdir"
++ libdir=$func_stripname_result
if test -n "$hardcode_libdir_separator"; then
- func_replace_sysroot "$libdir"
- libdir=$func_replace_sysroot_result
if test -z "$hardcode_libdirs"; then
hardcode_libdirs=$libdir
else
-@@ -8301,6 +8303,10 @@ EOF
+@@ -8316,6 +8318,10 @@ func_mode_link ()
hardcode_libdirs=
for libdir in $compile_rpath $finalize_rpath; do
if test -n "$hardcode_libdir_flag_spec"; then
@@ -37,7 +38,7 @@ diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
if test -n "$hardcode_libdir_separator"; then
if test -z "$hardcode_libdirs"; then
hardcode_libdirs=$libdir
-@@ -8352,6 +8358,10 @@ EOF
+@@ -8367,6 +8373,10 @@ func_mode_link ()
hardcode_libdirs=
for libdir in $finalize_rpath; do
if test -n "$hardcode_libdir_flag_spec"; then
diff --git a/meta/recipes-devtools/libtool/libtool/fix-rpath.patch b/meta/recipes-devtools/libtool/libtool/0005-ltmain.in-Don-t-encode-RATHS-which-match-default-lin.patch
index a2ec9473e7..54e602f118 100644
--- a/meta/recipes-devtools/libtool/libtool/fix-rpath.patch
+++ b/meta/recipes-devtools/libtool/libtool/0005-ltmain.in-Don-t-encode-RATHS-which-match-default-lin.patch
@@ -1,18 +1,22 @@
-We don't want to add RPATHS which match default linker
-search paths, they're a waste of space. This patch
-filters libtools list and removes the ones we don't need.
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Subject: [PATCH 05/12] ltmain.in: Don't encode RATHS which match default linker paths
-RP 23/9/2011
+We don't want to add RPATHS which match default linker search paths, they're
+a waste of space. This patch filters libtools list of paths to encoode and
+removes the ones we don't need.
-Upstream-Status: Pending
+Libtool may be passed link paths of the form "/usr/lib/../lib" so normalize
+the paths before comparision.
-Updated by: Robert Yang <liezhi.yang@windriver.com>
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-Index: libtool-2.4.2/build-aux/ltmain.in
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00013.html]
+
+Index: libtool-2.5.0/build-aux/ltmain.in
===================================================================
---- libtool-2.4.2.orig/build-aux/ltmain.in
-+++ libtool-2.4.2/build-aux/ltmain.in
-@@ -7286,8 +7286,14 @@ EOF
+--- libtool-2.5.0.orig/build-aux/ltmain.in
++++ libtool-2.5.0/build-aux/ltmain.in
+@@ -7602,8 +7602,16 @@ func_mode_link ()
esac
fi
else
@@ -20,8 +24,10 @@ Index: libtool-2.4.2/build-aux/ltmain.in
- func_append dep_rpath " $flag"
+ # We only want to hardcode in an rpath if it isn't in the
+ # default dlsearch path.
++ func_normal_abspath "$libdir"
++ libdir_norm=$func_normal_abspath_result
+ case " $sys_lib_dlsearch_path " in
-+ *" $libdir "*) ;;
++ *" $libdir_norm "*) ;;
+ *) eval flag=\"$hardcode_libdir_flag_spec\"
+ func_append dep_rpath " $flag"
+ ;;
@@ -29,7 +35,7 @@ Index: libtool-2.4.2/build-aux/ltmain.in
fi
elif test -n "$runpath_var"; then
case "$perm_rpath " in
-@@ -8019,8 +8025,14 @@ EOF
+@@ -8336,8 +8344,16 @@ func_mode_link ()
esac
fi
else
@@ -37,8 +43,10 @@ Index: libtool-2.4.2/build-aux/ltmain.in
- func_append rpath " $flag"
+ # We only want to hardcode in an rpath if it isn't in the
+ # default dlsearch path.
++ func_normal_abspath "$libdir"
++ libdir_norm=$func_normal_abspath_result
+ case " $sys_lib_dlsearch_path " in
-+ *" $libdir "*) ;;
++ *" $libdir_norm "*) ;;
+ *) eval flag=\"$hardcode_libdir_flag_spec\"
+ rpath+=" $flag"
+ ;;
@@ -46,7 +54,7 @@ Index: libtool-2.4.2/build-aux/ltmain.in
fi
elif test -n "$runpath_var"; then
case "$perm_rpath " in
-@@ -8070,8 +8082,14 @@ EOF
+@@ -8391,8 +8407,14 @@ func_mode_link ()
esac
fi
else
diff --git a/meta/recipes-devtools/libtool/libtool/0006-libtool.m4-Handle-as-a-sysroot-correctly.patch b/meta/recipes-devtools/libtool/libtool/0006-libtool.m4-Handle-as-a-sysroot-correctly.patch
new file mode 100644
index 0000000000..feb1048b55
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/0006-libtool.m4-Handle-as-a-sysroot-correctly.patch
@@ -0,0 +1,38 @@
+libtool.m4: Change libtool to handle sysroots by default
+
+Rather than using no sysroot by default, always query gcc to obtain the sysroot.
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Upstream-Status: Inappropriate [Upstream are unlikely to accept this change of default]
+
+---
+ m4/libtool.m4 | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+Index: libtool-2.5.0/m4/libtool.m4
+===================================================================
+--- libtool-2.5.0.orig/m4/libtool.m4
++++ libtool-2.5.0/m4/libtool.m4
+@@ -1253,18 +1253,18 @@ dnl lt_sysroot will always be passed unq
+ dnl in case the user passed a directory name.
+ lt_sysroot=
+ case $with_sysroot in #(
+- yes)
++ no)
+ if test yes = "$GCC"; then
+ # Trim trailing / since we'll always append absolute paths and we want
+ # to avoid //, if only for less confusing output for the user.
+ lt_sysroot=`$CC --print-sysroot 2>/dev/null | $SED 's:/\+$::'`
+ fi
+ ;; #(
++ yes|''|/)
++ ;; #(
+ /*)
+ lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"`
+ ;; #(
+- no|'')
+- ;; #(
+ *)
+ AC_MSG_RESULT([$with_sysroot])
+ AC_MSG_ERROR([The sysroot must be an absolute path.])
diff --git a/meta/recipes-devtools/libtool/libtool/0008-libtool-Check-for-static-libs-for-internal-compiler-.patch b/meta/recipes-devtools/libtool/libtool/0008-libtool-Check-for-static-libs-for-internal-compiler-.patch
new file mode 100644
index 0000000000..c103ebb7bf
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/0008-libtool-Check-for-static-libs-for-internal-compiler-.patch
@@ -0,0 +1,30 @@
+From: Khem Raj <raj.khem@gmail.com>
+Subject: [PATCH 08/12] libtool: Check for static libs for internal compiler libraries
+
+Libtool checks only for libraries linked as -l* when trying to
+find internal compiler libraries. Clang, however uses the absolute
+path to link its internal libraries e.g. compiler_rt. This patch
+handles clang's statically linked libraries when finding internal
+compiler libraries.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+https://crbug.com/749263
+https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27866
+
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00016.html]
+
+Index: libtool-2.5.0/m4/libtool.m4
+===================================================================
+--- libtool-2.5.0.orig/m4/libtool.m4
++++ libtool-2.5.0/m4/libtool.m4
+@@ -7553,7 +7553,7 @@ if AC_TRY_EVAL(ac_compile); then
+ for p in `eval "$output_verbose_link_cmd"`; do
+ case $prev$p in
+
+- -L* | -R* | -l*)
++ -L* | -R* | -l* | */libclang_rt.*.a)
+ # Some compilers place space between "-{L,R,l}" and the path.
+ # Remove the space.
+ if test x-L = x"$p" ||
diff --git a/meta/recipes-devtools/libtool/libtool/dont-depend-on-help2man.patch b/meta/recipes-devtools/libtool/libtool/dont-depend-on-help2man.patch
index fd4084c859..0013d16544 100644
--- a/meta/recipes-devtools/libtool/libtool/dont-depend-on-help2man.patch
+++ b/meta/recipes-devtools/libtool/libtool/dont-depend-on-help2man.patch
@@ -4,9 +4,10 @@ Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
Updated by: Robert Yang <liezhi.yang@windriver.com>
diff --git a/Makefile.am b/Makefile.am
+index 7bd7f72..c29860e 100644
--- a/Makefile.am
+++ b/Makefile.am
-@@ -404,21 +404,6 @@ $(notes_txt): $(notes_texi)
+@@ -411,21 +411,6 @@ $(notes_txt): $(notes_texi)
$(AM_V_GEN)$(MAKEINFO) -P '$(srcdir)/doc' --no-headers \
$(MAKEINFOFLAGS) -o '$@' '$(notes_texi)'
diff --git a/meta/recipes-devtools/libtool/libtool/filefix.patch b/meta/recipes-devtools/libtool/libtool/filefix.patch
new file mode 100644
index 0000000000..4d85132954
--- /dev/null
+++ b/meta/recipes-devtools/libtool/libtool/filefix.patch
@@ -0,0 +1,30 @@
+[PATCH] libtool.m4: Fix AC_CHECK_PROG usage
+
+In commit:
+
+https://git.savannah.gnu.org/cgit/libtool.git/commit/m4/libtool.m4?id=64bef5ba65f6820cd5f88e5249324b4f5955ee25
+
+AC_CHECK_TOOL was changed to AC_CHECK_PROG however the arguments are
+different and this result is a value of ":". Change this to match the
+original intent.
+
+The lack of FILECMD was causing failures for mips64 builds as -m elf was
+being passed to LD which isn't supported on our targets.
+
+Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2024-06/msg00000.html]
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Index: libtool-2.5.0/m4/libtool.m4
+===================================================================
+--- libtool-2.5.0.orig/m4/libtool.m4
++++ libtool-2.5.0/m4/libtool.m4
+@@ -8216,7 +8216,7 @@ AC_SUBST([DLLTOOL])
+ # ----------------
+ # Check for a file(cmd) program that can be used to detect file type and magic
+ m4_defun([_LT_DECL_FILECMD],
+-[AC_CHECK_PROG([FILECMD], [file], [:])
++[AC_CHECK_PROG([FILECMD], [file], [file], [:])
+ _LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types])
+ ])# _LD_DECL_FILECMD
+
diff --git a/meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch b/meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch
deleted file mode 100644
index 1bd95980c0..0000000000
--- a/meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-Upstream-Status: Pending
-
-This patch updates libtool.m4 (and its output) to resolve a problem
-with variable 'lt_sysroot' not being properly updated if the option
-'--with[-libtool]-sysroot' is not provided when running the 'configure'
-script for a package.
-
-I have also reported the problem to libtool here
-
-http://lists.gnu.org/archive/html/bug-libtool/2013-09/msg00005.html
-
-Signed-off-by: Hans Beckerus <hans.beckerus at gmail.com>
-Updated by: Robert Yang <liezhi.yang@windriver.com>
----
-diff --git a/m4/libtool.m4 b/m4/libtool.m4
---- a/m4/libtool.m4
-+++ b/m4/libtool.m4
-@@ -1225,16 +1225,21 @@ dnl lt_sysroot will always be passed unquoted. We quote it here
- dnl in case the user passed a directory name.
- lt_sysroot=
- case $with_libtool_sysroot in #(
-- yes)
-+ no)
- if test yes = "$GCC"; then
- lt_sysroot=`$CC --print-sysroot 2>/dev/null`
-+ # Treat "/" the same a an unset sysroot. It seems to be more
-+ # compatible across host platforms that way!?
-+ if test "$lt_sysroot" = /; then
-+ lt_sysroot=
-+ fi
- fi
- ;; #(
-+ yes|''|/)
-+ ;; #(
- /*)
- lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
- ;; #(
-- no|'')
-- ;; #(
- *)
- AC_MSG_RESULT([$with_libtool_sysroot])
- AC_MSG_ERROR([The sysroot must be an absolute path.])
diff --git a/meta/recipes-devtools/libtool/libtool/fixinstall.patch b/meta/recipes-devtools/libtool/libtool/fixinstall.patch
index 8f343bf436..48330d82fb 100644
--- a/meta/recipes-devtools/libtool/libtool/fixinstall.patch
+++ b/meta/recipes-devtools/libtool/libtool/fixinstall.patch
@@ -27,9 +27,9 @@ diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
- if test -n "$relink_command"; then
+ if test "$fast_install" = no && test -n "$relink_command"; then
- # Strip any trailing slash from the destination.
- func_stripname '' '/' "$libdir"
- destlibdir=$func_stripname_result
+ # Strip any trailing slash from the destination.
+ func_stripname '' '/' "$libdir"
+ destlibdir=$func_stripname_result
@@ -2394,7 +2394,7 @@ func_mode_install ()
shift
diff --git a/meta/recipes-devtools/libtool/libtool/norm-rpath.patch b/meta/recipes-devtools/libtool/libtool/norm-rpath.patch
deleted file mode 100644
index 1e4c65e024..0000000000
--- a/meta/recipes-devtools/libtool/libtool/norm-rpath.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-libtool: normalize link paths before considering for RPATH
-
-Libtool may be passed link paths of the form "/usr/lib/../lib", which
-fool its detection code into thinking it should be included as an
-RPATH in the generated binary. Normalize before comparision.
-
-Signed-off-by: Andy Ross <andy.ross@windriver.com>
-Upstream-Status: Pending
-
-Updated by: Robert Yang <liezhi.yang@windriver.com>
-
-diff -ur a/build-aux/ltmain.in b/build-aux/ltmain.in
---- a/build-aux/ltmain.in 2012-08-16 13:58:55.058900363 -0700
-+++ b/build-aux/ltmain.in 2012-08-22 11:01:34.191345989 -0700
-@@ -7288,8 +7288,10 @@
- else
- # We only want to hardcode in an rpath if it isn't in the
- # default dlsearch path.
-+ func_normal_abspath "$libdir"
-+ libdir_norm=$func_normal_abspath_result
- case " $sys_lib_dlsearch_path " in
-- *" $libdir "*) ;;
-+ *" $libdir_norm "*) ;;
- *) eval flag=\"$hardcode_libdir_flag_spec\"
- func_append dep_rpath " $flag"
- ;;
-@@ -8027,8 +8029,10 @@
- else
- # We only want to hardcode in an rpath if it isn't in the
- # default dlsearch path.
-+ func_normal_abspath "$libdir"
-+ libdir_norm=$func_normal_abspath_result
- case " $sys_lib_dlsearch_path " in
-- *" $libdir "*) ;;
-+ *" $libdir_norm "*) ;;
- *) eval flag=\"$hardcode_libdir_flag_spec\"
- rpath+=" $flag"
- ;;
diff --git a/meta/recipes-devtools/libtool/libtool/prefix.patch b/meta/recipes-devtools/libtool/libtool/prefix.patch
deleted file mode 100644
index a73df2e4a7..0000000000
--- a/meta/recipes-devtools/libtool/libtool/prefix.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-Upstream-Status: Inappropriate [embedded specific]
-
-Renames "libtool" -> "${TARGET_PREFIX}libtool" which makes sure
-it can't be confused with the host libtool.
-
-Originally by: RP
-
-Updated: Date: 2010/06/28
-Nitin A Kamble <nitin.a.kamble@intel.com>
-
-It also adjusts libtool so that the header at the script is used for
-script execution and not thevalue of $SHELL. This is because many
-Makefiles change $SHELL so dash can get used to execute what is
-otherwise configured as a bash shell script. Since we don't need to
-execute scipts this way on any system I'm aware of us building upon,
-the simplest fix is just to remove $SHELL.
-
-Updated: Date: 2011/11/09
-RP
-
-Updated by: Robert Yang <liezhi.yang@windriver.com>
-
-diff --git a/Makefile.am b/Makefile.am
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -31,7 +31,7 @@ SUBDIRS = .
- DIST_SUBDIRS = $(SUBDIRS)
- EXTRA_DIST =
-
--BUILT_SOURCES = libtool libtoolize
-+BUILT_SOURCES = $(host_alias)-libtool libtoolize
-
- CLEANFILES =
- MOSTLYCLEANFILES =
-@@ -67,7 +67,7 @@ build_scripts = $(srcdir)/$(aux_dir)/announce-gen \
-
- EXTRA_DIST += bootstrap bootstrap.conf $(build_scripts) cfg.mk maint.mk \
- GNUmakefile
--CLEANFILES += libtool libtoolize
-+CLEANFILES += $(host_alias)-libtool libtoolize
-
- ## If a file is named several times below, and especially if it
- ## is a distributed file created during Libtool bootstrap, we
-@@ -276,7 +276,7 @@ configure_edit = $(bootstrap_edit) \
- -e 's|@srcdir\@|$(srcdir)|g'
-
- # The libtool distributor and the standalone libtool script.
--bin_SCRIPTS = libtool
-+bin_SCRIPTS = $(host_alias)-libtool
-
- libtoolize: $(libtoolize_in) $(config_status)
- $(AM_V_at)rm -f '$@'
-@@ -287,7 +287,7 @@ libtoolize: $(libtoolize_in) $(config_status)
- # We used to do this with a 'stamp-vcl' file, but non-gmake builds
- # would rerun configure on every invocation, so now we manually
- # check the version numbers from the build rule when necessary.
--libtool: $(ltmain_sh) $(config_status) $(dotversion)
-+$(host_alias)-libtool: $(ltmain_sh) $(config_status) $(dotversion)
- @$(rebuild); \
- if test -f '$@'; then \
- eval `'$(SED)' -n '/^package_revision=/p' '$@'`; \
-@@ -731,12 +731,12 @@ TESTS_ENVIRONMENT = MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS)" \
-
- BUILDCHECK_ENVIRONMENT = _lt_pkgdatadir="$(abs_top_srcdir)" \
- LIBTOOLIZE="$(abs_top_builddir)/libtoolize" \
-- LIBTOOL="$(abs_top_builddir)/libtool" \
-+ LIBTOOL="$(abs_top_builddir)/$(host_alias)-libtool" \
- tst_aclocaldir="$(abs_top_srcdir)/m4"
-
- INSTALLCHECK_ENVIRONMENT = \
- LIBTOOLIZE="$(bindir)/`echo libtoolize |$(SED) '$(program_transform_name)'`" \
-- LIBTOOL="$(bindir)/`echo libtool |$(SED) '$(program_transform_name)'`" \
-+ LIBTOOL="$(bindir)/`echo $(host_alias)-libtool |$(SED) '$(program_transform_name)'`" \
- LTDLINCL="-I$(includedir)" \
- LIBLTDL="$(libdir)/libltdl.la" \
- tst_aclocaldir="$(aclocaldir)"
-diff --git a/m4/libtool.m4 b/m4/libtool.m4
---- a/m4/libtool.m4
-+++ b/m4/libtool.m4
-@@ -86,7 +86,8 @@ _LT_SET_OPTIONS([$0], [$1])
- LIBTOOL_DEPS=$ltmain
-
- # Always use our own libtool.
--LIBTOOL='$(SHELL) $(top_builddir)/libtool'
-+LIBTOOL='$(top_builddir)'
-+LIBTOOL="$LIBTOOL/${host_alias}-libtool"
- AC_SUBST(LIBTOOL)dnl
-
- _LT_SETUP
-@@ -199,7 +200,7 @@ aix3*)
- esac
-
- # Global variables:
--ofile=libtool
-+ofile=${host_alias}-libtool
- can_build_shared=yes
-
- # All known linkers require a '.a' archive for static linking (except MSVC,
diff --git a/meta/recipes-devtools/libtool/libtool/rename-with-sysroot.patch b/meta/recipes-devtools/libtool/libtool/rename-with-sysroot.patch
deleted file mode 100644
index ad2b110530..0000000000
--- a/meta/recipes-devtools/libtool/libtool/rename-with-sysroot.patch
+++ /dev/null
@@ -1,166 +0,0 @@
-Upstream-Status: Pending
-
-This patch renames the --with-sysroot option to --with-libtool-sysroot
-to avoid namespace conflict with binutils, gcc and other toolchain
-components.
-
-I also reported the problem to libtool here
-
-http://lists.gnu.org/archive/html/libtool/2010-10/msg00048.html
-
--Khem Raj <raj.khem@gmail.com>
-
-Updated by: Robert Yang <liezhi.yang@windriver.com>
-
-diff --git a/m4/libtool.m4 b/m4/libtool.m4
---- a/m4/libtool.m4
-+++ b/m4/libtool.m4
-@@ -1215,28 +1215,28 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
- # ----------------
- AC_DEFUN([_LT_WITH_SYSROOT],
- [AC_MSG_CHECKING([for sysroot])
--AC_ARG_WITH([sysroot],
--[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
-+AC_ARG_WITH([libtool-sysroot],
-+[AS_HELP_STRING([--with-libtool-sysroot@<:@=DIR@:>@],
- [Search for dependent libraries within DIR (or the compiler's sysroot
- if not specified).])],
--[], [with_sysroot=no])
-+[], [with_libtool_sysroot=no])
-
- dnl lt_sysroot will always be passed unquoted. We quote it here
- dnl in case the user passed a directory name.
- lt_sysroot=
--case $with_sysroot in #(
-+case $with_libtool_sysroot in #(
- yes)
- if test yes = "$GCC"; then
- lt_sysroot=`$CC --print-sysroot 2>/dev/null`
- fi
- ;; #(
- /*)
-- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
-+ lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
- ;; #(
- no|'')
- ;; #(
- *)
-- AC_MSG_RESULT([$with_sysroot])
-+ AC_MSG_RESULT([$with_libtool_sysroot])
- AC_MSG_ERROR([The sysroot must be an absolute path.])
- ;;
- esac
-diff --git a/tests/sysroot.at b/tests/sysroot.at
---- a/tests/sysroot.at
-+++ b/tests/sysroot.at
-@@ -64,7 +64,7 @@ while read file; do
- done])
-
- LDFLAGS="$LDFLAGS --sysroot=$sysroot -no-undefined"
--configure_options="$configure_options --with-sysroot=$sysroot --prefix=$prefix"
-+configure_options="$configure_options --with-libtool-sysroot=$sysroot --prefix=$prefix"
-
- #???
- if test PATH = "$shlibpath_var"; then
-@@ -114,7 +114,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([lib2.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- ]])
-@@ -155,7 +155,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([prog.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- ]])
-diff --git a/tests/testsuite b/tests/testsuite
---- a/tests/testsuite
-+++ b/tests/testsuite
-@@ -48945,7 +48945,7 @@ $at_traceon; }
-
-
- LDFLAGS="$LDFLAGS --sysroot=$sysroot -no-undefined"
--configure_options="$configure_options --with-sysroot=$sysroot --prefix=$prefix"
-+configure_options="$configure_options --with-libtool-sysroot=$sysroot --prefix=$prefix"
-
- #???
- if test PATH = "$shlibpath_var"; then
-@@ -49154,7 +49154,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([lib2.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- _ATEOF
-@@ -49342,7 +49342,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([prog.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- _ATEOF
-@@ -49694,7 +49694,7 @@ $at_traceon; }
-
-
- LDFLAGS="$LDFLAGS --sysroot=$sysroot -no-undefined"
--configure_options="$configure_options --with-sysroot=$sysroot --prefix=$prefix"
-+configure_options="$configure_options --with-libtool-sysroot=$sysroot --prefix=$prefix"
-
- #???
- if test PATH = "$shlibpath_var"; then
-@@ -49903,7 +49903,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([lib2.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- _ATEOF
-@@ -50091,7 +50091,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([prog.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- _ATEOF
-@@ -50443,7 +50443,7 @@ $at_traceon; }
-
-
- LDFLAGS="$LDFLAGS --sysroot=$sysroot -no-undefined"
--configure_options="$configure_options --with-sysroot=$sysroot --prefix=$prefix"
-+configure_options="$configure_options --with-libtool-sysroot=$sysroot --prefix=$prefix"
-
- #???
- if test PATH = "$shlibpath_var"; then
-@@ -50652,7 +50652,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([lib2.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- _ATEOF
-@@ -50840,7 +50840,7 @@ AM_INIT_AUTOMAKE([foreign])
- AC_PROG_CC
- AC_CONFIG_SRCDIR([prog.c])
- LT_INIT
--sysroot=$with_sysroot
-+sysroot=$with_libtool_sysroot
- AC_SUBST([sysroot])
- AC_OUTPUT(Makefile)
- _ATEOF
diff --git a/meta/recipes-devtools/libtool/libtool/trailingslash.patch b/meta/recipes-devtools/libtool/libtool/trailingslash.patch
deleted file mode 100644
index e8824d7db9..0000000000
--- a/meta/recipes-devtools/libtool/libtool/trailingslash.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Upstream-Status: Pending
-
-A command like /bin/sh ../../i586-poky-linux-libtool --mode=install /usr/bin/install -c gck-roots-store-standalone.la '/media/data1/builds/poky1/tmp/work/core2-poky-linux/gnome-keyring-2.26.1-r1/image/usr/lib/gnome-keyring/standalone/' fails (e.g. gnome-keyring or pulseaudio)
-
-This is because libdir has a trailing slash which breaks the comparision.
-
-RP 2/1/10
-
-Merged a patch received from Gary Thomas <gary@mlbassoc.com>
-
-Date: 2010/07/12
-Nitin A Kamble <nitin.a.kamble@intel.com>
-
-Updated by: Robert Yang <liezhi.yang@windriver.com>
-
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
---- a/build-aux/ltmain.in
-+++ b/build-aux/ltmain.in
-@@ -2356,8 +2356,15 @@ func_mode_install ()
- func_append dir "$objdir"
-
- if test -n "$relink_command"; then
-+ # Strip any trailing slash from the destination.
-+ func_stripname '' '/' "$libdir"
-+ destlibdir=$func_stripname_result
-+
-+ func_stripname '' '/' "$destdir"
-+ s_destdir=$func_stripname_result
-+
- # Determine the prefix the user has applied to our future dir.
-- inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
-+ inst_prefix_dir=`$ECHO "X$s_destdir" | $Xsed -e "s%$destlibdir\$%%"`
-
- # Don't allow the user to place us outside of our expected
- # location b/c this prevents finding dependent libraries that
diff --git a/meta/recipes-devtools/libtool/libtool/unwind-opt-parsing.patch b/meta/recipes-devtools/libtool/libtool/unwind-opt-parsing.patch
deleted file mode 100644
index b633bc41bb..0000000000
--- a/meta/recipes-devtools/libtool/libtool/unwind-opt-parsing.patch
+++ /dev/null
@@ -1,179 +0,0 @@
-Cut and paste the pieces of build-aux/options-parser inline into the main
-ltmain.sh code. This removes a performance degradation caused by the
-repeated calls to func_quote_for_eval, the mechanism funclib uses
-to construct the functions used for option parsing.
-
-Upstream-Status: Submitted [Being discussed on mailing list Feb 2015]
-
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
-index d5cf07a..0f54303 100644
---- a/build-aux/ltmain.in
-+++ b/build-aux/ltmain.in
-@@ -342,11 +342,15 @@ _LT_EOF
- # libtool_options_prep [ARG]...
- # -----------------------------
- # Preparation for options parsed by libtool.
--libtool_options_prep ()
--{
-+#libtool_options_prep ()
-+#{
- $debug_mode
-
- # Option defaults:
-+ opt_verbose=false
-+ opt_warning_types=
-+
-+ # Option defaults:
- opt_config=false
- opt_dlopen=
- opt_dry_run=false
-@@ -382,19 +386,14 @@ libtool_options_prep ()
- shift; set dummy --mode uninstall ${1+"$@"}; shift
- ;;
- esac
--
-- # Pass back the list of options.
-- func_quote_for_eval ${1+"$@"}
-- libtool_options_prep_result=$func_quote_for_eval_result
--}
--func_add_hook func_options_prep libtool_options_prep
-+#}
-
-
- # libtool_parse_options [ARG]...
- # ---------------------------------
- # Provide handling for libtool specific options.
--libtool_parse_options ()
--{
-+#libtool_parse_options ()
-+#{
- $debug_cmd
-
- # Perform our own loop to consume as many options as possible in
-@@ -474,29 +473,90 @@ libtool_parse_options ()
- func_append preserve_args " $_G_opt"
- ;;
-
-- # An option not handled by this hook function:
-- *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
-- esac
-- done
-+ --debug|-x) debug_cmd='set -x'
-+ func_echo "enabling shell trace mode"
-+ $debug_cmd
-+ ;;
-
-+ --no-warnings|--no-warning|--no-warn)
-+ set dummy --warnings none ${1+"$@"}
-+ shift
-+ ;;
-
-- # save modified positional parameters for caller
-- func_quote_for_eval ${1+"$@"}
-- libtool_parse_options_result=$func_quote_for_eval_result
--}
--func_add_hook func_parse_options libtool_parse_options
-+ --warnings|--warning|-W)
-+ test $# = 0 && func_missing_arg $_G_opt && break
-+ case " $warning_categories $1" in
-+ *" $1 "*)
-+ # trailing space prevents matching last $1 above
-+ func_append_uniq opt_warning_types " $1"
-+ ;;
-+ *all)
-+ opt_warning_types=$warning_categories
-+ ;;
-+ *none)
-+ opt_warning_types=none
-+ warning_func=:
-+ ;;
-+ *error)
-+ opt_warning_types=$warning_categories
-+ warning_func=func_fatal_error
-+ ;;
-+ *)
-+ func_fatal_error \
-+ "unsupported warning category: '$1'"
-+ ;;
-+ esac
-+ shift
-+ ;;
-+
-+ --verbose|-v) opt_verbose=: ;;
-+ --version) func_version ;;
-+ -\?|-h) func_usage ;;
-+ --help) func_help ;;
-+
-+ # Separate optargs to long options (plugins may need this):
-+ --*=*) func_split_equals "$_G_opt"
-+ set dummy "$func_split_equals_lhs" \
-+ "$func_split_equals_rhs" ${1+"$@"}
-+ shift
-+ ;;
-+
-+ # Separate optargs to short options:
-+ -W*)
-+ func_split_short_opt "$_G_opt"
-+ set dummy "$func_split_short_opt_name" \
-+ "$func_split_short_opt_arg" ${1+"$@"}
-+ shift
-+ ;;
-+
-+ # Separate non-argument short options:
-+ -\?*|-h*|-v*|-x*)
-+ func_split_short_opt "$_G_opt"
-+ set dummy "$func_split_short_opt_name" \
-+ "-$func_split_short_opt_arg" ${1+"$@"}
-+ shift
-+ ;;
-+
-+ --) break ;;
-+ -*) func_fatal_help "unrecognised option: '$_G_opt'" ;;
-+ *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
-+ esac
-+ done
-+#}
-
-+# Display all warnings if -W was not given.
-+test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
-
-
- # libtool_validate_options [ARG]...
- # ---------------------------------
- # Perform any sanity checks on option settings and/or unconsumed
- # arguments.
--libtool_validate_options ()
--{
-+#libtool_validate_options ()
-+#{
- # save first non-option argument
- if test 0 -lt $#; then
-- nonopt=$1
-+ nonopt=$_G_opt
- shift
- fi
-
-@@ -537,20 +597,10 @@ libtool_validate_options ()
- generic_help=$help
- help="Try '$progname --help --mode=$opt_mode' for more information."
- }
-+#}
-
-- # Pass back the unparsed argument list
-- func_quote_for_eval ${1+"$@"}
-- libtool_validate_options_result=$func_quote_for_eval_result
--}
--func_add_hook func_validate_options libtool_validate_options
--
--
--# Process options as early as possible so that --help and --version
--# can return quickly.
--func_options ${1+"$@"}
--eval set dummy "$func_options_result"; shift
--
--
-+# Bail if the options were screwed!
-+$exit_cmd $EXIT_FAILURE
-
- ## ----------- ##
- ## Main. ##
diff --git a/meta/recipes-devtools/libtool/libtool/use-sysroot-in-libpath.patch b/meta/recipes-devtools/libtool/libtool/use-sysroot-in-libpath.patch
deleted file mode 100644
index 6af99f327c..0000000000
--- a/meta/recipes-devtools/libtool/libtool/use-sysroot-in-libpath.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Upstream-Status: Pending
-
-When using sysroot we should append it to libdir, which is helpful in
-cross builds as the system is staged in the sysroot. For normal builds,
-i.e. when lt_sysroot is not set, it will still behave the same and add
--L/usr/lib to the relink command.
-
--Khem Raj <raj.khem@gmail.com>
-Updated by: Robert Yang <liezhi.yang@windriver.com>
-
-diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
---- a/build-aux/ltmain.in
-+++ b/build-aux/ltmain.in
-@@ -6421,7 +6421,7 @@ func_mode_link ()
- fi
- else
- # We cannot seem to hardcode it, guess we'll fake it.
-- add_dir=-L$libdir
-+ add_dir="-L$lt_sysroot$libdir"
- # Try looking first in the location we're being installed to.
- if test -n "$inst_prefix_dir"; then
- case $libdir in
diff --git a/meta/recipes-devtools/libtool/libtool_2.4.6.bb b/meta/recipes-devtools/libtool/libtool_2.5.0.bb
index f5fdd00e5e..44a4950574 100644
--- a/meta/recipes-devtools/libtool/libtool_2.4.6.bb
+++ b/meta/recipes-devtools/libtool/libtool_2.5.0.bb
@@ -2,20 +2,20 @@ require libtool-${PV}.inc
SRC_URI += "file://multilib.patch"
-RDEPENDS_${PN} += "bash"
+RDEPENDS:${PN} += "bash"
#
# We want the results of libtool-cross preserved - don't stage anything ourselves.
#
-SYSROOT_DIRS_BLACKLIST += " \
+SYSROOT_DIRS_IGNORE += " \
${bindir} \
${datadir}/aclocal \
${datadir}/libtool/build-aux \
"
-ACLOCALEXTRAPATH_class-target = ""
+ACLOCALEXTRAPATH:class-target = ""
-do_install_append () {
+do_install:append () {
sed -e 's@--sysroot=${STAGING_DIR_HOST}@@g' \
-e "s@${DEBUG_PREFIX_MAP}@@g" \
-e 's@${STAGING_DIR_HOST}@@g' \
diff --git a/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb b/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb
deleted file mode 100644
index 508eade326..0000000000
--- a/meta/recipes-devtools/libtool/nativesdk-libtool_2.4.6.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-require libtool-${PV}.inc
-
-FILESEXTRAPATHS =. "${FILE_DIRNAME}/libtool:"
-
-SRC_URI += "file://prefix.patch"
-SRC_URI += "file://fixinstall.patch"
-
-inherit nativesdk
-
-S = "${WORKDIR}/libtool-${PV}"
-FILES_${PN} += "${datadir}/libtool/*"
-
-do_configure_prepend () {
- # Remove any existing libtool m4 since old stale versions would break
- # any upgrade
- rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
- rm -f ${STAGING_DATADIR}/aclocal/lt*.m4
-}
-
-do_install () {
- autotools_do_install
- install -d ${D}${bindir}/
- install -m 0755 ${HOST_SYS}-libtool ${D}${bindir}/
-}
-
-SYSROOT_PREPROCESS_FUNCS += "libtoolnativesdk_sysroot_preprocess"
-
-libtoolnativesdk_sysroot_preprocess () {
- install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
- install -m 755 ${D}${bindir}/${HOST_SYS}-libtool ${SYSROOT_DESTDIR}${bindir_crossscripts}/${HOST_SYS}-libtool
-}
diff --git a/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb
new file mode 100644
index 0000000000..ddb60e717c
--- /dev/null
+++ b/meta/recipes-devtools/libtool/nativesdk-libtool_2.5.0.bb
@@ -0,0 +1,23 @@
+require libtool-${PV}.inc
+
+FILESEXTRAPATHS =. "${FILE_DIRNAME}/libtool:"
+
+SRC_URI += "file://fixinstall.patch"
+
+inherit nativesdk
+
+S = "${WORKDIR}/libtool-${PV}"
+FILES:${PN} += "${datadir}/libtool/*"
+
+do_install () {
+ autotools_do_install
+ install -d ${D}${bindir}/
+ install -m 0755 libtool ${D}${bindir}/
+}
+
+SYSROOT_PREPROCESS_FUNCS += "libtoolnativesdk_sysroot_preprocess"
+
+libtoolnativesdk_sysroot_preprocess () {
+ install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
+ install -m 755 ${D}${bindir}/libtool ${SYSROOT_DESTDIR}${bindir_crossscripts}/libtool
+}