@@ -33,13 +33,15 @@ for arg in $*; do
3333done
3434
3535sys=` uname -s | sed ' s/MINGW.*/mingw/' `
36+ arch=` uname -m`
3637
3738testsrc=/tmp/meshfile_cfg_test.c
3839testbin=/tmp/meshfile_cfg_test
3940testlog=/tmp/meshfile_cfg_test.log
4041
4142run_test () {
42- if ! $CC -o $testbin $testsrc > $testlog 2>&1 ; then
43+ $CC -o $testbin $testsrc > $testlog 2>&1
44+ if [ $? != 0 ]; then
4345 echo " failed to compile test program, see $testlog " >&2
4446 exit 1
4547 fi
@@ -59,6 +61,9 @@ echo ' return 1;' >>$testsrc
5961echo ' }' >> $testsrc
6062run_test && cc_is_gcc=true || cc_is_gcc=false
6163
64+ # check if CC is MIPSpro
65+ cc -version 2>&1 | grep MIPSpro > /dev/null && cc_is_mipspro=true || cc_is_mipspro=false
66+
6267$cc_is_gcc && echo ' compiler is gcc or compatible'
6368echo " optimizations: $opt "
6469echo " debug symbols: $dbg "
@@ -70,8 +75,14 @@ echo "PREFIX = $prefix" >>$cfgmk
7075echo " libdir = $libdir " >> $cfgmk
7176echo ' src =' ` ls src/* .c | sort` >> $cfgmk
7277echo >> $cfgmk
73- $opt && echo ' opt = -O3' >> $cfgmk
74- $dbg && echo ' dbg = -g' >> $cfgmk
78+
79+ if $cc_is_mipspro ; then
80+ $opt && echo ' opt = -O2' >> $cfgmk
81+ $dbg && echo ' dbg = -g3' >> $cfgmk
82+ else
83+ $opt && echo ' opt = -O3' >> $cfgmk
84+ $dbg && echo ' dbg = -g' >> $cfgmk
85+ fi
7586
7687if $cc_is_gcc ; then
7788 echo ' warn = -pedantic -Wall -Wno-pointer-to-int-cast -Wno-int-to-pointer-cast' >> $cfgmk
96107 echo ' soname = $(ldname).$(somajor)' >> $cfgmk
97108 echo ' libso = $(ldname).$(somajor).$(sominor)' >> $cfgmk
98109 echo ' shared = -shared -Wl,-soname,$(soname)' >> $cfgmk
99- echo ' pic = -fPIC' >> $cfgmk
110+
111+ if $cc_is_mipspro ; then
112+ echo ' pic = -KPIC' >> $cfgmk
113+ else
114+ echo ' pic = -fPIC' >> $cfgmk
115+ fi
100116fi
101117
102118
0 commit comments