1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-02-13 19:52:20 +00:00

make.probe: add fallback optimisation flags

src/cmd/INIT/make.probe:
- probe_optimize: Also try -O2 and -O, for compilers (such as
  Solaris Studio cc) that do not support -Os.
- Use more robust code to loop through possible optimiser flags.
This commit is contained in:
Martijn Dekker 2021-01-16 22:01:07 +01:00
parent 1554ec2cdd
commit 6025c8125e

View file

@ -34,7 +34,7 @@ probe_lib_all_undef="-all -notall -all -none -Bwhole-archive -Bno-whole-archive
probe_lib_multiple="-Wl,-zmuldefs"
probe_libdir="shlib lib"
probe_nmflags="'' -p -B"
probe_optimize="-Os"
probe_optimize="-Os -O2 -O"
probe_pic="-Kpic -KPIC -fpic -fPIC -pic -PIC +z +Z"
probe_no_protect="'-fno-stack-protector -fno-stack-protector-all' -GS-"
probe_readonly="-R -Krodata -xMerge -Wa,-r"
@ -1553,16 +1553,11 @@ then e=`wc -c < e`
case $version_string in
$probe_gcc_version) probe_optimize="$probe_gcc_optimize $probe_optimize" ;;
esac
eval set x $probe_optimize
while :
do shift
case $# in
0) break ;;
esac
rm -f warn.$obj
$cc $1 -c warn.$src 2>e && test -f warn.$obj || continue
for i in $probe_optimize
do rm -f warn.$obj
$cc $i -c warn.$src 2>e && test -f warn.$obj || continue
case `wc -c < e` in
$e) optimize=$1; break ;;
$e) optimize=$i; break ;;
esac
done