Name: mesa
Version: 7.9
URL: http://www.mesa3d.org/
License: MIT and LGPL v2
Security Critical: Yes

Description:
This directory contains a copy of these MesaLib components:

Main Mesa code    src/mesa/
Device drivers    src/mesa/drivers/*
Ext headers       include/GL/glext.h
                  include/GL/glxext.h
SGI GLU library   src/glu/sgi/

The license file in this directory is derived from MesaLib/docs/license.html
and MesaLib/docs/COPYING.

Modifications made with initial commit:
- Converted to utf-8 with: vim +"argdo write ++enc=utf-8" *.c

- Added the file README.chromium (this file)

Later modifications (see chromium.patch):
- Added OSMesaGetProcAddress to MesaLib/src/mesa/drivers/osmesa/osmesa.def

- Added #pragma optimize('', off) to:
  - MesaLib\src\mesa\main\histogram.c
  - MesaLib\src\mesa\main\image.c
  - MesaLib\src\mesa\main\mipmap.c
  - MesaLib\src\mesa\math\m_eval.c
  - MesaLib\src\mesa\swrast\s_texcombine.c

- Deleted MesaLib/include/EGL/ - it was conflicting with angle
  - Also deleted MesaLib/include/GLES2/ and MesaLib/include/KHR/ for
    similar reasons
  - Deleted MesaLib/include/GLES/ and MesaLib/include/VG/ because they
    were unneeded

- Changed these typedefs in glext.h to be the same as khrplatform.h
    typedef signed long int GLintptr;
    typedef signed long int GLsizeiptr;
    typedef signed long int GLintptrARB;
    typedef signed long int GLsizeiptrARB;

- Commented out this in gl.h:
#if (defined(__BEOS__) && defined(__POWERPC__)) || defined(__QUICKDRAW__)
#  define PRAGMA_EXPORT_SUPPORTED		1
#endif

- Commented out this in osmesa.h:
#if defined(__BEOS__) || defined(__QUICKDRAW__)
#pragma export on
#endif

- Commented out this in gl.h:
#    define GLAPI __declspec(dllimport)

- Added src/glsl/safe_strcmp.[ch] to handle NULL pointers portably.
  Changed several files in src/glsl/ to use this new entry point.

- Added src/mesa/drivers/osmesa/empty.cpp to fix linkage of osmesa.so
  on Mac OS X.

- Changed glcpp-parse.[cy], glcpp.h, ir_function_inlining.cpp, and
  ir_validate.cpp to avoid including inttypes.h on Windows.

- Changed glapi_nop.c to generate custom OpenGL entry points rather
  than simply installing NoOpGeneric, because with __stdcall calling
  convention it is illegal to have a mismatch in the number of
  arguments passed from caller to callee.

- Guarded #define PUBLIC in compiler.h to avoid warnings about macro
  redefinitions.

- Changed querymatrix.c to understand availability of fpclassify on
  Linux.

- Guarded all usage of EGL_Y_INVERTED_NOK with EGL_NOK_texture_from_pixmap
  so that it can be compiled against standard EGL 1.4 headers.

- Initialized uninitialized mask variable in eglconfig.c line 245.

- Fixed compiler warning about cast to pointer from integer of different size
  in eglapi.c line 276. Replaced void* with EGLNativeDisplayType.

- Suppressed spurious compiler warning from gcc in eglCompareConfig by
  reorganizing the .h a little

- Corrected the comparison in src/mesa/main/teximage.c line 2801 to check
  if width > 0 && height > 0 && depth > 0, instead of checking
  width > 0 && height > 0 && height > 0 . See
  https://bugs.freedesktop.org/show_bug.cgi?id=37648

- Suppressed (accurate) compiler warnings about return type conflicts
  from gl_apinop.c.
  http://code.google.com/p/chromium/issues/detail?id=92568
  https://bugs.freedesktop.org/show_bug.cgi?id=40028

- Merged fix for https://bugs.freedesktop.org/show_bug.cgi?id=51574
  (commit b1802a2115323233352da558430e109ff187b8af)

- Merged the replacement of memcpy() with memmove() in SHIFT_ARRAY declared in
  s_span.c (commit a44d715d2b19dc2f8f48b01144cc38e4e2c5015a)

- Suppressed the OOB read reported by AddressSanitizer in swizzle_for_size from
  ir_to_mesa.cpp
  https://code.google.com/p/chromium/issues/detail?id=139772
  https://bugs.freedesktop.org/show_bug.cgi?id=52996
  https://codereview.chromium.org/11549005/

- Suppressed the OOB read reported by AddressSanitizer in _mesa_add_parameter
  from prog_parameter.c
  http://code.google.com/p/chromium/issues/detail?id=142316
  https://codereview.chromium.org/11549005/

- Fix the compile errors on Android

- Added constants for GL_NVX_gpu_memory_info to glext.h

- Added constants for GL_EXT_discard_framebuffer to glext.h
