2002-06-29 22:35:32 +04:00
# Copyright (C) 2002 MandrakeSoft S.A.
2001-04-10 05:04:59 +04:00
#
# MandrakeSoft S.A.
# 43, rue d'Aboukir
# 75002 Paris - France
# http://www.linux-mandrake.com/
# http://www.mandrakesoft.com/
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
2001-05-24 09:36:07 +04:00
#
####################################################
# NOTE: To be compatibile with nmake (microsoft vc++) please follow
# the following rules:
# use $(VAR) not ${VAR}
2001-04-10 05:04:59 +04:00
2001-06-06 17:57:24 +04:00
prefix = @prefix@
exec_prefix = @exec_prefix@
2002-10-28 11:42:28 +03:00
srcdir = @srcdir@
VPATH = @srcdir@
2001-06-06 17:57:24 +04:00
bindir = @bindir@
2002-10-25 01:07:56 +04:00
libdir = @libdir@
2002-12-11 22:21:53 +03:00
plugdir = @libdir@/bochs/plugins
2001-06-06 17:57:24 +04:00
mandir = @mandir@
man1dir = $( mandir) /man1
2002-06-29 22:35:32 +04:00
man5dir = $( mandir) /man5
2002-06-25 11:30:44 +04:00
docdir = $( prefix) /share/doc/bochs
sharedir = $( prefix) /share/bochs
2002-10-25 01:07:56 +04:00
top_builddir = .
top_srcdir = $( srcdir)
2001-06-06 17:57:24 +04:00
2001-09-14 08:19:08 +04:00
DESTDIR =
2001-06-06 17:57:24 +04:00
2001-11-10 06:48:22 +03:00
VERSION = @VERSION@
VER_STRING = @VER_STRING@
REL_STRING = @REL_STRING@
2003-05-10 13:55:08 +04:00
MAN_PAGE_1_LIST = bochs bximage bxcommit bochs-dlx
2002-06-29 22:35:32 +04:00
MAN_PAGE_5_LIST = bochsrc
2006-01-08 20:16:30 +03:00
INSTALL_LIST_SHARE = bios/BIOS-bochs-latest bios/VGABIOS* @INSTALL_LIST_FOR_PLATFORM@
2005-03-06 00:02:59 +03:00
INSTALL_LIST_DOC = CHANGES COPYING README TODO
2003-12-08 02:47:44 +03:00
INSTALL_LIST_BIN = bochs@EXE@ bximage@EXE@ bxcommit@EXE@
INSTALL_LIST_BIN_OPTIONAL = bochsdbg@EXE@
INSTALL_LIST_WIN32 = $( INSTALL_LIST_SHARE) $( INSTALL_LIST_DOC) $( INSTALL_LIST_BIN) $( INSTALL_LIST_BIN_OPTIONAL) niclist@EXE@
2003-05-06 21:34:36 +04:00
INSTALL_LIST_MACOSX = $( INSTALL_LIST_SHARE) $( INSTALL_LIST_DOC) bochs.app bochs.scpt bximage bxcommit
2002-11-23 00:04:10 +03:00
# for win32 and macosx, these files get renamed to *.txt in install process
2005-03-06 00:02:59 +03:00
TEXT_FILE_LIST = README CHANGES COPYING TODO VGABIOS-elpin-LICENSE VGABIOS-lgpl-README
2001-05-22 20:12:01 +04:00
CP = cp
CAT = cat
RM = rm
2001-05-22 21:20:45 +04:00
MV = mv
2001-05-22 20:12:01 +04:00
LN_S = ln -sf
2002-12-15 01:43:56 +03:00
DLXLINUX_TAR = dlxlinux4.tar.gz
2001-05-24 09:36:07 +04:00
DLXLINUX_TAR_URL = http://bochs.sourceforge.net/guestos/$( DLXLINUX_TAR)
2001-05-31 19:30:30 +04:00
DLXLINUX_ROMFILE = BIOS-bochs-latest
2001-05-22 20:12:01 +04:00
GUNZIP = gunzip
2005-07-30 19:04:26 +04:00
WGET = @WGET@
2001-05-22 21:20:45 +04:00
SED = sed
MKDIR = mkdir
2001-06-04 08:26:56 +04:00
RMDIR = rmdir
2001-05-22 21:20:45 +04:00
TAR = tar
2001-05-23 12:16:07 +04:00
CHMOD = chmod
2004-09-04 12:24:40 +04:00
# the GZIP variable is reserved by gzip program
GZIP_BIN = gzip -9
2001-09-24 08:16:53 +04:00
GUNZIP = gunzip
2001-09-24 08:21:29 +04:00
ZIP = zip
2001-10-05 10:03:41 +04:00
UNIX2DOS = unix2dos
2002-10-25 01:07:56 +04:00
LIBTOOL = @LIBTOOL@
DLLTOOL = dlltool
2003-06-06 23:57:25 +04:00
RC_CMD = @RC_CMD@
2001-04-10 05:04:59 +04:00
@ S U F F I X _ L I N E @
2001-09-14 08:19:08 +04:00
srcdir = @srcdir@
VPATH = @srcdir@
2001-04-10 05:04:59 +04:00
SHELL = /bin/sh
@ S E T _ M A K E @
CC = @CC@
CXX = @CXX@
2002-12-15 01:18:00 +03:00
CFLAGS = @CFLAGS@ @GUI_CFLAGS@ $( MCH_CFLAGS) $( FLA_FLAGS) @DEFINE_PLUGIN_PATH@ -DBX_SHARE_PATH= '"$(sharedir)"'
CXXFLAGS = @CXXFLAGS@ @GUI_CXXFLAGS@ $( MCH_CFLAGS) $( FLA_FLAGS) @DEFINE_PLUGIN_PATH@ -DBX_SHARE_PATH= '"$(sharedir)"'
2001-04-10 05:04:59 +04:00
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
2001-05-23 12:16:07 +04:00
# To compile with readline:
# linux needs just -lreadline
# solaris needs -lreadline -lcurses
2001-04-10 05:04:59 +04:00
X_LIBS = @X_LIBS@
X_PRE_LIBS = @X_PRE_LIBS@
2003-06-13 20:05:03 +04:00
XPM_LIB = @XPM_LIB@
GUI_LINK_OPTS_X = $( X_LIBS) $( X_PRE_LIBS) -lX11 $( XPM_LIB)
2002-02-05 20:37:11 +03:00
GUI_LINK_OPTS_SDL = ` sdl-config --cflags --libs`
2002-11-21 22:26:07 +03:00
GUI_LINK_OPTS_SVGA = -lvga -lvgagl
2001-04-10 05:04:59 +04:00
GUI_LINK_OPTS_BEOS = -lbe
2001-06-02 07:07:28 +04:00
GUI_LINK_OPTS_RFB = @RFB_LIBS@
2001-08-16 00:33:47 +04:00
GUI_LINK_OPTS_AMIGAOS =
2004-11-01 20:14:02 +03:00
GUI_LINK_OPTS_WIN32 = -luser32 -lgdi32 -lcomdlg32 -lcomctl32 -lwsock32
2001-04-10 05:04:59 +04:00
GUI_LINK_OPTS_WIN32_VCPP = user32.lib gdi32.lib winmm.lib \
2004-06-19 15:13:21 +04:00
comdlg32.lib comctl32.lib wsock32.lib advapi32.lib
2001-04-10 05:04:59 +04:00
GUI_LINK_OPTS_MACOS =
2001-09-27 06:00:37 +04:00
GUI_LINK_OPTS_CARBON = -framework Carbon
2001-04-10 05:04:59 +04:00
GUI_LINK_OPTS_NOGUI =
2001-05-08 23:07:26 +04:00
GUI_LINK_OPTS_TERM = @GUI_LINK_OPTS_TERM@
2002-09-05 19:12:13 +04:00
GUI_LINK_OPTS_WX = @GUI_LINK_OPTS_WX@
- add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
etc.
- solve compile problems when building bximage, niclist, and any other
console based program. The compile flags returned by wx-config and
sdl-config did strange things to these console programs, for example
redefining main to SDL_main. Because I wanted to use the
configure-generated CFLAGS to compile the programs, but I wanted to
avoid including GUI specific compile options, I split up the configure's
@CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
@CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@. All programs in the
Bochs binary will use both, but the console programs will just use
@CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
SDL_CFLAGS and WX_CXXFLAGS. These values are included in CFLAGS and
CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-02 03:37:50 +04:00
GUI_LINK_OPTS = @GUI_LINK_OPTS@ @DEVICE_LINK_OPTS@
2001-04-10 05:04:59 +04:00
RANLIB = @RANLIB@
- add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
etc.
- solve compile problems when building bximage, niclist, and any other
console based program. The compile flags returned by wx-config and
sdl-config did strange things to these console programs, for example
redefining main to SDL_main. Because I wanted to use the
configure-generated CFLAGS to compile the programs, but I wanted to
avoid including GUI specific compile options, I split up the configure's
@CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
@CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@. All programs in the
Bochs binary will use both, but the console programs will just use
@CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
SDL_CFLAGS and WX_CXXFLAGS. These values are included in CFLAGS and
CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-02 03:37:50 +04:00
CFLAGS_CONSOLE = @CFLAGS@ $( MCH_CFLAGS) $( FLA_FLAGS)
CXXFLAGS_CONSOLE = @CXXFLAGS@ $( MCH_CFLAGS) $( FLA_FLAGS)
2005-05-14 18:41:27 +04:00
BXIMAGE_LINK_OPTS = @BXIMAGE_LINK_OPTS@
- add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
etc.
- solve compile problems when building bximage, niclist, and any other
console based program. The compile flags returned by wx-config and
sdl-config did strange things to these console programs, for example
redefining main to SDL_main. Because I wanted to use the
configure-generated CFLAGS to compile the programs, but I wanted to
avoid including GUI specific compile options, I split up the configure's
@CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
@CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@. All programs in the
Bochs binary will use both, but the console programs will just use
@CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
SDL_CFLAGS and WX_CXXFLAGS. These values are included in CFLAGS and
CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-02 03:37:50 +04:00
2001-09-14 08:19:08 +04:00
BX_INCDIRS = -I. -I$( srcdir) /. -I@INSTRUMENT_DIR@ -I$( srcdir) /@INSTRUMENT_DIR@
2001-04-10 05:04:59 +04:00
2003-11-28 18:07:29 +03:00
#SUBDIRS = iodev bx_debug
2001-04-10 05:04:59 +04:00
#all install uninstall: config.h#
# for subdir in $(SUBDIRS); do #
# echo making $@ in $$subdir; #
# (cd $$subdir && $(MAKE) $(MDEFINES) $@) || exit 1; #
# done#
# gnu flags for clean up
#CFLAGS = -ansi -O -g -Wunused -Wuninitialized
NONINLINE_OBJS = \
2001-06-19 20:31:28 +04:00
logio.o \
2001-04-10 05:04:59 +04:00
main.o \
2004-06-05 02:06:55 +04:00
config.o \
2001-04-10 05:04:59 +04:00
load32bitOShack.o \
2001-04-10 05:51:50 +04:00
pc_system.o \
2002-10-02 04:09:49 +04:00
osdep.o \
2002-10-25 01:07:56 +04:00
plugin.o \
2006-01-24 22:03:55 +03:00
crc.o \
2002-10-02 04:09:49 +04:00
@EXTRA_BX_OBJS@
2001-04-10 05:04:59 +04:00
EXTERN_ENVIRONMENT_OBJS = \
main.o \
2004-06-05 02:06:55 +04:00
config.o \
2001-04-10 05:04:59 +04:00
load32bitOShack.o \
pc_system.o
2003-11-28 18:07:29 +03:00
DEBUGGER_LIB = bx_debug/libdebug.a
2001-04-10 05:04:59 +04:00
DISASM_LIB = disasm/libdisasm.a
INSTRUMENT_LIB = @INSTRUMENT_DIR@/libinstrument.a
FPU_LIB = fpu/libfpu.a
2001-05-23 12:16:07 +04:00
READLINE_LIB = @READLINE_LIB@
2001-12-08 00:56:15 +03:00
EXTRA_LINK_OPTS = @EXTRA_LINK_OPTS@
2001-04-10 05:04:59 +04:00
2002-10-03 09:23:20 +04:00
GDBSTUB_OBJS = gdbstub.o
2001-04-10 05:04:59 +04:00
BX_OBJS = @NONINLINE_VAR@
2001-04-10 05:51:50 +04:00
BX_INCLUDES = bochs.h config.h osdep.h
2001-04-10 05:04:59 +04:00
.@CPP_SUFFIX@.o :
2002-10-25 01:07:56 +04:00
$( CXX) @DASH@c $( BX_INCDIRS) $( CXXFLAGS) @CXXFP@$< @OFP@$@
2001-06-01 09:58:46 +04:00
.c.o :
2002-10-25 01:07:56 +04:00
$( CC) @DASH@c $( BX_INCDIRS) $( CFLAGS) $( FPU_FLAGS) $< @OFP@$@
2001-04-10 05:04:59 +04:00
2003-05-10 13:55:08 +04:00
all : @PRIMARY_TARGET @ @PLUGIN_TARGET @ bximage @EXE @ bxcommit @EXE @ @BUILD_DOCBOOK_VAR @
2001-04-10 05:04:59 +04:00
@ E X T E R N A L _ D E P E N D E N C Y @
bochs@EXE@ : @IODEV_LIB_VAR @ @DEBUGGER_VAR @ \
2002-09-21 03:16:23 +04:00
cpu/libcpu.a memory/libmemory.a gui/libgui.a \
2002-09-20 19:34:51 +04:00
@DISASM_VAR@ @INSTRUMENT_VAR@ $( BX_OBJS) \
2003-04-23 00:42:27 +04:00
$( SIMX86_OBJS) @FPU_VAR@ @GDBSTUB_VAR@ @PLUGIN_VAR@
2005-06-14 00:28:38 +04:00
@LINK@ @EXPORT_DYNAMIC@ $( BX_OBJS) $( SIMX86_OBJS) \
2002-10-25 01:07:56 +04:00
iodev/libiodev.a cpu/libcpu.a memory/libmemory.a gui/libgui.a \
@DEBUGGER_VAR@ @DISASM_VAR@ @INSTRUMENT_VAR@ @PLUGIN_VAR@ \
2003-04-23 00:42:27 +04:00
@GDBSTUB_VAR@ @FPU_VAR@ \
2003-05-24 21:09:26 +04:00
@NONPLUGIN_GUI_LINK_OPTS@ \
2002-10-25 01:07:56 +04:00
$( MCH_LINK_FLAGS) \
$( SIMX86_LINK_FLAGS) \
$( READLINE_LIB) \
$( EXTRA_LINK_OPTS) \
$( LIBS)
# Special make target for cygwin/mingw using dlltool instead of
# libtool. This creates a .DEF file, and exports file, an import library,
# and then links bochs.exe with the exports file.
.win32_dll_plugin_target : @IODEV_LIB_VAR @ @DEBUGGER_VAR @ \
cpu/libcpu.a memory/libmemory.a gui/libgui.a \
@DISASM_VAR@ @INSTRUMENT_VAR@ $( BX_OBJS) \
2003-04-23 00:42:27 +04:00
$( SIMX86_OBJS) @FPU_VAR@ @GDBSTUB_VAR@ @PLUGIN_VAR@
2002-11-01 16:44:43 +03:00
$( DLLTOOL) --export-all-symbols --output-def bochs.def \
$( BX_OBJS) $( SIMX86_OBJS) \
2002-10-25 01:07:56 +04:00
@IODEV_LIB_VAR@ cpu/libcpu.a memory/libmemory.a gui/libgui.a \
@DEBUGGER_VAR@ @DISASM_VAR@ @INSTRUMENT_VAR@ @PLUGIN_VAR@ \
2003-04-23 00:42:27 +04:00
@GDBSTUB_VAR@ @FPU_VAR@
2002-10-25 01:07:56 +04:00
$( DLLTOOL) --dllname bochs.exe --def bochs.def --output-lib dllexports.a
$( DLLTOOL) --dllname bochs.exe --output-exp bochs.exp --def bochs.def
$( CXX) -o bochs.exe $( CXXFLAGS) $( LDFLAGS) -export-dynamic \
$( BX_OBJS) bochs.exp $( SIMX86_OBJS) \
@IODEV_LIB_VAR@ cpu/libcpu.a memory/libmemory.a gui/libgui.a \
@DEBUGGER_VAR@ @DISASM_VAR@ @INSTRUMENT_VAR@ @PLUGIN_VAR@ \
2003-04-23 00:42:27 +04:00
@GDBSTUB_VAR@ @FPU_VAR@ \
2003-05-25 03:49:38 +04:00
$( GUI_LINK_OPTS) \
2001-04-10 05:04:59 +04:00
$( MCH_LINK_FLAGS) \
2002-10-25 01:07:56 +04:00
$( SIMX86_LINK_FLAGS) \
2001-12-08 00:56:15 +03:00
$( READLINE_LIB) \
2002-10-25 01:07:56 +04:00
$( EXTRA_LINK_OPTS) \
$( LIBS)
touch .win32_dll_plugin_target
bochs_plugins :
cd gui && $( MAKE) plugins
cd iodev && $( MAKE) plugins
2001-04-10 05:04:59 +04:00
2002-12-06 22:45:49 +03:00
bximage@EXE@ : misc /bximage .o
2005-05-14 18:41:27 +04:00
@LINK_CONSOLE@ $( BXIMAGE_LINK_OPTS) misc/bximage.o
- add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
etc.
- solve compile problems when building bximage, niclist, and any other
console based program. The compile flags returned by wx-config and
sdl-config did strange things to these console programs, for example
redefining main to SDL_main. Because I wanted to use the
configure-generated CFLAGS to compile the programs, but I wanted to
avoid including GUI specific compile options, I split up the configure's
@CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
@CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@. All programs in the
Bochs binary will use both, but the console programs will just use
@CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
SDL_CFLAGS and WX_CXXFLAGS. These values are included in CFLAGS and
CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-02 03:37:50 +04:00
2003-05-06 21:34:36 +04:00
bxcommit@EXE@ : misc /bxcommit .o
@LINK_CONSOLE@ misc/bxcommit.o
2005-06-13 19:56:57 +04:00
niclist@EXE@ : misc /niclist .o
@LINK_CONSOLE@ misc/niclist.o
- add -lwinmm to the link lines anytime you use --enable-sb16=win. Now
instead of winmm being a part of GUI_LINK_OPTS_WIN32 only, it is
placed in @DEVICE_LINE_OPTS@ so that it will be used for sdl, rfb, wx,
etc.
- solve compile problems when building bximage, niclist, and any other
console based program. The compile flags returned by wx-config and
sdl-config did strange things to these console programs, for example
redefining main to SDL_main. Because I wanted to use the
configure-generated CFLAGS to compile the programs, but I wanted to
avoid including GUI specific compile options, I split up the configure's
@CFLAGS@ variable into @CFLAGS@ and @GUI_CFLAGS@, and split
@CXXFLAGS@ into @CXXFLAGS@ and @GUI_CXXFLAGS@. All programs in the
Bochs binary will use both, but the console programs will just use
@CFLAGS@ or @CXXFLAGS@.
- gui/Makefile.in, I no longer use the gui specific CFLAGS variables,
SDL_CFLAGS and WX_CXXFLAGS. These values are included in CFLAGS and
CXXFLAGS now.
- modified: configure.in, configure, all Makefile.in's
2002-10-02 03:37:50 +04:00
# compile with console CXXFLAGS, not gui CXXFLAGS
2002-12-06 22:45:49 +03:00
misc/bximage.o : $( srcdir ) /misc /bximage .c
2004-06-19 15:13:21 +04:00
$( CC) @DASH@c $( BX_INCDIRS) $( CFLAGS_CONSOLE) $( srcdir) /misc/bximage.c @OFP@$@
2001-10-09 17:41:01 +04:00
2003-05-06 21:34:36 +04:00
misc/bxcommit.o : $( srcdir ) /misc /bxcommit .c
2004-06-19 15:13:21 +04:00
$( CC) @DASH@c $( BX_INCDIRS) $( CFLAGS_CONSOLE) $( srcdir) /misc/bxcommit.c @OFP@$@
2003-05-06 21:34:36 +04:00
2005-06-13 19:56:57 +04:00
misc/niclist.o : $( srcdir ) /misc /niclist .c
$( CC) @DASH@c $( BX_INCDIRS) $( CFLAGS_CONSOLE) $( srcdir) /misc/niclist.c @OFP@$@
2001-04-10 05:04:59 +04:00
$(BX_OBJS) : $( BX_INCLUDES )
2001-10-07 04:33:21 +04:00
bxversion.h :
2001-05-24 09:36:07 +04:00
$( RM) -f bxversion.h
2001-11-10 04:35:58 +03:00
echo '/////////////////////////////////////////////////////////////////////////' > bxversion.h
2006-01-24 22:03:55 +03:00
echo '// $$Id: Makefile.in,v 1.177 2006-01-24 19:03:53 sshwarts Exp $$' >> bxversion.h
2001-11-10 04:35:58 +03:00
echo '/////////////////////////////////////////////////////////////////////////' >> bxversion.h
echo '// This file is generated by "make bxversion.h"' >> bxversion.h
2001-05-22 22:49:11 +04:00
echo " #define VER_STRING \" $( VER_STRING) \" " >> bxversion.h
echo " #define REL_STRING \" $( REL_STRING) \" " >> bxversion.h
2001-04-10 05:04:59 +04:00
2001-05-14 19:32:43 +04:00
iodev/libiodev.a ::
2001-04-10 05:04:59 +04:00
cd iodev @COMMAND_SEPARATOR@
$( MAKE) $( MDEFINES) libiodev.a
@CD_UP_ONE@
2003-11-28 18:07:29 +03:00
bx_debug/libdebug.a ::
cd bx_debug @COMMAND_SEPARATOR@
2001-04-10 05:04:59 +04:00
$( MAKE) $( MDEFINES) libdebug.a
@CD_UP_ONE@
2002-09-14 09:46:57 +04:00
cpu/libcpu.a ::
cd cpu @COMMAND_SEPARATOR@
2001-04-10 05:04:59 +04:00
$( MAKE) $( MDEFINES) libcpu.a
@CD_UP_ONE@
2001-05-14 19:32:43 +04:00
memory/libmemory.a ::
2001-04-10 05:04:59 +04:00
cd memory @COMMAND_SEPARATOR@
$( MAKE) $( MDEFINES) libmemory.a
@CD_UP_ONE@
2001-05-14 19:32:43 +04:00
gui/libgui.a ::
2001-04-10 05:04:59 +04:00
cd gui @COMMAND_SEPARATOR@
$( MAKE) $( MDEFINES) libgui.a
@CD_UP_ONE@
2001-05-14 19:32:43 +04:00
disasm/libdisasm.a ::
2001-04-10 05:04:59 +04:00
cd disasm @COMMAND_SEPARATOR@
$( MAKE) $( MDEFINES) libdisasm.a
@CD_UP_ONE@
2001-05-14 19:32:43 +04:00
@INSTRUMENT_DIR@/libinstrument.a ::
2001-04-10 05:04:59 +04:00
cd @INSTRUMENT_DIR@ @COMMAND_SEPARATOR@
$( MAKE) $( MDEFINES) libinstrument.a
@CD_UP_TWO@
2001-05-14 19:32:43 +04:00
fpu/libfpu.a ::
2001-04-10 05:04:59 +04:00
cd fpu @COMMAND_SEPARATOR@
$( MAKE) $( MDEFINES) libfpu.a
@CD_UP_ONE@
libbochs.a :
-rm -f libbochs.a
ar rv libbochs.a $( EXTERN_ENVIRONMENT_OBJS)
$( RANLIB) libbochs.a
libbochs_cpu.a : @DEBUGGER_VAR @ $( BX_OBJS )
-rm -f libbochs_cpu.a
ar rv libbochs_cpu.a $( BX_OBJS)
$( RANLIB) libbochs_cpu.a
2005-01-05 22:54:32 +03:00
# for wxWidgets port, on win32 platform
2002-10-02 04:09:49 +04:00
wxbochs_resources.o : wxbochs .rc
2002-10-03 06:26:32 +04:00
windres $( srcdir) /wxbochs.rc -o $@ --include-dir= ` @WX_CONFIG@ --prefix` /include
2002-10-02 04:09:49 +04:00
2002-12-26 21:24:41 +03:00
# for win32 gui
win32res.o : win 32res .rc
2003-06-06 23:57:25 +04:00
$( RC_CMD) $@ $( srcdir) /win32res.rc
2002-12-26 21:24:41 +03:00
2001-10-05 10:03:41 +04:00
#####################################################################
# Install target for all platforms.
#####################################################################
install : all @INSTALL_TARGET @
#####################################################################
# Install target for win32
#
# This is intended to be run in cygwin, since it has better scripting
# tools.
#####################################################################
2002-12-14 01:50:39 +03:00
install_win32 : download_dlx @INSTALL_DOCBOOK_VAR @
2001-10-05 10:03:41 +04:00
-mkdir -p $( prefix)
2002-12-05 21:12:35 +03:00
cp obj-release/*.exe .
2003-12-08 02:47:44 +03:00
for i in $( INSTALL_LIST_WIN32) ; do if test -f $$ i; then cp $$ i $( prefix) ; else cp $( srcdir) /$$ i $( prefix) ; fi ; done
2001-10-05 10:39:09 +04:00
cp $( srcdir) /misc/sb16/sb16ctrl.example $( prefix) /sb16ctrl.txt
cp $( srcdir) /misc/sb16/sb16ctrl.exe $( prefix)
2002-12-21 22:23:08 +03:00
#cat $(srcdir)/build/win32/DOC-win32.htm | $(SED) -e 's/@VERSION@/$(VERSION)/g' > $(prefix)/DOC-win32.htm
2001-10-05 10:39:09 +04:00
cp $( srcdir) /.bochsrc $( prefix) /bochsrc-sample.txt
2002-06-19 19:15:59 +04:00
-mkdir $( prefix) /keymaps
2002-03-11 19:59:58 +03:00
cp $( srcdir) /gui/keymaps/*.map $( prefix) /keymaps
2001-10-05 10:03:41 +04:00
cat $( DLXLINUX_TAR) | ( cd $( prefix) && tar xzvf -)
echo '..\bochs' > $( prefix) /dlxlinux/start.bat
dlxrc = $( prefix) /dlxlinux/bochsrc.txt; mv $$ dlxrc $$ dlxrc.orig && sed < $$ dlxrc.orig 's/\/usr\/local\/bochs\/latest/../' > $$ dlxrc && rm -f $$ dlxrc.orig
mv $( prefix) /README $( prefix) /README.orig
2001-10-05 10:39:09 +04:00
cat $( srcdir) /build/win32/README.win32-binary $( prefix) /README.orig > $( prefix) /README
2001-10-05 10:03:41 +04:00
rm -f $( prefix) /README.orig
2002-11-23 00:04:10 +03:00
for i in $( TEXT_FILE_LIST) ; do mv $( prefix) /$$ i $( prefix) /$$ i.txt; done
2001-11-18 05:32:59 +03:00
cd $( prefix) ; $( UNIX2DOS) *.txt */*.txt
2001-10-05 10:39:09 +04:00
cd $( prefix) ; NAME = ` pwd| $( SED) 's/.*\///' ` ; ( cd ..; $( ZIP) $$ NAME.zip -r $$ NAME) ; ls -l ../$$ NAME.zip
2001-10-05 10:03:41 +04:00
#####################################################################
# install target for unix
#####################################################################
2002-12-13 20:52:16 +03:00
install_unix : install_bin @INSTALL_PLUGINS_VAR @ install_man install_share install_doc @INSTALL_DOCBOOK_VAR @
2001-05-22 20:12:01 +04:00
install_bin ::
2002-06-25 11:30:44 +04:00
for i in $( DESTDIR) $( bindir) ; do mkdir -p $$ i && test -d $$ i && test -w $$ i; done
2005-03-06 00:02:59 +03:00
for i in $( INSTALL_LIST_BIN) ; do if test -f $$ i; then install $$ i $( DESTDIR) $( bindir) ; else install $( srcdir) /$$ i $( DESTDIR) $( bindir) ; fi ; done
-for i in $( INSTALL_LIST_BIN_OPTIONAL) ; do if test -f $$ i; then install $$ i $( DESTDIR) $( bindir) ; else install $( srcdir) /$$ i $( DESTDIR) $( bindir) ; fi ; done
2002-06-25 11:30:44 +04:00
2002-10-25 01:07:56 +04:00
install_libtool_plugins ::
2002-11-14 21:45:49 +03:00
for i in $( DESTDIR) $( plugdir) ; do mkdir -p $$ i && test -d $$ i && test -w $$ i; done
2005-03-06 00:02:59 +03:00
list = ` cd gui && echo *.la` ; for i in $$ list; do $( LIBTOOL) --mode= install install gui/$$ i $( DESTDIR) $( plugdir) ; done
list = ` cd iodev && echo *.la` ; for i in $$ list; do $( LIBTOOL) --mode= install install iodev/$$ i $( DESTDIR) $( plugdir) ; done
2002-11-14 21:45:49 +03:00
$( LIBTOOL) --finish $( DESTDIR) $( plugdir)
2002-10-25 01:07:56 +04:00
install_dll_plugins ::
2002-11-14 21:45:49 +03:00
for i in $( DESTDIR) $( plugdir) ; do mkdir -p $$ i && test -d $$ i && test -w $$ i; done
list = ` cd gui && echo *.dll` ; for i in $$ list; do cp gui/$$ i $( DESTDIR) $( plugdir) ; done
list = ` cd iodev && echo *.dll` ; for i in $$ list; do cp iodev/$$ i $( DESTDIR) $( plugdir) ; done
2002-10-25 01:07:56 +04:00
2002-06-25 11:30:44 +04:00
install_share ::
for i in $( DESTDIR) $( sharedir) ; do mkdir -p $$ i && test -d $$ i && test -w $$ i; done
2005-03-06 00:02:59 +03:00
for i in $( INSTALL_LIST_SHARE) ; do if test -f $$ i; then install -m 644 $$ i $( DESTDIR) $( sharedir) ; else install -m 644 $( srcdir) /$$ i $( DESTDIR) $( sharedir) ; fi ; done
2004-10-29 21:04:02 +04:00
-mkdir $( DESTDIR) $( sharedir) /keymaps
2005-03-06 00:02:59 +03:00
for i in $( srcdir) /gui/keymaps/*.map; do install -m 644 $$ i $( DESTDIR) $( sharedir) /keymaps/; done
2002-06-25 11:30:44 +04:00
install_doc ::
for i in $( DESTDIR) $( docdir) ; do mkdir -p $$ i && test -d $$ i && test -w $$ i; done
2005-03-06 00:02:59 +03:00
for i in $( INSTALL_LIST_DOC) ; do if test -f $$ i; then install -m 644 $$ i $( DESTDIR) $( docdir) ; else install -m 644 $( srcdir) /$$ i $( DESTDIR) $( docdir) ; fi ; done
2002-06-25 11:30:44 +04:00
$( RM) -f $( DESTDIR) $( docdir) /README
$( CAT) $( srcdir) /build/linux/README.linux-binary $( srcdir) /README > $( DESTDIR) $( docdir) /README
2005-03-06 00:02:59 +03:00
install -m 644 $( srcdir) /.bochsrc $( DESTDIR) $( docdir) /bochsrc-sample.txt
2001-05-22 20:12:01 +04:00
2002-12-13 23:37:38 +03:00
build_docbook ::
cd doc/docbook; make
2002-12-15 00:17:25 +03:00
dl_docbook ::
cd doc/docbook; make dl_docs
2002-12-13 23:37:38 +03:00
install_docbook : build_docbook
2002-12-13 19:21:04 +03:00
cd doc/docbook; make install
2001-06-04 08:26:56 +04:00
install_man ::
2001-09-14 08:19:08 +04:00
-mkdir -p $( DESTDIR) $( man1dir)
2002-06-29 22:35:32 +04:00
-mkdir -p $( DESTDIR) $( man5dir)
2004-09-04 12:24:40 +04:00
for i in $( MAN_PAGE_1_LIST) ; do cat $( srcdir) /doc/man/$$ i.1 | $( SED) 's/@version@/$(VERSION)/g' | $( GZIP_BIN) -c > $( DESTDIR) $( man1dir) /$$ i.1.gz; chmod 644 $( DESTDIR) $( man1dir) /$$ i.1.gz; done
for i in $( MAN_PAGE_5_LIST) ; do cat $( srcdir) /doc/man/$$ i.5 | $( GZIP_BIN) -c > $( DESTDIR) $( man5dir) /$$ i.5.gz; chmod 644 $( DESTDIR) $( man5dir) /$$ i.5.gz; done
2001-06-04 08:26:56 +04:00
2001-10-03 16:55:00 +04:00
download_dlx : $( DLXLINUX_TAR )
$(DLXLINUX_TAR) :
2001-05-24 09:36:07 +04:00
$( RM) -f $( DLXLINUX_TAR)
$( WGET) $( DLXLINUX_TAR_URL)
2001-10-03 16:55:00 +04:00
test -f $( DLXLINUX_TAR)
2001-12-08 08:35:57 +03:00
unpack_dlx : $( DLXLINUX_TAR )
rm -rf dlxlinux
$( GUNZIP) -c $( DLXLINUX_TAR) | $( TAR) -xvf -
test -d dlxlinux
2002-09-05 01:13:21 +04:00
( cd dlxlinux; $( MV) bochsrc.txt bochsrc.txt.orig; $( SED) -e " s/1\.1\.2/ $( VERSION) /g " -e 's,/usr/local/bochs/latest,$(prefix)/share/bochs,g' < bochsrc.txt.orig > bochsrc.txt; rm -f bochsrc.txt.orig)
2001-12-08 08:35:57 +03:00
install_dlx :
2002-06-25 11:30:44 +04:00
$( RM) -rf $( DESTDIR) $( sharedir) /dlxlinux
cp -r dlxlinux $( DESTDIR) $( sharedir) /dlxlinux
$( CHMOD) 755 $( DESTDIR) $( sharedir) /dlxlinux
2004-09-04 12:24:40 +04:00
$( GZIP_BIN) $( DESTDIR) $( sharedir) /dlxlinux/hd10meg.img
2002-06-25 11:30:44 +04:00
$( CHMOD) 644 $( DESTDIR) $( sharedir) /dlxlinux/*
2004-10-29 21:04:02 +04:00
for i in bochs-dlx; do cp $( srcdir) /build/linux/$$ i $( DESTDIR) $( bindir) /$$ i; $( CHMOD) 755 $( DESTDIR) $( bindir) /$$ i; done
2001-06-06 17:57:24 +04:00
uninstall ::
2002-06-25 11:30:44 +04:00
$( RM) -rf $( DESTDIR) $( sharedir)
$( RM) -rf $( DESTDIR) $( docdir)
2005-03-06 00:02:59 +03:00
$( RM) -rf $( DESTDIR) $( libdir) /bochs
2003-05-06 21:34:36 +04:00
for i in bochs bximage bxcommit bochs-dlx; do rm -f $( DESTDIR) $( bindir) /$$ i; done
2002-06-29 22:35:32 +04:00
for i in $( MAN_PAGE_1_LIST) ; do $( RM) -f $( man1dir) /$$ i.1.gz; done
for i in $( MAN_PAGE_5_LIST) ; do $( RM) -f $( man5dir) /$$ i.5.gz; done
2001-05-22 20:12:01 +04:00
2001-09-24 08:16:53 +04:00
V6WORKSPACE_ZIP = build/win32/workspace.zip
2002-09-17 00:23:38 +04:00
V6WORKSPACE_FILES = bochs.dsw bochs.dsp bochs.opt cpu/cpu.dsp \
2001-10-08 03:36:11 +04:00
memory/memory.dsp iodev/iodev.dsp instrument/stubs/stubs.dsp \
2003-12-10 23:11:01 +03:00
gui/gui.dsp fpu/fpu.dsp disasm/disasm.dsp bx_debug/bx_debug.dsp \
2003-10-02 14:21:19 +04:00
misc/niclist.dsp bximage.dsp bxcommit.dsp
2001-09-24 08:16:53 +04:00
v6workspace :
zip $( V6WORKSPACE_ZIP) $( V6WORKSPACE_FILES)
2001-10-05 17:40:34 +04:00
########
# the win32_snap target is used to create a ZIP of bochs sources configured
# for VC++. This ZIP is stuck on the website every once in a while to make
# it easier for VC++ users to compile bochs. First, you should
# run "sh .conf.win32-vcpp" to configure the source code, then do
# "make win32_snap" to unzip the workspace files and create the ZIP.
########
2001-09-24 08:16:53 +04:00
win32_snap :
unzip $( V6WORKSPACE_ZIP)
2003-12-10 23:11:01 +03:00
$( SHELL) ./build/win32/cc2cpp
2001-09-24 08:21:29 +04:00
make zip
2003-12-10 23:11:01 +03:00
$( SHELL) ./build/win32/cpp2cc
2001-09-24 08:16:53 +04:00
tar :
2004-09-04 12:24:40 +04:00
NAME = ` pwd| $( SED) 's/.*\///' ` ; ( cd ..; $( RM) -f $$ NAME.zip; tar cf - $$ NAME | $( GZIP_BIN) > $$ NAME.tar.gz) ; ls -l ../$$ NAME.tar.gz
2001-09-24 08:16:53 +04:00
2001-09-24 08:21:29 +04:00
zip :
2003-12-30 00:53:03 +03:00
NAME = ` pwd| $( SED) 's/.*\///' ` ; ( cd ..; $( RM) -f $$ NAME.zip; $( ZIP) $$ NAME.zip -r $$ NAME -x \* CVS\* -x \* .cvsignore ) ; ls -l ../$$ NAME.zip
2001-09-24 08:21:29 +04:00
2001-04-10 05:04:59 +04:00
clean :
@RMCOMMAND@ *.o
@RMCOMMAND@ *.a
2002-10-25 01:07:56 +04:00
@RMCOMMAND@ bochs
@RMCOMMAND@ bochs.exe
@RMCOMMAND@ bximage
@RMCOMMAND@ bximage.exe
2003-05-06 21:34:36 +04:00
@RMCOMMAND@ bxcommit
@RMCOMMAND@ bxcommit.exe
2002-10-25 01:07:56 +04:00
@RMCOMMAND@ niclist
@RMCOMMAND@ niclist.exe
2001-04-10 05:04:59 +04:00
@RMCOMMAND@ bochs.out
2001-06-02 11:37:38 +04:00
@RMCOMMAND@ bochsout.txt
2002-10-25 01:07:56 +04:00
@RMCOMMAND@ bochs.exp
@RMCOMMAND@ bochs.def
2002-11-21 20:30:41 +03:00
@RMCOMMAND@ bochs.scpt
@RMCOMMAND@ -rf bochs.app
@RMCOMMAND@ -rf .libs
2002-10-25 01:07:56 +04:00
@RMCOMMAND@ .win32_dll_plugin_target
2001-04-10 05:04:59 +04:00
local-dist-clean : clean
@RMCOMMAND@ config.h config.status config.log config.cache
2003-10-31 23:50:04 +03:00
@RMCOMMAND@ .dummy ` find . -name '*.dsp' -o -name '*.dsw' -o -name '*.opt' -o -name '.DS_Store' `
2003-05-25 13:48:12 +04:00
@RMCOMMAND@ bxversion.h build/linux/bochs-dlx _rpm_top *.rpm
2003-09-12 00:44:35 +04:00
@RMCOMMAND@ build/win32/nsis/Makefile build/win32/nsis/bochs.nsi
2003-10-31 23:50:04 +03:00
@RMCOMMAND@ build/macosx/Info.plist build/macosx/script_compiled.rsrc
2002-10-25 01:07:56 +04:00
@RMCOMMAND@ libtool
@RMCOMMAND@ ltdlconf.h
2001-04-10 05:04:59 +04:00
all-clean : clean
cd iodev @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
2003-11-28 18:07:29 +03:00
cd bx_debug @COMMAND_SEPARATOR@
2001-04-10 05:04:59 +04:00
$( MAKE) clean
@CD_UP_ONE@
2002-09-13 09:31:28 +04:00
cd cpu @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
2001-04-10 05:04:59 +04:00
cd memory @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
cd gui @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
cd disasm @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
cd @INSTRUMENT_DIR@ @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_TWO@
cd misc @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
cd fpu @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_ONE@
2002-12-13 20:12:46 +03:00
cd doc/docbook @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_TWO@
2004-01-15 05:08:37 +03:00
cd host/linux/pcidev @COMMAND_SEPARATOR@
$( MAKE) clean
@CD_UP_THREE@
2001-04-10 05:04:59 +04:00
dist-clean : local -dist -clean
cd iodev @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
2003-11-28 18:07:29 +03:00
cd bx_debug @COMMAND_SEPARATOR@
2001-04-10 05:04:59 +04:00
$( MAKE) dist-clean
@CD_UP_ONE@
cd bios @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
2002-09-13 09:31:28 +04:00
cd cpu @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
2001-04-10 05:04:59 +04:00
cd memory @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
cd gui @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
cd disasm @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
cd @INSTRUMENT_DIR@ @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_TWO@
cd misc @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
cd fpu @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_ONE@
2002-12-13 20:12:46 +03:00
cd doc/docbook @COMMAND_SEPARATOR@
2002-12-13 20:13:20 +03:00
$( MAKE) dist-clean
2002-12-13 20:12:46 +03:00
@CD_UP_TWO@
2004-01-15 05:08:37 +03:00
cd host/linux/pcidev @COMMAND_SEPARATOR@
$( MAKE) dist-clean
@CD_UP_THREE@
2001-04-10 05:04:59 +04:00
@RMCOMMAND@ Makefile
2001-09-27 06:00:37 +04:00
###########################################
# Build app on MacOS X
###########################################
2002-11-22 06:36:08 +03:00
MACOSX_STUFF = build/macosx
MACOSX_STUFF_SRCDIR = $( srcdir) /$( MACOSX_STUFF)
2001-09-27 06:00:37 +04:00
APP = bochs.app
2002-11-01 20:53:52 +03:00
APP_PLATFORM = MacOS
2002-11-21 20:26:48 +03:00
SCRIPT_EXEC = bochs.scpt
SCRIPT_DATA = $( MACOSX_STUFF_SRCDIR) /script.data
SCRIPT_R = $( MACOSX_STUFF_SRCDIR) /script.r
SCRIPT_APPLESCRIPT = $( MACOSX_STUFF_SRCDIR) /bochs.applescript
SCRIPT_COMPILED_RSRC = $( MACOSX_STUFF) /script_compiled.rsrc
2001-09-27 06:00:37 +04:00
REZ = /Developer/Tools/Rez
2002-11-22 09:33:46 +03:00
CPMAC = /Developer/Tools/CpMac
2001-09-27 06:00:37 +04:00
RINCLUDES = /System/Library/Frameworks/Carbon.framework/Libraries/RIncludes
REZ_ARGS = -append -i $RINCLUDES -d SystemSevenOrLater = 1 -useDF
2002-11-01 20:53:52 +03:00
STANDALONE_LIBDIR = ` pwd ` /$( APP) /Contents/$( APP_PLATFORM) /lib
2002-10-21 15:38:38 +04:00
OSACOMPILE = /usr/bin/osacompile
SETFILE = /Developer/Tools/Setfile
2001-09-27 06:00:37 +04:00
2002-11-21 20:26:48 +03:00
# On a MacOS X machine, you run rez, osacompile, and setfile to
# produce the script executable, which has both a data fork and a
# resource fork. Ideally, we would just recompile the whole
# executable at build time, but unfortunately this cannot be done on
# the SF compile farm through an ssh connection because osacompile
# needs to be run locally for some reason. Solution: If the script
# sources are changed, rebuild the executable on a MacOSX machine,
# split it into its data and resource forks and check them into CVS
# as separate files. Then at release time, all that's left to do is
# put the data and resource forks back together to make a working script.
# (This can be done through ssh.)
#
# Sources:
# 1. script.r: resources for the script
# 2. script.data: binary data for the script
# 3. bochs.applescript: the source of the script
#
# NOTE: All of this will fail if you aren't building on an HFS+
# filesystem! On the SF compile farm building in your user directory
# will fail, while doing the build in /tmp will work ok.
# check if this filesystem supports resource forks at all
test_hfsplus :
$( RM) -rf test_hfsplus
echo data > test_hfsplus
# if you get "Not a directory", then this filesystem doesn't support resources
echo resource > test_hfsplus/rsrc
# test succeeded
$( RM) -rf test_hfsplus
# Step 1 (must be done locally on MacOSX, only when sources change)
# Compile and pull out just the resource fork. The resource fork is
# checked into CVS as script_compiled.rsrc. Note that we don't need
# to check in the data fork of tmpscript because it is identical to the
# script.data input file.
$(SCRIPT_COMPILED_RSRC) : $( SCRIPT_R ) $( SCRIPT_APPLESCRIPT )
$( RM) -f tmpscript
$( CP) -f $( SCRIPT_DATA) tmpscript
$( REZ) -append $( SCRIPT_R) -o tmpscript
$( OSACOMPILE) -o tmpscript $( SCRIPT_APPLESCRIPT)
2002-11-22 06:30:18 +03:00
$( CP) tmpscript/rsrc $( SCRIPT_COMPILED_RSRC)
2002-11-21 20:26:48 +03:00
$( RM) -f tmpscript
# Step 2 (can be done locally or remotely on MacOSX)
# Combine the data fork and resource fork, and set attributes.
$(SCRIPT_EXEC) : $( SCRIPT_DATA ) $( SCRIPT_COMPILED_RSRC )
rm -f $( SCRIPT_EXEC)
$( CP) $( SCRIPT_DATA) $( SCRIPT_EXEC)
2002-11-21 20:52:59 +03:00
if test ! -f $( SCRIPT_COMPILED_RSRC) ; then $( CP) $( srcdir) /$( SCRIPT_COMPILED_RSRC) $( SCRIPT_COMPILED_RSRC) ; fi
2002-11-21 20:26:48 +03:00
$( CP) $( SCRIPT_COMPILED_RSRC) $( SCRIPT_EXEC) /rsrc
$( SETFILE) -t "APPL" -c "aplt" $( SCRIPT_EXEC)
$(APP)/.build : bochs test_hfsplus $( SCRIPT_EXEC )
2001-09-27 06:00:37 +04:00
rm -f $( APP) /.build
$( MKDIR) -p $( APP)
$( MKDIR) -p $( APP) /Contents
$( CP) -f $( MACOSX_STUFF) /Info.plist $( APP) /Contents
2002-09-23 07:58:25 +04:00
$( CP) -f $( MACOSX_STUFF_SRCDIR) /pbdevelopment.plist $( APP) /Contents
2001-09-27 06:00:37 +04:00
echo -n "APPL????" > $( APP) /Contents/PkgInfo
2002-11-01 20:53:52 +03:00
$( MKDIR) -p $( APP) /Contents/$( APP_PLATFORM)
$( CP) bochs $( APP) /Contents/$( APP_PLATFORM)
2001-09-27 06:00:37 +04:00
$( MKDIR) -p $( APP) /Contents/Resources
2002-09-23 07:58:25 +04:00
$( REZ) $( REZ_ARGS) $( MACOSX_STUFF_SRCDIR) /bochs.r -o $( APP) /Contents/Resources/bochs.rsrc
$( CP) -f $( MACOSX_STUFF_SRCDIR) /bochs-icn.icns $( APP) /Contents/Resources
2002-11-21 20:26:48 +03:00
ls -ld $( APP) $( SCRIPT_EXEC) $( SCRIPT_EXEC) /rsrc
2001-09-27 06:00:37 +04:00
touch $( APP) /.build
2001-10-07 04:33:21 +04:00
2002-11-01 20:53:52 +03:00
$(APP)/.build_plugins : $( APP ) /.build bochs_plugins
rm -f $( APP) /.build_plugins
$( MKDIR) -p $( STANDALONE_LIBDIR) ;
list = ` cd gui && echo *.la` ; for i in $$ list; do $( LIBTOOL) cp gui/$$ i $( STANDALONE_LIBDIR) ; done ;
list = ` cd iodev && echo *.la` ; for i in $$ list; do $( LIBTOOL) cp iodev/$$ i $( STANDALONE_LIBDIR) ; done ;
$( LIBTOOL) --finish $( STANDALONE_LIBDIR) ;
touch $( APP) /.build_plugins
2002-12-13 20:52:16 +03:00
install_macosx : all download_dlx @INSTALL_DOCBOOK_VAR @
2002-11-22 09:33:46 +03:00
-mkdir -p $( prefix)
2002-11-23 03:25:50 +03:00
for i in $( INSTALL_LIST_MACOSX) ; do if test -e $$ i; then $( CPMAC) -r $$ i $( prefix) ; else $( CPMAC) -r $( srcdir) /$$ i $( prefix) ; fi ; done
2002-11-22 09:33:46 +03:00
$( CPMAC) $( srcdir) /.bochsrc $( prefix) /bochsrc-sample.txt
-mkdir $( prefix) /keymaps
$( CPMAC) $( srcdir) /gui/keymaps/*.map $( prefix) /keymaps
cat $( DLXLINUX_TAR) | ( cd $( prefix) && tar xzvf -)
2002-11-23 00:04:10 +03:00
dlxrc = $( prefix) /dlxlinux/bochsrc.txt; mv " $$ dlxrc " " $$ dlxrc.orig " && sed < " $$ dlxrc.orig " 's/\/usr\/local\/bochs\/latest/../' > " $$ dlxrc " && rm -f " $$ dlxrc.orig "
2002-11-22 09:33:46 +03:00
mv $( prefix) /README $( prefix) /README.orig
cat $( srcdir) /build/macosx/README.macosx-binary $( prefix) /README.orig > $( prefix) /README
rm -f $( prefix) /README.orig
2002-12-18 08:07:33 +03:00
$( CPMAC) $( SCRIPT_EXEC) $( prefix) /dlxlinux
2002-11-22 09:33:46 +03:00
for i in $( TEXT_FILE_LIST) ; do mv $( prefix) /$$ i $( prefix) /$$ i.txt; done
2001-10-07 04:33:21 +04:00
###########################################
2002-12-21 17:31:30 +03:00
# BeOS make target.
# Build the binary normally, then copy the resource attributes.
###########################################
2002-12-21 17:41:49 +03:00
.bochs_beos_target : bochs @EXE @
2002-12-21 18:51:41 +03:00
unzip $( srcdir) /build/beos/resource.zip
copyattr -t ICON BeBochs.rsrc bochs
copyattr -t MICN BeBochs.rsrc bochs
2002-12-21 17:31:30 +03:00
###########################################
2001-10-07 04:33:21 +04:00
# dependencies generated by
2002-09-17 00:23:38 +04:00
# gcc -MM -I. -Iinstrument/stubs *.cc | sed -e 's/\.cc/.@CPP_SUFFIX@/g' -e 's,cpu/,cpu/,g'
2001-10-07 04:33:21 +04:00
###########################################
2004-12-13 22:10:38 +03:00
config.o : config .@CPP_SUFFIX @ bochs .h config .h osdep .h bx_debug /debug .h bxversion .h \
gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h iodev/iodev.h iodev/pci.h iodev/pci2isa.h \
iodev/pci_ide.h iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h \
iodev/dma.h iodev/floppy.h iodev/harddrv.h iodev/keyboard.h \
iodev/parallel.h iodev/pic.h iodev/pit.h iodev/pit_wrap.h \
iodev/pit82c54.h iodev/virt_timer.h iodev/serial.h iodev/sb16.h \
iodev/unmapped.h iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
2003-11-28 18:07:29 +03:00
gdbstub.o : gdbstub .@CPP_SUFFIX @ bochs .h config .h osdep .h bx_debug /debug .h \
2004-12-13 22:10:38 +03:00
bxversion.h gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h iodev/iodev.h iodev/pci.h iodev/pci2isa.h \
iodev/pci_ide.h iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h \
iodev/dma.h iodev/floppy.h iodev/harddrv.h iodev/keyboard.h \
iodev/parallel.h iodev/pic.h iodev/pit.h iodev/pit_wrap.h \
iodev/pit82c54.h iodev/virt_timer.h iodev/serial.h iodev/sb16.h \
iodev/unmapped.h iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
2001-10-08 00:19:04 +04:00
load32bitOShack.o : load 32bitOShack .@CPP_SUFFIX @ bochs .h config .h osdep .h \
2004-12-13 22:10:38 +03:00
bx_debug/debug.h bxversion.h gui/siminterface.h cpu/cpu.h \
cpu/lazy_flags.h cpu/hostasm.h cpu/icache.h cpu/apic.h cpu/i387.h \
fpu/softfloat.h fpu/tag_w.h fpu/status_w.h fpu/control_w.h cpu/xmm.h \
memory/memory.h pc_system.h plugin.h extplugin.h ltdl.h gui/gui.h \
gui/textconfig.h gui/keymap.h instrument/stubs/instrument.h \
iodev/iodev.h iodev/pci.h iodev/pci2isa.h iodev/pci_ide.h \
iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h iodev/dma.h \
iodev/floppy.h iodev/harddrv.h iodev/keyboard.h iodev/parallel.h \
iodev/pic.h iodev/pit.h iodev/pit_wrap.h iodev/pit82c54.h \
iodev/virt_timer.h iodev/serial.h iodev/sb16.h iodev/unmapped.h \
iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
logio.o : logio .@CPP_SUFFIX @ iodev /iodev .h bochs .h config .h osdep .h bx_debug /debug .h \
bxversion.h gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h iodev/pci.h iodev/pci2isa.h \
iodev/pci_ide.h iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h \
iodev/dma.h iodev/floppy.h iodev/harddrv.h iodev/keyboard.h \
iodev/parallel.h iodev/pic.h iodev/pit.h iodev/pit_wrap.h \
iodev/pit82c54.h iodev/virt_timer.h iodev/serial.h iodev/sb16.h \
iodev/unmapped.h iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
2003-11-28 18:07:29 +03:00
main.o : main .@CPP_SUFFIX @ bochs .h config .h osdep .h bx_debug /debug .h bxversion .h \
2004-12-13 22:10:38 +03:00
gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h iodev/iodev.h iodev/pci.h iodev/pci2isa.h \
iodev/pci_ide.h iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h \
iodev/dma.h iodev/floppy.h iodev/harddrv.h iodev/keyboard.h \
iodev/parallel.h iodev/pic.h iodev/pit.h iodev/pit_wrap.h \
iodev/pit82c54.h iodev/virt_timer.h iodev/serial.h iodev/sb16.h \
iodev/unmapped.h iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
2003-11-28 18:07:29 +03:00
osdep.o : osdep .@CPP_SUFFIX @ bochs .h config .h osdep .h bx_debug /debug .h bxversion .h \
2004-12-13 22:10:38 +03:00
gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h
2003-11-28 18:07:29 +03:00
pc_system.o : pc_system .@CPP_SUFFIX @ bochs .h config .h osdep .h bx_debug /debug .h \
2004-12-13 22:10:38 +03:00
bxversion.h gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h iodev/iodev.h iodev/pci.h iodev/pci2isa.h \
iodev/pci_ide.h iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h \
iodev/dma.h iodev/floppy.h iodev/harddrv.h iodev/keyboard.h \
iodev/parallel.h iodev/pic.h iodev/pit.h iodev/pit_wrap.h \
iodev/pit82c54.h iodev/virt_timer.h iodev/serial.h iodev/sb16.h \
iodev/unmapped.h iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
plex86-interface.o : plex 86-interface .@CPP_SUFFIX @ bochs .h config .h osdep .h \
bx_debug/debug.h bxversion.h gui/siminterface.h cpu/cpu.h \
cpu/lazy_flags.h cpu/hostasm.h cpu/icache.h cpu/apic.h cpu/i387.h \
fpu/softfloat.h fpu/tag_w.h fpu/status_w.h fpu/control_w.h cpu/xmm.h \
memory/memory.h pc_system.h plugin.h extplugin.h ltdl.h gui/gui.h \
gui/textconfig.h gui/keymap.h instrument/stubs/instrument.h \
plex86-interface.h plex86/plex86.h plex86/descriptor.h
2003-11-28 18:07:29 +03:00
plugin.o : plugin .@CPP_SUFFIX @ bochs .h config .h osdep .h bx_debug /debug .h bxversion .h \
2004-12-13 22:10:38 +03:00
gui/siminterface.h cpu/cpu.h cpu/lazy_flags.h cpu/hostasm.h \
cpu/icache.h cpu/apic.h cpu/i387.h fpu/softfloat.h fpu/tag_w.h \
fpu/status_w.h fpu/control_w.h cpu/xmm.h memory/memory.h pc_system.h \
plugin.h extplugin.h ltdl.h gui/gui.h gui/textconfig.h gui/keymap.h \
instrument/stubs/instrument.h iodev/iodev.h iodev/pci.h iodev/pci2isa.h \
iodev/pci_ide.h iodev/pcivga.h iodev/vga.h iodev/biosdev.h iodev/cmos.h \
iodev/dma.h iodev/floppy.h iodev/harddrv.h iodev/keyboard.h \
iodev/parallel.h iodev/pic.h iodev/pit.h iodev/pit_wrap.h \
iodev/pit82c54.h iodev/virt_timer.h iodev/serial.h iodev/sb16.h \
iodev/unmapped.h iodev/ne2k.h iodev/guest2host.h iodev/slowdown_timer.h \
iodev/extfpuirq.h iodev/gameport.h
2006-01-24 22:03:55 +03:00
crc.o : crc .@CPP_SUFFIX @ config .h