Karl Schultz | b5bfe2f | 2001-10-15 20:38:12 +0000 | [diff] [blame] | 1 | File: docs/README.WIN32 |
| 2 | |
Karl Schultz | 8ff2715 | 2001-11-29 16:55:37 +0000 | [diff] [blame] | 3 | Last updated: Nov 29, 2001 - Karl Schultz - kschultz@users.sourceforge.net |
Karl Schultz | b5bfe2f | 2001-10-15 20:38:12 +0000 | [diff] [blame] | 4 | |
| 5 | Quick Start |
| 6 | |
| 7 | If you have Microsoft Visual C++ 6.0 installed, simply go to the top directory |
| 8 | of the Mesa distribution and type 'nmake -f Makefile.win NODEBUG=1' for |
| 9 | an optimized build. |
| 10 | |
| 11 | Details and Notes |
| 12 | |
| 13 | - Building Mesa as noted above should visit and build the following: |
| 14 | src MesaGL.dll, MesaGL.lib, osmesa.dll, osmesa.lib |
| 15 | si-glu MesaGLU.dll, MesaGLU.lib |
| 16 | src-glut glut32.dll, glut32.lib |
| 17 | demos a handful of demo executables. |
| 18 | |
| 19 | - After building, you can copy the above DLL files to a place in your PATH |
| 20 | or to the demos directory if you just want to give the demos a try. |
| 21 | The DLL and LIB files are copied to the ./lib directory. The makefile |
| 22 | creates this directory if it does not already exist. |
| 23 | |
| 24 | - The make targets 'clean' and 'clobber' will remove objects and libraries. |
| 25 | But the files in ./lib are never cleaned. |
| 26 | |
| 27 | - The make target 'install' will take its best shot at copying DLL files, |
| 28 | LIB files, and headers to the right places. I strongly suggest that |
| 29 | you examine the makefiles to make sure that 'install' doesn't do anything |
| 30 | that you can't live with. |
| 31 | |
| 32 | - The makefiles are designed to work with Microsoft's NMAKE, and do, |
| 33 | unfortunately, have some Microsoft-specific things in them. If you |
| 34 | would like to use gcc or some other build tools like the Cygnus tools, |
| 35 | then you will have to hack the makefiles to make them work with your |
| 36 | tools. I'm sorry about this; I wasn't motivated to make this any |
| 37 | different, but if you end up modifying the makefiles for your tools, |
| 38 | you can send me the changes and I can apply the changes to the |
| 39 | source tree. |
| 40 | |
| 41 | - There are no Microsoft Visual Studio project files. However, these |
| 42 | should be very easy to create. One can use the compiler and linker |
| 43 | options found in the makefiles to make quick progress in creating |
| 44 | projects. |
| 45 | |
| 46 | - The DLL files are built so that the external entry points use the |
| 47 | stdcall calling convention. |
| 48 | |
| 49 | - Static LIB files are not built. The LIB files that are built with |
| 50 | the current makefiles are the linker import files associated with |
| 51 | the DLL files. If static LIB's are desired, it should not be too |
| 52 | difficult to modify the makefiles to generate them. |
| 53 | |
| 54 | - The si-glu sources are used to build the GLU libs. This was done |
Karl Schultz | 8ff2715 | 2001-11-29 16:55:37 +0000 | [diff] [blame] | 55 | mainly to get the better tessellator code. |
Karl Schultz | b5bfe2f | 2001-10-15 20:38:12 +0000 | [diff] [blame] | 56 | |
| 57 | - The osmesa driver builds and should work on Windows as well as |
| 58 | any other platform. |
| 59 | |
| 60 | - The Windows driver (in src/Windows) builds and runs at least at |
| 61 | a minimal level. I modified this driver to work with the new |
| 62 | Mesa 4.0 code and driver architecture, but I did not do a great |
| 63 | deal of optimization and testing. There are many opportunities |
| 64 | for optimization, many of which can be done by coding more specific |
| 65 | paths for the rasterizers. See src/osmesa/osmesa.c for some good |
| 66 | examples. |
| 67 | |
Karl Schultz | acf0c0a | 2001-11-01 22:44:47 +0000 | [diff] [blame] | 68 | - There is DirectDraw support in the Windows driver, updated by |
| 69 | Daniel Slater. You'll need to uncomment the #define DDRAW line |
| 70 | in src/Windows/wmesadef.h and add ddraw.lib to the list of libraries |
| 71 | in src/Makefile.win. On some systems, you will acheive significantly |
| 72 | higher framerates with DirectDraw. |
Karl Schultz | b5bfe2f | 2001-10-15 20:38:12 +0000 | [diff] [blame] | 73 | |
| 74 | - Some of the more specialized code like FX drivers, stereo, and |
| 75 | parallel support isn't compiled or tested. I left much of this |
| 76 | code alone, but it may need some work to get it 'turned on' again. |
| 77 | |
| 78 | - No assembly code is compiled or assembled. Again, this may need |
| 79 | some work to turn it back on or use it again. |
| 80 | |
| 81 | If you have a Windows-related build problem or question, it is |
| 82 | probably better to direct it to me (kschultz@users.sourceforge.net), |
| 83 | rather than directly to the other Mesa developers. I will help you |
| 84 | as much as I can. I also monitor the Mesa mailing lists and will |
| 85 | answer questions in this area there as well. |
| 86 | |
| 87 | |
| 88 | Karl Schultz |