92 lines
4.0 KiB
Plaintext
92 lines
4.0 KiB
Plaintext
File: docs/README.WIN32
|
|
|
|
Last updated: Sep 18, 2003 - Karl Schultz - kschultz@users.sourceforge.net
|
|
|
|
Quick Start
|
|
|
|
Unzip both ZIP files (MesaLib and MesaDemos) into the same directory.
|
|
The libs and demos build separately, so if you do not care about the
|
|
demos, you do not have to unzip that zip file. But if you do, it does
|
|
need to be unzipped into the same directory as the lib zip file because
|
|
the demos depend on the libs.
|
|
|
|
The build system has been changed to use Microsoft Visual Studio project
|
|
workspaces and projects. Makefiles are no longer shipped or supported, but
|
|
can be generated from the projects using Visual Studio.
|
|
|
|
Details and Notes
|
|
|
|
- To build the Mesa libraries, open the Mesa.dsw workspace file
|
|
in the top directory. You can build each project one-by-one,
|
|
or build the glut project to build everything except osmesa,
|
|
which needs to be built separately. The build process will
|
|
create a lib directory in the top directory and will put the
|
|
following files there:
|
|
OPENGL32.LIB, GLU32.LIB, GLUT32.LIB, OSMESA32.LIB
|
|
OPENGL32.DLL, GLU32.DLL, GLUT32.DLL, OSMESA32.DLL
|
|
|
|
- After building, you can copy the above DLL files to a place in your PATH
|
|
such as $SystemRoot/SYSTEM32. If you don't like putting things in a
|
|
system directory, place them in the same directory as the executable(s).
|
|
Be careful about accidentially overwriting files of the same name in
|
|
the SYSTEM32 directory.
|
|
|
|
- Build the demos by opening the appropriate *.dsw file in the
|
|
progs directory tree. For example, to build the demos, use
|
|
progs/demos/Windows/demos.dsw. The Windows directory contains
|
|
the workspace and all the projects for each demo program. Each
|
|
project places the executable in the same directory as its source
|
|
code, which is required for some demos.
|
|
|
|
- The demo projects also copy the Mesa library DLL files from the lib
|
|
directory into the same directory as the demo executables, so that
|
|
the demos use the Mesa libs you just built.
|
|
|
|
- The DLL files are built so that the external entry points use the
|
|
stdcall calling convention.
|
|
|
|
- Static LIB files are not built. The LIB files that are built with
|
|
are the linker import files associated with the DLL files.
|
|
|
|
- The si-glu sources are used to build the GLU libs. This was done
|
|
mainly to get the better tessellator code.
|
|
|
|
- The osmesa driver builds and should work on Windows as well as
|
|
any other platform.
|
|
|
|
- The Windows driver (in src/Windows) builds and runs at least at
|
|
a minimal level. I modified this driver to work with the new
|
|
Mesa 4.0 code and driver architecture, but I did not do a great
|
|
deal of optimization and testing. There are many opportunities
|
|
for optimization, many of which can be done by coding more specific
|
|
paths for the rasterizers. See src/osmesa/osmesa.c for some good
|
|
examples.
|
|
|
|
- There is DirectDraw support in the Windows driver, updated by
|
|
Daniel Slater. You'll need to uncomment the #define DDRAW line
|
|
in src/Windows/wmesadef.h and add ddraw.lib to the list of libraries.
|
|
On some systems, you will acheive significantly higher framerates
|
|
with DirectDraw.
|
|
|
|
- Some of the more specialized code like FX drivers, stereo, and
|
|
parallel support isn't compiled or tested. I left much of this
|
|
code alone, but it may need some work to get it 'turned on' again.
|
|
|
|
- No assembly code is compiled or assembled. Again, this may need
|
|
some work to turn it back on or use it again.
|
|
|
|
- To build "mangled" Mesa, add the preprocessor define USE_MGL_NAMESPACE
|
|
to the project settings. You will also need to edit src/mesa.def to change
|
|
all the gl* symbols to mgl*. Because this is easy to do with a global
|
|
replace operation in a text editor, no additional mangled version of mesa.def
|
|
is maintained or shipped.
|
|
|
|
If you have a Windows-related build problem or question, it is
|
|
probably better to direct it to me (kschultz@users.sourceforge.net),
|
|
rather than directly to the other Mesa developers. I will help you
|
|
as much as I can. I also monitor the Mesa mailing lists and will
|
|
answer questions in this area there as well.
|
|
|
|
|
|
Karl Schultz
|