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.
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