     ______   ___    ___
    /\  _  \ /\_ \  /\_ \
    \ \ \L\ \\//\ \ \//\ \      __     __   _ __   ___ 
     \ \  __ \ \ \ \  \ \ \   /'__`\ /'_ `\/\`'__\/ __`\
      \ \ \/\ \ \_\ \_ \_\ \_/\  __//\ \L\ \ \ \//\ \L\ \
       \ \_\ \_\/\____\/\____\ \____\ \____ \ \_\\ \____/
	\/_/\/_/\/____/\/____/\/____/\/___L\ \/_/ \/___/
				       /\____/
				       \_/__/


   Notes on building the MingW32 version of Allegro.

   Written by: Henrik Stokseth.

   See readme.txt for a more general overview.



=======================================
============ Mingw32 notes ============
=======================================

   This is a full MingW32 port of Allegro. This build doesn't rely
   on the DLL files produced by MSVC but can make them itself.
   I'm proud to say Allegro can now make Win32 programs entirely using
   free professional tools. On that note I'd like to thank Peter for
   making this a reality and for finishing off what I started. Enjoy!

   The screensaver example is built but you must copy scrsave.scr to your
   windows directory if you want to test it.



===========================================
============ Required software ============
===========================================

   For the MingW32 part, you will need to obtain the following 
   distributions from the internet:

   1) The MingW32 compiler, documentation and utilities from
      http://www.mingw.org
      At the time of this writing (Aug. 2000) gcc-2.95.2 is out and one
      should get gcc-2.95.2-msvcrt.exe and mingw32-docs-html.exe.

   2) Get the latest runtime and update at least the headers.
      ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/mingw32/runtime/

   3) Get the DirectX 7 libraries for mingw32. Download them from
      http://sites.netscape.net/zaqhaq/directx.htm

   4) Get the DirectX 7 header files from Microsoft. You can find a minimal
      DirectX 7 SDK on the Allegro webpage.
      http://sunsite.auc.dk/allegro/wipdll/dx70_min.zip

   5) Create a directory for mingw32, for example c:\mingw32, and install
      all the packages to this directory. The Microsoft DirectX libraries
      should be installed to c:\mingw32\i386-mingw32msvc\lib and the headers to 
      c:\mingw32\i386-mingw32msvc\include.

   6) Add this directory (c:\mingw32\bin) to your path in AUTOEXEC.BAT.
      Also add this line to your AUTOEXEC.BAT:
      SET MINGDIR=c:\mingw32


   Now reboot your computer to activate the changes.
   Test the installation by typing: gcc -v.
   The answer should be simmilar to
   Reading specs from C:\MINGW32\BIN\..\lib\gcc-lib\i386-mingw32msvc\2.95.2\specs
   gcc version 2.95.2 19991024 (release)



============================================
============ Installing Allegro ============
============================================

   Step-by-step instructions on how to build the MingW32 version of Allegro.

   First configure Allegro by entering the following on the commandline:

   cd c:\allegro
   fixming

   The dynamically linked version of Allegro gets built by default but if
   you want to build the statically linked version of Allegro write the
   following on the command line:

   SET STATICLINK=1

   In the same manner we can also enter one of the following lines to
   build either the debug or the profiling version of the library:

   SET DEBUGMODE=1
   SET PROFILEMODE=1

   Note: If you have a more recent version of mingw32 than gcc 2.95.2
   you can define FASTDLL to speed up DLL building and save some space.
   
   SET FASTDLL=1

   Then we can start to actually make and install the Allegro library.

   make
   make install



=======================================
============ Using Allegro ============
=======================================

   All the Allegro functions, variables, and data structures are defined 
   in allegro.h. You should include this in your programs, and link with 
   either the optimised library liballeg.a, the debugging library 
   liballd.a, or the profiling library liballp.a. You should copy
   the Allegro DLLs to your Windows directory and also include them in
   software you release to the public.

   Don't forget that you need to use the END_OF_MAIN() macro right after 
   your main() function. Happy coding!
