Re: [AD] docs/build/mingw32.txt

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


Eric Botcazou wrote:

> [Use cvs diff -u to generate patches, it's more human-readable]

Oh yeah. I keep forgetting that.

> Would it not be safer to refer to the front-page of the MinGW project 
> (http://sourceforge.net/projects/mingw/) and specify which source packages 
> need to be downloaded and built?

Definitely. Changed in attached patch. I also included a line for the
opengl-devel package that the SDL script downloads, if you think we
should leave this out feel free to remove it. It seems a good idea to
install that too.

> 'make depend' doesn't generate header files, but makefile.dep files which 
> record build dependencies.

Of course, I was just thinking of the errors you run into when you
don't run make depend, this is usually some header that isn't
generated. Changed the sentence in the new patch.

> >    6) To build the documentation, use the native build process.
> 
> We ought to eventually get rid of this limitation for the 4.1.x series, by 
> using a trick similar to what the 4.0.x series uses.

Added a line at the end, if you don't think it's needed, feel free to
remove it.

Hein

>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-< 
 Unix is user friendly. It's just very particular about who 
 it's friends are.

 Hein Zelle                     hein@xxxxxxxxxx
	                        http://www.icce.rug.nl/~hein
>-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-<
Index: docs/build/mingw32.txt
===================================================================
RCS file: /cvsroot/alleg/allegro/docs/build/mingw32.txt,v
retrieving revision 1.13
diff -u -r1.13 mingw32.txt
--- docs/build/mingw32.txt	12 Feb 2003 17:46:20 -0000	1.13
+++ docs/build/mingw32.txt	17 Feb 2003 20:09:13 -0000
@@ -258,29 +258,71 @@
 
    Brief example of how to set up a MingW32 cross-compiler system:
 
-   1) Install the MingW32 cross-compiler, and edit the file 'xmake.sh',
-      replacing XC_PATH, XPREFIX and INSTALL_BASE with the right names.
-      For example, if your compiler's base dir (the one with bin, lib and
-      include sub-folders) is /usr/i586-mingw32msvc, and you have
-      prefix-less binaries in /usr/i586-mingw32msvc/bin, you would use:
+   1) Download and install the MingW32 cross-compiler. You can get the
+      software 
+      - directly from the MingW site:
+          http://sourceforge.net/projects/mingw/
+	You need the following packages (17 February 2003):
+          - gcc (gcc-3.2.2-20030208-1-src.tar.gz)
+          - binutils (binutils-2.13.90-20030111-1-src.tar.gz)
+          - mingw runtime (mingw-runtime-2.4.tar.gz)
+          - w32api (w32api-2.2.tar.gz)
+        Optionally, you can get from the SDL site,
+        http://www.libsdl.org/extras/win32/common:
+          - opengl-devel (opengl-devel.tar.gz)
+      - using a more convenient script with instructions for
+        downloading: http://www.libsdl.org/extras/win32/cross/README.txt
+        Follow the instructions, and make sure to edit the
+        build-crosh.sh script so it downloads the most recent version
+        of gcc and binutils.
+      - as a premade Debian package called 'mingw32',
+        which you can install with 'apt-get install mingw32'.
+
+   2) Get the minimal DirectX 7 SDK for MingW32. (dx70_mgw.zip)
+      Download it from 'http://alleg.sourceforge.net/wip.html' and
+      unzip it to the cross-compiler base directory. Make sure you
+      convert all text files to unix style (unzip -a) or the
+      pre-processor will croak. The DirectX package downloaded and
+      installed by the SDL script is not up to date: replace it with
+      the package from the Allegro site.
+
+   3) Edit the file 'xmake.sh' in the root of your Allegro directory,
+      replacing XC_PATH, XPREFIX and INSTALL_BASE with the right
+      names.  For example, if your compiler's base dir (the one with
+      bin, lib and include sub-folders) is /usr/i586-mingw32msvc, and
+      you have prefix-less binaries in /usr/i586-mingw32msvc/bin, you
+      would use:
 
       XC_PATH=/usr/i586-mingw32msvc/bin
       XPREFIX=
       INSTALL_BASE=/usr/i586-mingw32msvc
 
-   2) Get the minimal DirectX 7 SDK for MingW32. (dx70_mgw.zip) Download it
-      from 'http://alleg.sourceforge.net/wip.html' and unzip it to the
-      cross-compiler base dir. Make sure you convert all text files to unix
-      style (unzip -a) or the pre-processor will croak.
-
-   3) Then run './fix.sh mingw32 --dtou' (--dtou is only needed if your
-      allegro directory has text files in DOS format, otherwise you can
-      use --quick). You are now finished with all the preparations.
+      Note that the build-cross.sh script from SDL installs binaries
+      both with and without prefix, but some binaries (windres,
+      specifically) are installed only with prefix. If you installed
+      the crosscompiler in /opt/cross-tools using this script, you
+      would use:
+
+      XC_PATH=/opt/cross-tools/i386-mingw32msvc/bin:/opt/cross-tools/bin
+      XPREFIX=i386-mingw32msvc-
+      INSTALL_BASE=/opt/cross-tools/i386-mingw32msvc
+
+   4) Run './fix.sh mingw32 --dtou' (--dtou is only needed if your
+      Allegro directory has text files in DOS format, otherwise you
+      can use --quick).  If you are using a CVS version of Allegro,
+      run 'make depend' to generate build dependencies, then run
+      misc/fixdll.sh to generate the allegro.def file. You are now
+      finished with all the preparations.
    
-   4) You can now run './xmake.sh' to build the Allegro library and then run
-      './xmake.sh install' as root to install Allegro. You can use
-      'xmake.sh' as you would use 'make' to compile any Allegro stuff.
-      To build the documentation, use the native build process.
+   5) You can now run './xmake.sh' to build the Allegro library and
+      then run './xmake.sh install' as root to install
+      Allegro. Afterwards, you can use 'xmake.sh' as you would use
+      'make' to compile your own Allegro programs, or you can use the
+      'cross-make.sh' and 'cross-configure.sh' scripts from the SDL
+      site. You must use ./xmake.sh to compile Allegro itself, though!
+
+   6) To build the documentation, use the native build process. This
+      limitation will eventually be removed.
 
 
 


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/