mirror of https://gitlab.freedesktop.org/mesa/mesa
99 lines
4.3 KiB
Plaintext
99 lines
4.3 KiB
Plaintext
File: docs/README.WIN32
|
|
|
|
Last updated: Nov 08, 2002 - Karl Schultz - kschultz@users.sourceforge.net
|
|
|
|
Quick Start
|
|
|
|
Unzip both ZIP files (MesaLib and MesaDemos) into the same directory.
|
|
This is important because the current makefiles in MesaLib assume that
|
|
the directories in MesaDemos are present.
|
|
|
|
If you have Microsoft Visual C++ 6.0 installed, simply go to the top directory
|
|
of the Mesa distribution and type 'nmake -f Makefile.win NODEBUG=1' for
|
|
an optimized build. Note that you may have to run ...VC98/BIN/VCVARS32.BAT
|
|
to set up the appropriate compiler environment variables.
|
|
|
|
Details and Notes
|
|
|
|
- Building Mesa as noted above should visit and build the following:
|
|
src MesaGL.dll, MesaGL.lib, osmesa.dll, osmesa.lib
|
|
si-glu MesaGLU.dll, MesaGLU.lib
|
|
src-glut glut32.dll, glut32.lib
|
|
demos a handful of demo executables.
|
|
book more examples
|
|
samples more examples
|
|
|
|
- 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).
|
|
For example, you can copy the DLL files to the demos directory if you
|
|
just want to run the demos. The build process places the DLL and LIB files
|
|
in the ./lib directory. The makefile creates this directory if it does
|
|
not already exist.
|
|
|
|
- The make targets 'clean' and 'clobber' will remove objects and libraries.
|
|
But the files in ./lib are never cleaned.
|
|
|
|
- The make target 'install' will take its best shot at copying DLL files,
|
|
LIB files, and headers to the right places. I strongly suggest that
|
|
you examine the makefiles to make sure that 'install' doesn't do anything
|
|
that you can't live with.
|
|
|
|
- The makefiles are designed to work with Microsoft's NMAKE, and do,
|
|
unfortunately, have some Microsoft-specific things in them. If you
|
|
would like to use gcc or some other build tools like the Cygnus tools,
|
|
then you will have to hack the makefiles to make them work with your
|
|
tools. I'm sorry about this; I wasn't motivated to make this any
|
|
different, but if you end up modifying the makefiles for your tools,
|
|
you can send me the changes and I can apply the changes to the
|
|
source tree.
|
|
|
|
- There are no Microsoft Visual Studio project files. However, these
|
|
should be very easy to create. One can use the compiler and linker
|
|
options found in the makefiles to make quick progress in creating
|
|
projects.
|
|
|
|
- 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
|
|
the current makefiles are the linker import files associated with
|
|
the DLL files. If static LIB's are desired, it should not be too
|
|
difficult to modify the makefiles to generate them.
|
|
|
|
- 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
|
|
in src/Makefile.win. 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.
|
|
|
|
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
|