summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/genmultilib29
1 files changed, 11 insertions, 18 deletions
diff --git a/gcc/genmultilib b/gcc/genmultilib
index 158d93fb683..d4cc7ff7fe5 100644
--- a/gcc/genmultilib
+++ b/gcc/genmultilib
@@ -59,15 +59,15 @@
# genmultilib "m68000/m68020 msoft-float" "m68000 m68020 msoft-float"
# "m68000=mc68000"
# This produces:
-# #define MULTILIB_MATCHES "\
-# m68000/msoft-float m68000 msoft-float;\
-# m68000/msoft-float mc68000 msoft-float;\
-# m68020/msoft-float m68020 msoft-float;\
-# msoft-float !m68000 !mc68000 !m68020 msoft-float;\
-# m68000 m68000 !msoft-float;\
-# m68000 mc60000 !msoft-float;\
-# m68020 m68020 !msoft-float;\
+# #define MULTILIB_SELECT "\
# . !m68000 !mc68000 !m68020 !msoft-float;\
+# m68000 m68000 !m68020 !msoft-float;\
+# m68000 mc60000 !m68020 !msoft-float;\
+# m68020 !m68000 !mc68000 m68020 !msoft-float;\
+# msoft-float !m68000 !mc68000 !m68020 msoft-float;\
+# m68000/msoft-float m68000 !m68020 msoft-float;\
+# m68000/msoft-float mc68000 !m68020 msoft-float;\
+# m68020/msoft-float !m68000 !mc68000 m68020 msoft-float;\
# "
# The effect is that `gcc -msoft-float' (for example) will append
# msoft-float to the directory name when searching for libraries or
@@ -200,24 +200,17 @@ for combo in ${combinations}; do
dirout=`echo ${dirout} | sed -e 's|^/||' -e 's|/$||g'`
# Look through the options. We must output each option that is
- # present, and negate each option that is not present. If an
- # element of a set is present, we need not negate the other elements
- # of the set.
+ # present, and negate each option that is not present.
optout=
for set in ${options}; do
setopts=`echo ${set} | sed -e 's|/| |g'`
- found=
for opt in ${setopts}; do
if expr "${combo} " : ".*/${opt}/.*" > /dev/null; then
optout="${optout} ${opt}"
- found=yes
+ else
+ optout="${optout} !${opt}"
fi
done
- if [ "${found}" = "" ]; then
- for opt in ${setopts}; do
- optout="${optout} !${opt}"
- done
- fi
done
optout=`echo ${optout} | sed -e 's/^ //'`