]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
build: Define DISABLE_MULTILIB if --disable-multilib
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Wed, 19 Nov 2025 08:24:14 +0000 (09:24 +0100)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Wed, 19 Nov 2025 08:24:14 +0000 (09:24 +0100)
When building trunk on Solaris with --disable-multilib, I noticed that
the non-default multilib wasn't rejected any longer, leading to
unexpected link failures.  I could trace this to DISABLE_MULTILIB no
longer being defined in multilib.h.  The problem ist that
gcc/genmultilib has been changed in

Author: Terry Guo <terry.guo@arm.com>
Date:   Sun Jan 13 10:12:07 2013 +0000

    Makefile.in (s-mlib): New argument MULTILIB_REUSE.

This patch factored out the code that sets disable_multilib and controls
emission of that macro into a separate generated script (tmpmultilib3),
but genmultilib itself continues to check $disable_multilib that isn't
ever set there.

Fixed by checking enable_multilib instead which is set from the
corresponding genmultilib argument.  DISABLE_MULTILIB is only referenced
in gcc/config/sol2.h, so no other port should be affected.

Bootstrapped without regressions on i386-pc-solaris2.11 and
sparc-sun-solaris2.11 and verifying that the non-default multilibs are
now rejected again as expected.

2025-11-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

gcc:
* genmultilib: Check $enable_multilib to define DISABLE_MULTILIB.

gcc/genmultilib

index 756915a6bc45dfe7f4dda08f2c8bad7e1790cd65..e4e8941ea2a62c3716aabce1c5abed334c71065b 100644 (file)
@@ -549,7 +549,7 @@ echo ""
 echo "static const char *multilib_options = \"${moptions}\";"
 
 # Finally output the disable flag if specified
-if [ "x${disable_multilib}" = xyes ]; then
+if [ "x${enable_multilib}" != xyes ]; then
   echo ""
   echo "#define DISABLE_MULTILIB  1"
 fi