win32 cross compile fix
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@694 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
0c607d5728
commit
11d9f695e7
27
Makefile
27
Makefile
@ -16,14 +16,11 @@ all: dyngen$(EXESUF) $(TOOLS) qemu-doc.html qemu.1
|
|||||||
make -C $$d $@ || exit 1 ; \
|
make -C $$d $@ || exit 1 ; \
|
||||||
done
|
done
|
||||||
|
|
||||||
qemu-mkcow: qemu-mkcow.o
|
qemu-mkcow: qemu-mkcow.c
|
||||||
$(HOST_CC) -o $@ $^ $(LIBS)
|
$(CC) $(CFLAGS) $(DEFINES) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
dyngen$(EXESUF): dyngen.o
|
dyngen$(EXESUF): dyngen.c
|
||||||
$(HOST_CC) -o $@ $^ $(LIBS)
|
$(HOST_CC) $(CFLAGS) $(DEFINES) -o $@ $^
|
||||||
|
|
||||||
%.o: %.c
|
|
||||||
$(HOST_CC) $(CFLAGS) $(DEFINES) -c -o $@ $<
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
# avoid old build problems by removing potentially incorrect old files
|
# avoid old build problems by removing potentially incorrect old files
|
||||||
@ -41,13 +38,17 @@ distclean: clean
|
|||||||
done
|
done
|
||||||
|
|
||||||
install: all
|
install: all
|
||||||
mkdir -p $(prefix)/bin
|
mkdir -p "$(bindir)"
|
||||||
install -m 755 -s $(TOOLS) $(prefix)/bin
|
ifndef CONFIG_WIN32
|
||||||
mkdir -p $(sharedir)
|
install -m 755 -s $(TOOLS) "$(bindir)"
|
||||||
|
endif
|
||||||
|
mkdir -p "$(sharedir)"
|
||||||
install -m 644 pc-bios/bios.bin pc-bios/vgabios.bin \
|
install -m 644 pc-bios/bios.bin pc-bios/vgabios.bin \
|
||||||
pc-bios/linux_boot.bin $(sharedir)
|
pc-bios/linux_boot.bin "$(sharedir)"
|
||||||
mkdir -p $(mandir)/man1
|
ifndef CONFIG_WIN32
|
||||||
install qemu.1 qemu-mkcow.1 $(mandir)/man1
|
mkdir -p "$(mandir)/man1"
|
||||||
|
install qemu.1 qemu-mkcow.1 "$(mandir)/man1"
|
||||||
|
endif
|
||||||
for d in $(TARGET_DIRS); do \
|
for d in $(TARGET_DIRS); do \
|
||||||
make -C $$d $@ || exit 1 ; \
|
make -C $$d $@ || exit 1 ; \
|
||||||
done
|
done
|
||||||
|
@ -246,9 +246,12 @@ endif
|
|||||||
ifndef CONFIG_SOFTMMU
|
ifndef CONFIG_SOFTMMU
|
||||||
VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/i386-vl.ld
|
VL_LDFLAGS+=-Wl,-T,$(SRC_PATH)/i386-vl.ld
|
||||||
endif
|
endif
|
||||||
|
ifndef CONFIG_WIN32
|
||||||
|
VL_LIBS=-lutil
|
||||||
|
endif
|
||||||
|
|
||||||
$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a
|
$(QEMU_SYSTEM): $(VL_OBJS) libqemu.a
|
||||||
$(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) -lutil
|
$(CC) $(VL_LDFLAGS) -o $@ $^ $(LIBS) $(SDL_LIBS) $(VL_LIBS)
|
||||||
|
|
||||||
sdl.o: sdl.c
|
sdl.o: sdl.c
|
||||||
$(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $<
|
$(CC) $(CFLAGS) $(DEFINES) $(SDL_CFLAGS) -c -o $@ $<
|
||||||
@ -309,7 +312,7 @@ clean:
|
|||||||
|
|
||||||
install: all
|
install: all
|
||||||
ifneq ($(PROGS),)
|
ifneq ($(PROGS),)
|
||||||
install -m 755 -s $(PROGS) $(prefix)/bin
|
install -m 755 -s $(PROGS) "$(bindir)"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(wildcard .depend),)
|
ifneq ($(wildcard .depend),)
|
||||||
|
69
configure
vendored
69
configure
vendored
@ -17,7 +17,7 @@ TMPE="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}"
|
|||||||
TMPS="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.S"
|
TMPS="${TMPDIR1}/qemu-conf-${RANDOM}-$$-${RANDOM}.S"
|
||||||
|
|
||||||
# default parameters
|
# default parameters
|
||||||
prefix="/usr/local"
|
prefix=""
|
||||||
interp_prefix="/usr/gnemul/qemu-%M"
|
interp_prefix="/usr/gnemul/qemu-%M"
|
||||||
static="no"
|
static="no"
|
||||||
cross_prefix=""
|
cross_prefix=""
|
||||||
@ -81,26 +81,6 @@ mingw32="yes"
|
|||||||
*) ;;
|
*) ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
##########################################
|
|
||||||
# SDL probe
|
|
||||||
|
|
||||||
cat > $TMPC << EOF
|
|
||||||
#include <SDL.h>
|
|
||||||
#undef main /* We don't want SDL to override our main() */
|
|
||||||
int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
|
|
||||||
EOF
|
|
||||||
|
|
||||||
sdl_too_old=no
|
|
||||||
sdl=no
|
|
||||||
if $cc -o $TMPE `sdl-config --cflags` $TMPC `sdl-config --libs` 2> /dev/null ; then
|
|
||||||
_sdlversion=`sdl-config --version | sed 's/[^0-9]//g'`
|
|
||||||
if test "$_sdlversion" -lt 121 ; then
|
|
||||||
sdl_too_old=yes
|
|
||||||
else
|
|
||||||
sdl=yes
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# find source path
|
# find source path
|
||||||
# XXX: we assume an absolute path is given when launching configure,
|
# XXX: we assume an absolute path is given when launching configure,
|
||||||
# except in './configure' case.
|
# except in './configure' case.
|
||||||
@ -157,9 +137,7 @@ ar="${cross_prefix}${ar}"
|
|||||||
strip="${cross_prefix}${strip}"
|
strip="${cross_prefix}${strip}"
|
||||||
|
|
||||||
if test "$mingw32" = "yes" ; then
|
if test "$mingw32" = "yes" ; then
|
||||||
host_cc="$cc"
|
|
||||||
target_list="i386-softmmu"
|
target_list="i386-softmmu"
|
||||||
prefix="/c/Program Files/Qemu"
|
|
||||||
EXESUF=".exe"
|
EXESUF=".exe"
|
||||||
gdbstub="no"
|
gdbstub="no"
|
||||||
fi
|
fi
|
||||||
@ -202,6 +180,31 @@ if $cc -fno-reorder-blocks -fno-optimize-sibling-calls -o $TMPO $TMPC 2> /dev/nu
|
|||||||
have_gcc3_options="yes"
|
have_gcc3_options="yes"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# SDL probe
|
||||||
|
|
||||||
|
sdl_too_old=no
|
||||||
|
|
||||||
|
if test -z "$sdl" ; then
|
||||||
|
|
||||||
|
cat > $TMPC << EOF
|
||||||
|
#include <SDL.h>
|
||||||
|
#undef main /* We don't want SDL to override our main() */
|
||||||
|
int main( void ) { return SDL_Init (SDL_INIT_VIDEO); }
|
||||||
|
EOF
|
||||||
|
|
||||||
|
sdl=no
|
||||||
|
if $cc -o $TMPE `sdl-config --cflags` $TMPC `sdl-config --libs` 2> /dev/null ; then
|
||||||
|
_sdlversion=`sdl-config --version | sed 's/[^0-9]//g'`
|
||||||
|
if test "$_sdlversion" -lt 121 ; then
|
||||||
|
sdl_too_old=yes
|
||||||
|
else
|
||||||
|
sdl=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
if test x"$1" = x"-h" -o x"$1" = x"--help" ; then
|
if test x"$1" = x"-h" -o x"$1" = x"--help" ; then
|
||||||
cat << EOF
|
cat << EOF
|
||||||
|
|
||||||
@ -228,13 +231,29 @@ echo "NOTE: The object files are build at the place where configure is launched"
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test "$mingw32" = "yes" ; then
|
||||||
|
if test -z "$prefix" ; then
|
||||||
|
prefix="/c/Program Files/Qemu"
|
||||||
|
fi
|
||||||
|
mandir="$prefix"
|
||||||
|
sharedir="$prefix"
|
||||||
|
bindir="$prefix"
|
||||||
|
else
|
||||||
|
if test -z "$prefix" ; then
|
||||||
|
prefix="/usr/local"
|
||||||
|
fi
|
||||||
mandir="$prefix/share/man"
|
mandir="$prefix/share/man"
|
||||||
sharedir="$prefix/share/qemu"
|
sharedir="$prefix/share/qemu"
|
||||||
|
bindir="$prefix/bin"
|
||||||
|
fi
|
||||||
|
|
||||||
echo "Install prefix $prefix"
|
echo "Install prefix $prefix"
|
||||||
echo "Manual directory $mandir"
|
|
||||||
echo "BIOS directory $sharedir"
|
echo "BIOS directory $sharedir"
|
||||||
|
echo "binary directory $bindir"
|
||||||
|
if test "$mingw32" = "no" ; then
|
||||||
|
echo "Manual directory $mandir"
|
||||||
echo "ELF interp prefix $interp_prefix"
|
echo "ELF interp prefix $interp_prefix"
|
||||||
|
fi
|
||||||
echo "Source path $source_path"
|
echo "Source path $source_path"
|
||||||
echo "C compiler $cc"
|
echo "C compiler $cc"
|
||||||
echo "make $make"
|
echo "make $make"
|
||||||
@ -259,6 +278,7 @@ echo "# Automatically generated by configure - do not modify" > $config_mak
|
|||||||
echo "/* Automatically generated by configure - do not modify */" > $config_h
|
echo "/* Automatically generated by configure - do not modify */" > $config_h
|
||||||
|
|
||||||
echo "prefix=$prefix" >> $config_mak
|
echo "prefix=$prefix" >> $config_mak
|
||||||
|
echo "bindir=$bindir" >> $config_mak
|
||||||
echo "mandir=$mandir" >> $config_mak
|
echo "mandir=$mandir" >> $config_mak
|
||||||
echo "sharedir=$sharedir" >> $config_mak
|
echo "sharedir=$sharedir" >> $config_mak
|
||||||
echo "#define CONFIG_QEMU_SHAREDIR \"$sharedir\"" >> $config_h
|
echo "#define CONFIG_QEMU_SHAREDIR \"$sharedir\"" >> $config_h
|
||||||
@ -316,6 +336,7 @@ if test "$bigendian" = "yes" ; then
|
|||||||
fi
|
fi
|
||||||
if test "$mingw32" = "yes" ; then
|
if test "$mingw32" = "yes" ; then
|
||||||
echo "CONFIG_WIN32=yes" >> $config_mak
|
echo "CONFIG_WIN32=yes" >> $config_mak
|
||||||
|
echo "#define CONFIG_WIN32 1" >> $config_h
|
||||||
else
|
else
|
||||||
echo "#define HAVE_BYTESWAP_H 1" >> $config_h
|
echo "#define HAVE_BYTESWAP_H 1" >> $config_h
|
||||||
fi
|
fi
|
||||||
|
4
dyngen.c
4
dyngen.c
@ -30,7 +30,9 @@
|
|||||||
|
|
||||||
#include "config-host.h"
|
#include "config-host.h"
|
||||||
|
|
||||||
#if defined(_WIN32)
|
/* NOTE: we test CONFIG_WIN32 instead of _WIN32 to enabled cross
|
||||||
|
compilation */
|
||||||
|
#if defined(CONFIG_WIN32)
|
||||||
#define CONFIG_FORMAT_COFF
|
#define CONFIG_FORMAT_COFF
|
||||||
#else
|
#else
|
||||||
#define CONFIG_FORMAT_ELF
|
#define CONFIG_FORMAT_ELF
|
||||||
|
Loading…
Reference in New Issue
Block a user