generate LDFLAGS for *-linux-user and *-bsd-user in a single place in configure

Remove lots of duplicate code in the process

Signed-off-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Juan Quintela 2009-07-22 22:37:39 +02:00 committed by Anthony Liguori
parent 4318e1a690
commit fa282484b3
2 changed files with 39 additions and 132 deletions

39
configure vendored
View file

@ -2042,6 +2042,45 @@ if test "$target_bsd_user" = "yes" ; then
echo "CONFIG_BSD_USER=y" >> $config_mak
fi
# generate LDFLAGS for targets
ldflags=""
if test "$target_linux_user" = "yes" -o "$target_linux_user" = "yes" ; then
case "$ARCH" in
i386)
if test "$gprof" = "yes" -o "$static" = "yes" ; then
ldflags='-Wl,-T,$(SRC_PATH)/$(ARCH).ld'
else
# WARNING: this LDFLAGS is _very_ tricky : qemu is an ELF shared object
# that the kernel ELF loader considers as an executable. I think this
# is the simplest way to make it self virtualizable!
ldflags='-Wl,-shared'
fi
;;
sparc)
# -static is used to avoid g1/g3 usage by the dynamic linker
ldflags='-Wl,-T,$(SRC_PATH)/$(ARCH).ld -static'
;;
ia64)
ldflags='-Wl,-G0 -Wl,-T,$(SRC_PATH)/$(ARCH).ld -static'
;;
x86_64|ppc|ppc64|s390|sparc64|alpha|arm|m68k|mips|mips64)
ldflags='-Wl,-T,$(SRC_PATH)/$(ARCH).ld'
;;
esac
fi
if test "$target_softmmu" = "yes" ; then
case "$ARCH" in
ia64)
ldflags='-Wl,-G0 -Wl,-T,$(SRC_PATH)/$(ARCH).ld -static'
;;
esac
fi
if test "$ldflags" != "" ; then
echo "LDFLAGS+=$ldflags" >> $config_mak
fi
echo "/* Automatically generated by configure - do not modify */" > $config_h
echo "#include \"../config-host.h\"" >> $config_h