Changed configure and the cpu + cpu64 dir Makefiles so it's easy

to incrementally merge files.  For a test, shift16.cc is always
compiled in the cpu/ directory regardless of 32/64-bit configure.
Ultimately, all files will migrate from cpu64 to cpu.
This commit is contained in:
Kevin Lawton 2002-09-13 02:56:14 +00:00
parent b9d3791aa5
commit c520824de5
4 changed files with 3917 additions and 9721 deletions

View File

@ -168,7 +168,7 @@ all: @PRIMARY_TARGET@ bximage@EXE@
@EXTERNAL_DEPENDENCY@
bochs@EXE@: @IODEV_LIB_VAR@ @DEBUGGER_VAR@ \
$(CPUDIR)/libcpu.a memory/libmemory.a gui/libgui.a \
$(CPUDIR)/libcpu.a cpu/libcpuXX.a memory/libmemory.a gui/libgui.a \
@DISASM_VAR@ @INSTRUMENT_VAR@ @DYNAMIC_VAR@ $(BX_OBJS) \
$(SIMX86_OBJS) \
$(EXT_DEBUG_LIB) \
@ -176,7 +176,7 @@ bochs@EXE@: @IODEV_LIB_VAR@ @DEBUGGER_VAR@ \
@LINK@ $(BX_OBJS) \
$(SIMX86_OBJS) \
iodev/libiodev.a \
$(CPUDIR)/libcpu.a memory/libmemory.a gui/libgui.a \
$(CPUDIR)/libcpu.a cpu/libcpuXX.a memory/libmemory.a gui/libgui.a \
@DEBUGGER_VAR@ @DISASM_VAR@ @INSTRUMENT_VAR@ @DYNAMIC_VAR@ \
$(FPU_LIB) \
$(GUI_LINK_OPTS) \
@ -197,7 +197,7 @@ $(BX_OBJS): $(BX_INCLUDES)
bxversion.h:
$(RM) -f bxversion.h
echo '/////////////////////////////////////////////////////////////////////////' > bxversion.h
echo '// $$Id: Makefile.in,v 1.77 2002-09-13 00:15:22 kevinlawton Exp $$' >> bxversion.h
echo '// $$Id: Makefile.in,v 1.78 2002-09-13 02:56:13 kevinlawton Exp $$' >> bxversion.h
echo '/////////////////////////////////////////////////////////////////////////' >> bxversion.h
echo '// This file is generated by "make bxversion.h"' >> bxversion.h
echo "#define VER_STRING \"$(VER_STRING)\"" >> bxversion.h
@ -218,6 +218,11 @@ $(CPUDIR)/libcpu.a::
$(MAKE) $(MDEFINES) libcpu.a
@CD_UP_ONE@
cpu/libcpuXX.a::
cd cpu @COMMAND_SEPARATOR@
$(MAKE) $(MDEFINES) libcpuXX.a
@CD_UP_ONE@
memory/libmemory.a::
cd memory @COMMAND_SEPARATOR@
$(MAKE) $(MDEFINES) libmemory.a

13594
bochs/configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@ dnl // Process this file with autoconf to produce a configure script.
AC_PREREQ(2.4)
AC_INIT(bochs.h)
AC_REVISION([[$Id: configure.in,v 1.97 2002-09-12 07:16:35 bdenney Exp $]])
AC_REVISION([[$Id: configure.in,v 1.98 2002-09-13 02:56:14 kevinlawton Exp $]])
AC_CONFIG_HEADER(config.h)
dnl // Put Bochs version information right here so that it gets substituted
@ -307,21 +307,25 @@ AC_ARG_ENABLE(x86-64,
[if test "$enableval" = yes; then
AC_MSG_RESULT(yes)
CPUDIR=cpu64
LIBCPU32_A=""
AC_DEFINE(BX_SUPPORT_X86_64, 1)
use_x86_64=1
else
AC_MSG_RESULT(no)
CPUDIR=cpu
LIBCPU32_A=libcpu.a
AC_DEFINE(BX_SUPPORT_X86_64, 0)
fi
],
[
AC_MSG_RESULT(no)
CPUDIR=cpu
LIBCPU32_A=libcpu.a
AC_DEFINE(BX_SUPPORT_X86_64, 0)
]
)
AC_SUBST(CPUDIR)
AC_SUBST(LIBCPU32_A)
AC_MSG_CHECKING(for cpu level)
AC_ARG_ENABLE(cpu-level,

View File

@ -46,7 +46,10 @@ BX_INCDIRS = -I.. -I$(srcdir)/.. -I../@INSTRUMENT_DIR@ -I$(srcdir)/../@INSTRUMEN
APIC_OBJS = @APIC_OBJS@
EXT_DEBUG_OBJS = @EXT_DEBUG_OBJS@
OBJS = \
# Objects which are specific to the x86-32 compile and
# are not used for the x86-64 compile because they have not
# been synced yet.
OBJS32 = \
init.o \
access.o \
cpu.o mmx.o resolve32.o fetchdecode.o \
@ -82,7 +85,6 @@ OBJS = \
logical16.o \
ctrl_xfer16.o \
stack16.o \
shift16.o \
bit.o \
flag_ctrl.o \
io.o \
@ -95,19 +97,34 @@ OBJS = \
$(EXT_DEBUG_OBJS) \
$(APIC_OBJS)
# Objects which are synced between the cpu and cpu64 code and
# are used for either compile.
OBJSXX = \
shift16.o \
BX_INCLUDES = ../bochs.h ../config.h
.@CPP_SUFFIX@.o:
$(CXX) @DASH@c $(CXXFLAGS) $(BX_INCDIRS) @CXXFP@$< @OFP@$@
all: @LIBCPU32_A@ libcpuXX.a
libcpu.a: $(OBJS)
libcpu.a: $(OBJS32)
@RMCOMMAND@ libcpu.a
@MAKELIB@ $(OBJS)
@MAKELIB@ $(OBJS32)
$(RANLIB) libcpu.a
$(OBJS): $(BX_INCLUDES)
libcpuXX.a: $(OBJSXX)
@RMCOMMAND@ libcpuXX.a
@MAKELIB@ $(OBJSXX)
$(RANLIB) libcpuXX.a
$(OBJS32): $(BX_INCLUDES)
$(OBJSXX): $(BX_INCLUDES)
clean:
@RMCOMMAND@ *.o