blob: 277afe0af62a74f3b2a76f0f4352c4d9aa04c5a8 [file] [log] [blame]
From: Marek Vasut <marex@denx.de>
Subject: [PATCH 07/12] 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>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Upstream-Status: Submitted [https://lists.gnu.org/archive/html/libtool-patches/2021-10/msg00021.html]
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 6fb58ed2..606f17be 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -519,6 +519,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*)
@@ -6246,6 +6252,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"
@@ -6316,6 +6331,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.25.1