radv: Add winsys functions for timeline syncobj.
[mesa.git] / docs / README.WIN32
index 675a3b36451c16ac8aa8fadd7ef3c655cf8ecdf9..0f5010ce121c9f1a4e71a496f846b7123175fd00 100644 (file)
 File: docs/README.WIN32
 
-Last updated: Jul 01, 2005 - Karl Schultz - kschultz@users.sourceforge.net
+Last updated: 21 June 2013
+
 
 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.
+Windows drivers are build with SCons.  Makefiles or Visual Studio projects are
+no longer shipped or supported.
+
+Run
 
-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.
+  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, as it has been
-ported and rewritten to the latest Mesa DD interfaces.  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 
+At this time, only the gallium GDI driver is known to work.
 
-       windows/VC6/progs/progs.dsw
-or
-       windows/VC7/progs/progs.sln
+Source code also exists in the tree for other drivers in
+src/mesa/drivers/windows, but the status of this code is unknown.
 
-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.
+Recipe
+------
 
-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.
-
-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.
-
-
-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.
-
-
-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
 -------
@@ -123,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.