Commit ca735206e0f223d75894260fb98c0c605f590817
1 parent
5dd9488c
gcc 3.x fixes
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@33 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
2 changed files
with
21 additions
and
1 deletions
Makefile
| ... | ... | @@ -7,13 +7,23 @@ DEFINES=-DHAVE_BYTESWAP_H |
| 7 | 7 | |
| 8 | 8 | ifeq ($(ARCH),i386) |
| 9 | 9 | CFLAGS+=-fomit-frame-pointer |
| 10 | -OP_CFLAGS=$(CFLAGS) -malign-functions=0 -mpreferred-stack-boundary=2 | |
| 10 | +OP_CFLAGS=$(CFLAGS) -mpreferred-stack-boundary=2 | |
| 11 | +ifeq ($(GCC_MAJOR),3) | |
| 12 | +OP_CFLAGS+= -falign-functions=0 | |
| 13 | +else | |
| 14 | +OP_CFLAGS+= -malign-functions=0 | |
| 15 | +endif | |
| 11 | 16 | endif |
| 12 | 17 | |
| 13 | 18 | ifeq ($(ARCH),ppc) |
| 14 | 19 | OP_CFLAGS=$(CFLAGS) |
| 15 | 20 | endif |
| 16 | 21 | |
| 22 | +ifeq ($(GCC_MAJOR),3) | |
| 23 | +# very important to generate a return at the end of every operation | |
| 24 | +OP_CFLAGS+=-fno-reorder-blocks -fno-optimize-sibling-calls | |
| 25 | +endif | |
| 26 | + | |
| 17 | 27 | ######################################################### |
| 18 | 28 | |
| 19 | 29 | DEFINES+=-D_GNU_SOURCE | ... | ... |
configure
| ... | ... | @@ -13,6 +13,7 @@ fi |
| 13 | 13 | |
| 14 | 14 | TMPC="${TMPDIR1}/qemacs-conf-${RANDOM}-$$-${RANDOM}.c" |
| 15 | 15 | TMPO="${TMPDIR1}/qemacs-conf-${RANDOM}-$$-${RANDOM}.o" |
| 16 | +TMPE="${TMPDIR1}/qemacs-conf-${RANDOM}-$$-${RANDOM}" | |
| 16 | 17 | TMPS="${TMPDIR1}/qemacs-conf-${RANDOM}-$$-${RANDOM}.S" |
| 17 | 18 | TMPH="${TMPDIR1}/qemacs-conf-${RANDOM}-$$-${RANDOM}.h" |
| 18 | 19 | |
| ... | ... | @@ -142,6 +143,14 @@ fi |
| 142 | 143 | |
| 143 | 144 | fi |
| 144 | 145 | |
| 146 | +# check gcc version | |
| 147 | +gcc_major="2" | |
| 148 | +gcc_version="$($cc -v 2>&1 | grep version | cut -d ' ' -f3-)" | |
| 149 | +case "$gcc_version" in | |
| 150 | +3.*) gcc_major="3"; | |
| 151 | +;; | |
| 152 | +esac | |
| 153 | + | |
| 145 | 154 | if test x"$1" = x"-h" -o x"$1" = x"--help" ; then |
| 146 | 155 | cat << EOF |
| 147 | 156 | |
| ... | ... | @@ -181,6 +190,7 @@ echo "prefix=$prefix" >> config.mak |
| 181 | 190 | echo "#define CONFIG_GEMU_PREFIX \"$prefix\"" >> $TMPH |
| 182 | 191 | echo "MAKE=$make" >> config.mak |
| 183 | 192 | echo "CC=$cc" >> config.mak |
| 193 | +echo "GCC_MAJOR=$gcc_major" >> config.mak | |
| 184 | 194 | echo "HOST_CC=$host_cc" >> config.mak |
| 185 | 195 | echo "AR=$ar" >> config.mak |
| 186 | 196 | echo "STRIP=$strip -s -R .comment -R .note" >> config.mak | ... | ... |