blob: fe9a67f6cdb8a1832a75bf0cd1ea62827716d717 [file] [log] [blame]
Karl Schultzb5bfe2f2001-10-15 20:38:12 +00001File: docs/README.WIN32
2
Karl Schultze4b40a72003-09-18 19:10:53 +00003Last updated: Sep 18, 2003 - Karl Schultz - kschultz@users.sourceforge.net
Karl Schultzb5bfe2f2001-10-15 20:38:12 +00004
5Quick Start
6
Karl Schultzaf76b422002-11-08 18:00:04 +00007Unzip both ZIP files (MesaLib and MesaDemos) into the same directory.
Karl Schultze4b40a72003-09-18 19:10:53 +00008The libs and demos build separately, so if you do not care about the
9demos, you do not have to unzip that zip file. But if you do, it does
10need to be unzipped into the same directory as the lib zip file because
11the demos depend on the libs.
Karl Schultzaf76b422002-11-08 18:00:04 +000012
Karl Schultze4b40a72003-09-18 19:10:53 +000013The build system has been changed to use Microsoft Visual Studio project
14workspaces and projects. Makefiles are no longer shipped or supported, but
15can be generated from the projects using Visual Studio.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000016
17Details and Notes
18
Karl Schultze4b40a72003-09-18 19:10:53 +000019- To build the Mesa libraries, open the Mesa.dsw workspace file
20 in the top directory. You can build each project one-by-one,
21 or build the glut project to build everything except osmesa,
22 which needs to be built separately. The build process will
23 create a lib directory in the top directory and will put the
24 following files there:
25 OPENGL32.LIB, GLU32.LIB, GLUT32.LIB, OSMESA32.LIB
26 OPENGL32.DLL, GLU32.DLL, GLUT32.DLL, OSMESA32.DLL
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000027
28- After building, you can copy the above DLL files to a place in your PATH
Karl Schultz10730662002-08-15 15:13:31 +000029 such as $SystemRoot/SYSTEM32. If you don't like putting things in a
30 system directory, place them in the same directory as the executable(s).
Karl Schultze4b40a72003-09-18 19:10:53 +000031 Be careful about accidentially overwriting files of the same name in
32 the SYSTEM32 directory.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000033
Karl Schultze4b40a72003-09-18 19:10:53 +000034- Build the demos by opening the appropriate *.dsw file in the
35 progs directory tree. For example, to build the demos, use
36 progs/demos/Windows/demos.dsw. The Windows directory contains
37 the workspace and all the projects for each demo program. Each
38 project places the executable in the same directory as its source
39 code, which is required for some demos.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000040
Karl Schultze4b40a72003-09-18 19:10:53 +000041- The demo projects also copy the Mesa library DLL files from the lib
42 directory into the same directory as the demo executables, so that
43 the demos use the Mesa libs you just built.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000044
45- The DLL files are built so that the external entry points use the
46 stdcall calling convention.
47
48- Static LIB files are not built. The LIB files that are built with
Karl Schultze4b40a72003-09-18 19:10:53 +000049 are the linker import files associated with the DLL files.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000050
51- The si-glu sources are used to build the GLU libs. This was done
Karl Schultz8ff27152001-11-29 16:55:37 +000052 mainly to get the better tessellator code.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000053
54- The osmesa driver builds and should work on Windows as well as
55 any other platform.
56
57- The Windows driver (in src/Windows) builds and runs at least at
58 a minimal level. I modified this driver to work with the new
59 Mesa 4.0 code and driver architecture, but I did not do a great
60 deal of optimization and testing. There are many opportunities
61 for optimization, many of which can be done by coding more specific
62 paths for the rasterizers. See src/osmesa/osmesa.c for some good
63 examples.
64
Karl Schultzacf0c0a2001-11-01 22:44:47 +000065- There is DirectDraw support in the Windows driver, updated by
66 Daniel Slater. You'll need to uncomment the #define DDRAW line
Karl Schultze4b40a72003-09-18 19:10:53 +000067 in src/Windows/wmesadef.h and add ddraw.lib to the list of libraries.
68 On some systems, you will acheive significantly higher framerates
69 with DirectDraw.
Karl Schultzb5bfe2f2001-10-15 20:38:12 +000070
71- Some of the more specialized code like FX drivers, stereo, and
72 parallel support isn't compiled or tested. I left much of this
73 code alone, but it may need some work to get it 'turned on' again.
74
75- No assembly code is compiled or assembled. Again, this may need
76 some work to turn it back on or use it again.
77
78If you have a Windows-related build problem or question, it is
79probably better to direct it to me (kschultz@users.sourceforge.net),
80rather than directly to the other Mesa developers. I will help you
81as much as I can. I also monitor the Mesa mailing lists and will
82answer questions in this area there as well.
83
84
85Karl Schultz