mesa/docs
Neil Roberts 551d459af4 Add the EGL_MESA_configless_context extension
This extension provides a way for an application to render to multiple
surfaces with different buffer formats without having to use multiple
contexts. An EGLContext can be created without an EGLConfig by passing
EGL_NO_CONFIG_MESA. In that case there are no restrictions on the surfaces
that can be used with the context apart from that they must be using the same
EGLDisplay.

_mesa_initialze_context can now take a NULL gl_config which will mark the
context as ‘configless’. It will memset the visual to zero in that case.
Previously the i965 and i915 drivers were explicitly creating a zeroed visual
whenever 0 is passed for the EGLConfig. Mesa needs to be aware that the
context is configless because it affects the initial value to use for
glDrawBuffer. The first time the context is bound it will set the initial
value for configless contexts depending on whether the framebuffer used is
double-buffered.

Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
2014-03-12 14:40:47 -07:00
..
relnotes docs: Import 10.0.4 release notes, add news item. 2014-03-12 10:22:22 -07:00
specs Add the EGL_MESA_configless_context extension 2014-03-12 14:40:47 -07:00
ARB_color_buffer_float.txt mesa: implement clamping controls (ARB_color_buffer_float) 2011-03-29 12:04:55 +02:00
COPYING
GL3.txt nv50,nvc0: add 11f_11f_10f vertex support 2014-03-04 21:54:54 -05:00
README.UVD radeon: update legal notes on UVD 2014-02-06 16:15:58 +01:00
README.VCE radeon/winsys: add VCE support v4 2014-02-13 11:11:24 +01:00
README.WIN32 docs: updated instructions for Mesa on Windows 2013-06-27 09:49:41 -06:00
VERSIONS
application-issues.html docs: add a new page documenting known application issues 2013-04-01 08:40:35 -06:00
autoconf.html docs: Clean up autoconf.html. 2013-09-10 16:59:35 -07:00
bugs.html docs: remove obsolete target attribute 2012-09-19 17:15:48 +02:00
conform.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
contents.html docs: add a new page documenting known application issues 2013-04-01 08:40:35 -06:00
debugging.html docs: add new iframe layout 2012-09-19 17:15:47 +02:00
developers.html docs: remove obsolete target attribute 2012-09-19 17:15:48 +02:00
devinfo.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
dispatch.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
download.html docs: remove obsolete target attribute 2012-09-19 17:15:48 +02:00
egl.html egl/glx: Remove egl_glx driver 2014-02-05 18:19:26 -08:00
envvars.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
extensions.html mesa: Remove GL_MESA_resize_buffers 2013-06-28 13:35:21 -07:00
faq.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
gears.png docs: improve quality of gears.png 2012-09-20 20:00:36 +02:00
helpwanted.html docs/helpwanted: cleanup todo list links 2012-10-02 15:44:34 +02:00
index.html docs: Import 10.0.4 release notes, add news item. 2014-03-12 10:22:22 -07:00
install.html docs: remove obsolete r300c traces 2012-09-19 18:23:45 +02:00
intro.html docs: remove obsolete target attribute 2012-09-19 17:15:48 +02:00
libGL.txt dri: Remove all DRI1 drivers 2011-08-26 23:31:22 -07:00
license.html c11: Update docs/license.html and include verbatim copy of Boost license. 2014-01-23 12:55:55 +00:00
lists.html docs: add IRC info 2012-09-20 20:00:36 +02:00
llvmpipe.html docs/llvmpipe: Add one other good reference. 2013-11-25 08:28:23 +00:00
mangling.html docs: add new iframe layout 2012-09-19 17:15:47 +02:00
mesa.css docs: add new iframe layout 2012-09-19 17:15:47 +02:00
opengles.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
openvg.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
osmesa.html docs: rewrite the OSMesa info / instructions 2013-03-12 19:04:43 -06:00
patents.txt docs: Reapply some of Marek's typo fixes. 2011-04-16 11:15:29 +01:00
perf.html docs: add new iframe layout 2012-09-19 17:15:47 +02:00
postprocess.html docs: add new iframe layout 2012-09-19 17:15:47 +02:00
precompiled.html docs: add new iframe layout 2012-09-19 17:15:47 +02:00
relnotes.html docs: Import 10.0.4 release notes, add news item. 2014-03-12 10:22:22 -07:00
repository.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
shading.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
sourcedocs.html docs: replace CVS with git 2013-02-11 10:58:33 +01:00
sourcetree.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
systems.html docs: mention some other supported APIs 2013-02-11 10:58:33 +01:00
thanks.html docs: fix misspellings 2014-01-06 09:55:38 -07:00
utilities.html docs: remove obsolete target attribute 2012-09-19 17:15:48 +02:00
versions.html docs: restructure release notes into separate folder 2013-04-17 08:48:14 -06:00
viewperf.html docs: document issue with Viewperf proe-05 test 6 2013-04-23 21:09:17 -06:00
vmware-guest.html docs: minor updates to VMware SVGA3D driver page 2014-01-09 11:35:50 -07:00
webmaster.html docs: add new iframe layout 2012-09-19 17:15:47 +02:00
xlibdriver.html docs: fix misspellings 2014-01-06 09:55:38 -07:00

README.WIN32

File: docs/README.WIN32

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 osmesa mesagdi

to build classic mesa Windows GDI drivers; or

  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.

1) install python 2.7
2) install scons (latest)
3) install mingw, flex, and bison
4) install libxml2 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
  get libxml2-python-2.9.1.win-amd64-py2.7.exe
5) install pywin32 from here: http://www.lfd.uci.edu/~gohlke/pythonlibs
  get pywin32-218.4.win-amd64-py2.7.exe
6) install git
7) download mesa from git
  see http://www.mesa3d.org/repository.html
8) 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 a Windows-related build problem or question, please post
to the mesa-dev or mesa-users list.