Update Windows build instructions
authorMatthew Mondor <mmondor@pulsar-zone.net>
Sat, 12 Jul 2014 08:52:35 +0000 (08:52 +0000)
committerMatthew Mondor <mmondor@pulsar-zone.net>
Sat, 12 Jul 2014 08:52:35 +0000 (08:52 +0000)
mmsoftware/mystic_ships/client/BUILDING

index b1f9381..8e899a0 100644 (file)
@@ -1,4 +1,4 @@
-$Id: BUILDING,v 1.5 2014/06/30 02:23:32 mmondor Exp $
+$Id: BUILDING,v 1.6 2014/07/12 08:52:35 mmondor Exp $
 
 
 NetBSD
@@ -113,24 +113,34 @@ binary (i.e. renamed to tms-client-bin).
 WINDOWS
 =======
 
-On Windows, to build tms-client you'll need to install cygwin as
-well as the cygwin-mingw cross-compiler.  This system has advantages
-over using MSVC, like that no extra base C runtime libraries are
-needed to execute the resulting executable, that GCC does not suffer
-from some MSVC issues (like not supporting large static strings)
-and that a more standard build environment is provided.
+Previously to build tms-client we used the cygwin-mingw cross-compiler.
+Because Windows systems often need reinstalls, that the cygwin
+install procedure is tedious, and that cygwin no longer embeds the
+mingw cross-compiler (although a separate mingw cross-compiler is
+available as an option now), we now use a unix build host with a
+mingw32 cross-compiler.
+
+Using mingw rather than MS tools has several advantages: no extra
+base C runtime libraries are needed to execute the resulting
+executable, GCC does not suffer from some serious MSVC issues (like
+not supporting large static strings), and a more standard build
+environment can be used.
 
 This however also means that you'll need mingw-built versions of
 SDL, SDL_gfx, SDL_image, SDL_mixer, SDL_net, libvorbis, libogg and
 libz.  The tms-client GNUmakefile script expects those to have been
-installed under the /usr/local prefix by default.  Although they may
-not be the latest versions, the following archive may be extracted
-once in your cygwin environment, using the command
+installed under $(PREFIX_OPT)/lib, with headers under
+$(PREFIX_OPT)/include, and expects to find the mingw cross compiling
+libraries and headers under $(PREFIX_PKG)/lib and $(PREFIX_PKG)/include
+by default.  Although they may not be the latest versions, the
+following archive may be extracted once in your cygwin or unix
+cross-compiling environment, using the command
 "cd / && tar xzvpf <archive>":
 http://tms.pulsar-zone.net/cygwin-mingw-libs.tgz
 
-Go to the client/ directory, modify src/conf.h as necessary, then
-run "make".
+Go to the client/ directory, modify src/conf.h and GNUmakefile as
+necessary, then run "MINGW=yes gmake", or "MINGW=yes make" where
+the default make is GNUMake.
 
 If distributing the client, make sure to also include the library
 dependencies (listed above) in the same directory as the executable.