- Build niclist.exe on Windows even if plugins are enabled

- Some fixes for the install_win32 target
- Documentation updates
This commit is contained in:
Volker Ruppert 2013-11-18 16:49:56 +00:00
parent 299cec4907
commit aa0554e5d9
3 changed files with 44 additions and 30 deletions

View File

@ -45,11 +45,11 @@ MAN_PAGE_5_LIST=bochsrc
INSTALL_LIST_SHARE=bios/BIOS-bochs-* bios/VGABIOS* @INSTALL_LIST_FOR_PLATFORM@
INSTALL_LIST_DOC=CHANGES COPYING LICENSE README TODO
INSTALL_LIST_BIN=bochs@EXE@ bximage@EXE@ bximage_old@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@
INSTALL_LIST_BIN_OPTIONAL=bochsdbg@EXE@ @OPTIONAL_TARGET@
INSTALL_LIST_WIN32=$(INSTALL_LIST_SHARE) $(INSTALL_LIST_DOC) $(INSTALL_LIST_BIN) $(INSTALL_LIST_BIN_OPTIONAL)
INSTALL_LIST_MACOSX=$(INSTALL_LIST_SHARE) $(INSTALL_LIST_DOC) bochs.scpt
# for win32 and macosx, these files get renamed to *.txt in install process
TEXT_FILE_LIST=README CHANGES COPYING TODO VGABIOS-elpin-LICENSE VGABIOS-lgpl-README
TEXT_FILE_LIST=README CHANGES COPYING LICENSE TODO VGABIOS-elpin-LICENSE VGABIOS-lgpl-README
CP=cp
CAT=cat
RM=rm
@ -169,7 +169,7 @@ BX_INCLUDES = bochs.h config.h osdep.h
$(CC) @DASH@c $(BX_INCDIRS) $(CFLAGS) $(FPU_FLAGS) $< @OFP@$@
all: @PRIMARY_TARGET@ @PLUGIN_TARGET@ bximage@EXE@ bximage_old@EXE@ bxcommit@EXE@ @BUILD_DOCBOOK_VAR@
all: @PRIMARY_TARGET@ @PLUGIN_TARGET@ bximage@EXE@ bximage_old@EXE@ bxcommit@EXE@ @OPTIONAL_TARGET@ @BUILD_DOCBOOK_VAR@
@EXTERNAL_DEPENDENCY@
@ -384,25 +384,26 @@ install: all @INSTALL_TARGET@
# tools.
#####################################################################
install_win32: download_dlx @INSTALL_DOCBOOK_VAR@
-mkdir -p $(prefix)
cp obj-release/*.exe .
for i in $(INSTALL_LIST_WIN32); do if test -f $$i; then cp $$i $(prefix); else cp $(srcdir)/$$i $(prefix); fi; done
cp $(srcdir)/misc/sb16/sb16ctrl.example $(prefix)/sb16ctrl.txt
cp $(srcdir)/misc/sb16/sb16ctrl.exe $(prefix)
#cat $(srcdir)/build/win32/DOC-win32.htm | $(SED) -e 's/@VERSION@/$(VERSION)/g' > $(prefix)/DOC-win32.htm
cp $(srcdir)/.bochsrc $(prefix)/bochsrc-sample.txt
-mkdir $(prefix)/keymaps
cp $(srcdir)/gui/keymaps/*.map $(prefix)/keymaps
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
cat $(srcdir)/build/win32/README.win32-binary $(prefix)/README.orig > $(prefix)/README
rm -f $(prefix)/README.orig
for i in $(TEXT_FILE_LIST); do mv $(prefix)/$$i $(prefix)/$$i.txt; done
cd $(prefix); $(UNIX2DOS) *.txt */*.txt
cd $(prefix); NAME=`pwd|$(SED) 's/.*\///'`; (cd ..; $(ZIP) $$NAME.zip -r $$NAME); ls -l ../$$NAME.zip
install_win32: download_dlx dl_docbook
-mkdir -p $(INSTDIR)
-cp -p obj-release/*.exe .
for i in $(INSTALL_LIST_WIN32); do if test -f $$i; then cp -p $$i $(INSTDIR); else cp -p $(srcdir)/$$i $(INSTDIR); fi; done
cp $(srcdir)/misc/sb16/sb16ctrl.example $(INSTDIR)/sb16ctrl.txt
cp -p $(srcdir)/misc/sb16/sb16ctrl.exe $(INSTDIR)
cp $(srcdir)/.bochsrc $(INSTDIR)/bochsrc-sample.txt
-mkdir $(INSTDIR)/keymaps
cp -p $(srcdir)/gui/keymaps/*.map $(INSTDIR)/keymaps
cat $(DLXLINUX_TAR) | (cd $(INSTDIR) && tar xzvf -)
echo '..\bochs -q' > $(INSTDIR)/dlxlinux/run.bat
dlxrc=$(INSTDIR)/dlxlinux/bochsrc.txt; mv $$dlxrc $$dlxrc.orig && sed < $$dlxrc.orig 's/\/usr\/local\/bochs\/latest/../' > $$dlxrc && rm -f $$dlxrc.orig
mv $(INSTDIR)/README $(INSTDIR)/README.orig
cat $(srcdir)/build/win32/README.win32-binary $(INSTDIR)/README.orig > $(INSTDIR)/README
rm -f $(INSTDIR)/README.orig
for i in $(TEXT_FILE_LIST); do mv $(INSTDIR)/$$i $(INSTDIR)/$$i.txt; done
cd $(INSTDIR); $(UNIX2DOS) *.txt */*.txt
-mkdir -p $(INSTDIR)/docs
$(GUNZIP) -c $(srcdir)/doc/docbook/bochsdoc.tar.gz | $(TAR) -xvf - -C $(INSTDIR)/docs
cd $(INSTDIR); NAME=`pwd|$(SED) 's/.*\///'`; (cd ..; $(ZIP) $$NAME.zip -r $$NAME); ls -l ../$$NAME.zip
#####################################################################
# install target for unix
@ -519,7 +520,7 @@ tar:
NAME=`pwd|$(SED) 's/.*\///'`; (cd ..; $(RM) -f $$NAME.zip; tar cf - $$NAME | $(GZIP_BIN) > $$NAME.tar.gz); ls -l ../$$NAME.tar.gz
zip:
NAME=`pwd|$(SED) 's/.*\///'`; (cd ..; $(RM) -f $$NAME-msvc-src.zip; $(ZIP) $$NAME-msvc-src.zip -r $$NAME -x \*CVS\* -x \*.cvsignore -x \*.svn\* ); ls -l ../$$NAME-msvc-src.zip
NAME=`pwd|$(SED) 's/.*\///'`; (cd ..; $(RM) -f $$NAME-msvc-src.zip; $(ZIP) $$NAME-msvc-src.zip -r $$NAME -x \*.svn\* ); ls -l ../$$NAME-msvc-src.zip
clean:
@RMCOMMAND@ *.o

View File

@ -2425,7 +2425,7 @@ case "$target" in
BXIMAGE_LINK_OPTS="user32.lib"
# also compile niclist if networking is on
if test "$networking" = yes; then
PRIMARY_TARGET="$PRIMARY_TARGET niclist.exe"
OPTIONAL_TARGET="$OPTIONAL_TARGET niclist.exe"
fi
COMMAND_SEPARATOR=""
CD_UP_ONE="cd .."
@ -2446,14 +2446,14 @@ case "$target" in
PRIMARY_TARGET="bochs.exe"
BXIMAGE_LINK_OPTS="-luser32"
if test "$networking" = yes; then
PRIMARY_TARGET="$PRIMARY_TARGET niclist.exe"
OPTIONAL_TARGET="$OPTIONAL_TARGET niclist.exe"
fi
AC_DEFINE(BX_HAVE_SELECT, 1)
;;
*-pc-mingw*)
BXIMAGE_LINK_OPTS="-luser32"
if test "$networking" = yes; then
PRIMARY_TARGET="$PRIMARY_TARGET niclist"
OPTIONAL_TARGET="$OPTIONAL_TARGET niclist"
fi
AC_DEFINE(BX_HAVE_SELECT, 1)
;;
@ -2855,6 +2855,7 @@ AC_SUBST(LINK)
AC_SUBST(LINK_CONSOLE)
AC_SUBST(EXE)
AC_SUBST(PRIMARY_TARGET)
AC_SUBST(OPTIONAL_TARGET)
AC_SUBST(PLUGIN_LIBNAME_TRANSFORMATION)
AC_SUBST(COMMAND_SEPARATOR)
AC_SUBST(CD_UP_ONE)

View File

@ -2554,13 +2554,14 @@ to build the release binaries.
</para>
<para>
The <command>make install</command> for Win32 is presently broken. In the
future, a <command>make install</command> that runs in Cygwin may be provided.
The <command>make install</command> doesn't work with nmake yet. Currently
it must be run inside of Cygwin or MinGW/MSYS and requires the environment
variable <emphasis>INSTDIR</emphasis> to be set.
</para>
</section> <!-- end of Compiling:win32 -->
<section id="compile-cygwin"><title>Compiling on Win32 with Cygwin</title>
<section id="compile-cygwin"><title>Compiling on Win32 with Cygwin or MinGW/MSYS</title>
<para>Cygwin is a free Unix-like environment for Windows written by
Steve Chamberlain and now maintained by RedHat, Inc. You can download
it from <ulink url="http://www.cygwin.com">www.cygwin.com</ulink>. Because
@ -2586,6 +2587,17 @@ To find out the options which are known to work in Cygwin, open the file
<filename>.conf.win32-cygwin</filename> in any text editor/viewer and have
a look at the end of that file.
</para>
<para>
When using gcc 4.7 or newer you need to add the switch <emphasis>-mno-ms-bitfields</emphasis>
to the CFLAGS, to make sure that hdimage and network structures are packed as
expected.
</para>
<para>
The command <emphasis>make install</emphasis> installs the Bochs files in the directory
structure of your build environment. To install Bochs into any desired folder you
need to use the <emphasis>install_win32</emphasis> target. It requires the environment
variable <emphasis>INSTDIR</emphasis> to be set.
</para>
</section> <!-- end of cygwin -->
<section id="compile-macos9-codewarrior"><title>Compiling on MacOS 9 with CodeWarrior</title>