radv: Add winsys functions for timeline syncobj.
[mesa.git] / docs / README.WIN32
index 8dc59b00fd493b8829cd3e448e191cfe14f58bb2..0f5010ce121c9f1a4e71a496f846b7123175fd00 100644 (file)
 File: docs/README.WIN32
 
-Last updated: Mar 31, 2006 - Karl Schultz - kschultz@users.sourceforge.net
+Last updated: 21 June 2013
+
 
 Quick Start
 ----- -----
 
-Unzip the MesaLib, MesaGLUT, and MesaDemos ZIP files into the same
-directory.  The libs and demos build separately, so if you do not care
-about the demos or GLUT, you only need to unzip MesaLib.  If you unzip
-more than one ZIP file, they all need to be unzipped into the same
-directory.  Don't worry, you will not overwrite anything.
+Windows drivers are build with SCons.  Makefiles or Visual Studio projects are
+no longer shipped or supported.
 
-The Windows build system uses Microsoft Visual Studio.  Project files
-for a specific version of Visual Studio are in their own directory in
-the top-level "windows" directory.  For example, Visual Studio 6 files
-are in windows/VC6.  If a directory does not exist for your version of
-Visual Studio, you can try importing the project files from an earlier
-version of Visual Studio.  At this time, project files exist for
-Version 6 and Version 7.  The code has been built with a beta version
-of Version 8 and it runs on 64-bit Windows.  If you want to try this,
-start by importing the VC7 files and create the 64-bit targets in the
-configuration manager.
+Run
 
-It is likely that the new and free Visual Studio Express can be used
-to build Mesa, but it hasn't been tried yet.  Start with the VC7
-project files.
+  scons libgl-gdi
 
-The project files to build the core Mesa library, Windows Mesa
-drivers, OSMesa, and GLU are in the mesa directory.  The project files
-to build GLUT and some demo programs are in the progs directory.
+to build gallium based GDI driver.
 
-Makefiles are no longer shipped or supported, but can be generated
-from the projects using Visual Studio.
+This will work both with MSVS or Mingw.
 
 
 Windows Drivers
 ------- -------
 
-At this time, only the GDI driver is known to work.  Most of the demos
-in progs/demos should work with this driver.
+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.
 
-The GDI driver operates basically by writing pixel spans into a DIB
-section and then blitting the DIB to the window.  The driver was
-recently cleaned up and rewitten and so may have bugs or may be
-missing some functionality.  The older versions of the CVS source may
-be useful in figuring out any problems, or report them to me.
-
-To build Mesa with the GDI driver, build the mesa, gdi, and glu
-projects in the Visual Studio workspace found at
-
-       windows/VC6/mesa/mesa.dsw
-or
-       windows/VC7/mesa/mesa.sln
-
-The osmesa DLL can also be built with the osmesa project.
-
-The build system creates a lib top-level directory and copies
-resulting LIB and DLL files to this lib directory.  The files are:
-
-       OPENGL32.LIB, GLU32.LIB, OSMESA32.LIB
-       OPENGL32.DLL, GLU32.DLL, OSMESA32.DLL
-
-If the MesaDemos ZIP file was extracted, the DLL files are also copied
-to the demos directory.  This facilitates running the demos as described
-below.
-
-
-GLUT and Demos
----- --- -----
-
-A Visual Studio workspace can be found at 
-
-       windows/VC6/progs/progs.dsw
-or
-       windows/VC7/progs/progs.sln
-
-It can be used to build GLUT and a few demos.  The GLUT lib and DLL
-are copied to the top-level lib directory, along with the Mesa libs.
-
-The demo build system expects to find the LIB files in the top level
-lib directory, so you must build the Mesa libs first.  The demo
-executables are placed in the demos directory, because some of them
-rely on data files found there.  Also, the Mesa lib DLL's were copied
-there by the Mesa lib build process.  Therefore, you should be able to
-simply run the demo executables from the demo directory.
+Recipe
+------
 
-If you want to run the demos from the Visual Studio, you may have to
-change the startup directory and explicitly state where the executables are.
-
-You may also build all the demo programs by using a makefile.  Go to
-the progs/demos directory and make sure you have executed VCVARS32.BAT
-or whatever setup script is appropriate for your compiler.  Then,
-
-       nmake -f Makefile.win
-
-should build all the demos.
-
-
-Build System Notes
------ ------ -----
-
-VC6
----
-
-Visual Studio 6 does not recognize files with the .cc extension as C++
-language files, without a lot of unnatural tweaking.  So, the VC6
-build process uses custom build steps to compile these files in the
-GLU library.
-
-Two additional configurations are provided, Debug x86 and Release x86
-that activate the shader code compilation by defining SLANG_86.  It is
-unknown if and how this works.
-
-VC7
----
-
-The above-mentioned .cc problem does not exist in this version.
+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
 -------
@@ -139,17 +60,5 @@ 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.
 
-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
+If you have a Windows-related build problem or question, please post
+to the mesa-dev or mesa-users list.