Brian Paul | ecc88c1 | 1999-02-23 03:41:13 +0000 | [diff] [blame^] | 1 | August 30, 1998 -- Paul Garceau (pgarceau@teleport.com)
|
| 2 |
|
| 3 | DISCLAIMER: I make this extension to the Mesa 3-D Graphics Library as a service
|
| 4 | to the general public. I can, in no way support or make any guarantee that the
|
| 5 | EGCS-Mingw32 build or any Gnu-Win32 build will work for your system. The
|
| 6 | associated packages and batch files I have included as part of the EGCS-Mingw32
|
| 7 | extension are provided "As-is" with out any guarantee of support or functionality
|
| 8 | from the author of this EGCS-Mingw32 native windows port of the Mesa 3-D Graphics
|
| 9 | Library.
|
| 10 |
|
| 11 | Feel free to modify or change things as you see fit, just remember that
|
| 12 | I can't support any modifications you might want to make to the files which I
|
| 13 | have included OR the lgpl protected Mesa 3-D Graphics Library.
|
| 14 |
|
| 15 |
|
| 16 | EGCS-Mingw32 Beta 3.08 Archive Manifest:
|
| 17 | mingw32.bat
|
| 18 | src/makefile.nt4
|
| 19 | src/wmesa.c
|
| 20 | src-glu/makefile.nt4
|
| 21 |
|
| 22 | ###############
|
| 23 |
|
| 24 | Greetings,
|
| 25 |
|
| 26 | In order to build the Mingw32 set of Mesa 3-D Graphics Library for Beta3.08
|
| 27 | it will be necessary for you to use the Dos or Command Prompt that is available
|
| 28 | on most of the i86 based MS Windows machines. Also, I believe that this build
|
| 29 | will run on Win95, Win98, WinNT4 and WinNT5.
|
| 30 |
|
| 31 | I haven't tested Win95/98 or WinNT5. This build was generated under
|
| 32 | WinNT4 with SP3 installed.
|
| 33 |
|
| 34 | This has not been tested under any systems outside of
|
| 35 | a WinNT4 Workstation with EGCS-Mingw32 toolchain, v.1.0.2 installed.
|
| 36 |
|
| 37 | EGCS-Mingw32 uses a variation of gcc to handle its build. The Mesa 3-D
|
| 38 | Graphics Library build that I have generated is based, in small part, on the
|
| 39 | Cygwin32 build and associated makefiles that Stephane Rehel (rehel@worldnet.fr)
|
| 40 | defined back in 1997. The EGCS-Mingw32 toolchain is capable of generating
|
| 41 | native windows code and, as of the date of this readme, can be obtained from:
|
| 42 |
|
| 43 | http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs-mingw32-102.html
|
| 44 |
|
| 45 | Much thanks to the combined efforts of Mumit Khan, Jan-Jaap Vanderhagen
|
| 46 | and Colin Peters for making it possible for the EGCS-Mingw32 toolchain to exist.
|
| 47 |
|
| 48 | Installing EGCS-Mingw32 Build Revisions:
|
| 49 |
|
| 50 | To install the makefile and source revisions incorporated with this build
|
| 51 | of the Mesa 3-D Graphics Library, you'll have to use a version of winzip. I am
|
| 52 | in the process of finding a suitable Win32 compatible tar executable so that if
|
| 53 | you don't have winzip, you can still decompress the files into their respective
|
| 54 | folders/directories.
|
| 55 |
|
| 56 | a) Move the mingw32.zip file to the top level of the hard drive on your
|
| 57 | system.
|
| 58 |
|
| 59 | b) Copy all of the Beta 3.08 src/windows files to the src/ directory.
|
| 60 |
|
| 61 | b) Open the Winzip file
|
| 62 |
|
| 63 | c) Verify that the files will be properly extracted.
|
| 64 |
|
| 65 | d) Extract the files with the Winzip "Overwrite" and "Use Folder Names"
|
| 66 | options enabled.
|
| 67 |
|
| 68 | The zip file directory structure extraction defaults to the top level of
|
| 69 | the hard drive where the mingw32.zip file exists unless otherwise instructed by
|
| 70 | you.
|
| 71 |
|
| 72 | The version of wmesa.c included with the mingw32 archive needs to replace
|
| 73 | the current version of the Beta 3.08 wmesa.c file in order for the egcs-mingw32
|
| 74 | build to work. This is because the original Win32 stuff assumes that the glut
|
| 75 | utilities are to be installed. The Glut utilities are not part of the
|
| 76 | egcs-mingw32 build for Beta 3.08.
|
| 77 |
|
| 78 |
|
| 79 | Build Considerations:
|
| 80 |
|
| 81 | In order to get the build to work, I needed to create a special makefile
|
| 82 | for each library which the Mesa 3-D Graphics Library requires since there is no
|
| 83 | comparable make-config/config on a native windows platform.
|
| 84 |
|
| 85 | Since I was only creating a few of the possible libraries for
|
| 86 | Mesa (gl, glu), I only created the new make files in their respective libraries
|
| 87 | src, src-glu). For libMesaaux.a. you will find a makefile for it in the
|
| 88 | src-aux directory. libMesatk.a and libglut.a were not ported.
|
| 89 |
|
| 90 | The build itself is a .bat based build and uses Gnu Make,Version 3.76.1 to
|
| 91 | process the makefiles noted above. The build must be run from the directory
|
| 92 | where the mingw32.bat file is. You can get the binary version of Make 3.76.1
|
| 93 | from Jan-Jaap van der Heijden's site in Germany:
|
| 94 |
|
| 95 | http://agnes.dida.physik.uni-essen.de/~janjaap/mingw32/download.html
|
| 96 |
|
| 97 | It was necessary to modify some source code, specifically the source code
|
| 98 | in the src-glu directory. I needed to modify nurbs.c, quadric.c and tess.c in
|
| 99 | order to get them to work using the EGCS-Mingw32 toolchain.
|
| 100 |
|
| 101 | The original EGCS-Mingw32 Toolchain, is available from:
|
| 102 |
|
| 103 | http://www.xraylith.wisc.edu/~khan/software/gnu-win32/egcs-mingw32-102.html
|
| 104 |
|
| 105 | Running the Build:
|
| 106 |
|
| 107 | Ok, now that we've got the basics out of the way, follows is all you need
|
| 108 | to do in order to build the EGCS-Mingw32 version of libMesaGL.a and libMesaGLU.a:
|
| 109 |
|
| 110 | Open your Command Prompt/Dos prompt.
|
| 111 | Go to your Mesa-3.0 beta 'root' directory.
|
| 112 | This is the same directory that the Mesa mingw32.zip file was
|
| 113 | originally stored in if you've installed the Mesa-3.0 beta 3-D
|
| 114 | Graphics Library source as outlined in the "readme" file included
|
| 115 | with the Mesa-3.0 beta distribution.
|
| 116 | At the command line type: mingw32
|
| 117 | mingw32 is the .bat file that actually does the build.
|
| 118 |
|
| 119 | Enjoy!
|
| 120 |
|
| 121 | Peace,
|
| 122 |
|
| 123 | Paul G. (pgarceau@teleport.com) |