X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=docs%2FREADME.WIN32;h=0f5010ce121c9f1a4e71a496f846b7123175fd00;hb=55d8022878fd11093c861a6386734f88454f21b1;hp=d98cdd2ebc68d68d3a9ada55bd88864d5b5aa40e;hpb=8ff271548a4813200e0e1f4745bda31efda796ed;p=mesa.git diff --git a/docs/README.WIN32 b/docs/README.WIN32 index d98cdd2ebc6..0f5010ce121 100644 --- a/docs/README.WIN32 +++ b/docs/README.WIN32 @@ -1,88 +1,64 @@ File: docs/README.WIN32 -Last updated: Nov 29, 2001 - Karl Schultz - kschultz@users.sourceforge.net +Last updated: 21 June 2013 + Quick Start +----- ----- + +Windows drivers are build with SCons. Makefiles or Visual Studio projects are +no longer shipped or supported. + +Run + + scons libgl-gdi + +to build gallium based GDI driver. + +This will work both with MSVS or Mingw. + + +Windows Drivers +------- ------- + +At this time, only the gallium GDI driver is known to work. + +Source code also exists in the tree for other drivers in +src/mesa/drivers/windows, but the status of this code is unknown. + +Recipe +------ + +Building on windows requires several open-source packages. These are +steps that work as of this writing. + +- install python 2.7 +- install scons (latest) +- install mingw, flex, and bison +- install pywin32 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs + get pywin32-218.4.win-amd64-py2.7.exe +- install git +- download mesa from git + see https://www.mesa3d.org/repository.html +- run scons + +General +------- + +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. + +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. -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. - -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. - -- After building, you can copy the above DLL files to a place in your PATH - or to the demos directory if you just want to give the demos a try. - The DLL and LIB files are copied to 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 +If you have a Windows-related build problem or question, please post +to the mesa-dev or mesa-users list.