Commit 1a6346ea authored by dpranke@chromium.org's avatar dpranke@chromium.org

Re-land r207660 - "Upgrading Mesa to 9.0.3.""

Try again w/ gyp fix.

TBR=kbr@chromium.org, mymax@amazon.com
BUG=238755

Review URL: https://codereview.chromium.org/17115014

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207892 0039d316-1c4b-4281-b951-d872f2087c98
parent 0415561b
...@@ -267,3 +267,4 @@ Chaobin Zhang <zhchbin@gmail.com> ...@@ -267,3 +267,4 @@ Chaobin Zhang <zhchbin@gmail.com>
Code Aurora Forum <*@codeaurora.org> Code Aurora Forum <*@codeaurora.org>
Jingwei Liu <kingweiliu@gmail.com> Jingwei Liu <kingweiliu@gmail.com>
Zheng Chuang <zhengchuangscu@gmail.com> Zheng Chuang <zhengchuangscu@gmail.com>
Myles C. Maxfield <mymax@amazon.com>
...@@ -255,7 +255,7 @@ deps = { ...@@ -255,7 +255,7 @@ deps = {
"/trunk/deps/cdm@181763", "/trunk/deps/cdm@181763",
"src/third_party/mesa/src": "src/third_party/mesa/src":
"/trunk/deps/third_party/mesa@204346", "/trunk/deps/third_party/mesa@207256",
} }
......
cc/test/data/anti_aliasing.png

1.96 KB | W: | H:

cc/test/data/anti_aliasing.png

1.96 KB | W: | H:

cc/test/data/anti_aliasing.png
cc/test/data/anti_aliasing.png
cc/test/data/anti_aliasing.png
cc/test/data/anti_aliasing.png
  • 2-up
  • Swipe
  • Onion skin
This diff is collapsed.
Name: mesa Name: mesa
Version: 7.9 Version: 9.0.3
URL: http://www.mesa3d.org/ URL: http://www.mesa3d.org/
License: MIT and LGPL v2 License: MIT and LGPL v2
Security Critical: Yes Security Critical: Yes
Description: Description:
This directory contains a copy of these MesaLib components: This directory contains a copy of the Mesa sources with minor
modifications to work in Chromium's build infrastructure.
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 src/docs/license.html The license file in this directory is derived from src/docs/license.html
and src/docs/COPYING. and src/docs/COPYING.
Modifications made with initial commit: Modifications made:
- Converted to utf-8 with: vim +"argdo write ++enc=utf-8" *.c
- Added the file README.chromium (this file) - Added the file README.chromium (this file)
Later modifications (see chromium.patch): - Disabled optimizations using #pragma optimize('', off) in the
- Added OSMesaGetProcAddress to src/src/mesa/drivers/osmesa/osmesa.def following files:
- src/src/mesa/main/mipmap.c
- Added #pragma optimize('', off) to: - src/src/mesa/main/pack.c
- src\src\mesa\main\histogram.c - src/src/mesa/math/m_eval.c
- src\src\mesa\main\image.c - src/src/mesa/swrast/s_texcombine.c
- src\src\mesa\main\mipmap.c
- src\src\mesa\math\m_eval.c
- src\src\mesa\swrast\s_texcombine.c
- Deleted src/include/EGL/ - it was conflicting with angle
- Also deleted src/include/GLES2/ and src/include/KHR/ for
similar reasons
- Deleted src/include/GLES/ and src/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 - Checked in sources normally autogenerated during Mesa's build
process under src/chromium_gensrc.
- Disabled the IEEE float optimized UNCLAMPED_FLOAT_TO_UBYTE and - Modified _mesa_add_parameter to not read from uninitialized
CLAMPED_FLOAT_TO_UBYTE (src/mesa/main/macros.h) in chromium version memory
of mesa. They produce slightly different results than the
un-optimized versions that are used when DEBUG is defined.
- Cleaned up redundant comparison in nvvertparse.c. - Added typedefs for EGLNative*Type in eglplatform.h, guarded by an
__APPLE__ define
Compilation has a few phases:
1. Generate the header and dispatch source files that have to match the GL api.
These read in a description of the GL api in the form of XML files. In
addition, generate the GLSL parser and lexer using flex and bison. These
sources are needed for step 2
2. Compile everything in src/glsl into a library. This step uses the parser and
lexer output.
3. Compile the compiler (executable) that can create the builtin functions'
source file. Note that this step uses builtin_stubs.cpp because we haven't
generated the actual builtin functions' source file yet.
4. Invoke the compiler that we just built to create
gen/mesa/builtin_function.cpp
5. Compile the rest of mesa, using the builtins that we created in step 4. In
addition, link in all the files that we've previously compiled in step 2.
import os
import os.path
import sys
output = sys.argv[1]
parentdir = os.path.abspath(os.path.join(output, os.pardir))
#The original body of this file is generated by this bash script:
#
#touch "${DIR}/git_sha1.h.tmp"
#if test -d .git; then \
# if which git > /dev/null; then \
# git log -n 1 --oneline | \
# sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
# > "${DIR}/git_sha1.h.tmp" ; \
# fi \
# fi
#if ! cmp -s "${DIR}/git_sha1.h.tmp" "${DIR}/git_sha1.h"; then \
# mv "${DIR}/git_sha1.h.tmp" "${DIR}/git_sha1.h" ;\
# else \
# rm "${DIR}/git_sha1.h.tmp" ;\
# fi
#
#However, Chromium shouldn't depend on Bash, and this preprocessor macro isn't
#neccessary in the first place
if not os.path.isdir(parentdir):
os.makedirs(parentdir)
with open(output, "w") as f:
pass
This diff is collapsed.
This diff is collapsed.
import os
import os.path
import subprocess
import sys
if len(sys.argv) < 3:
print "Usage: %s OUTPUTFILE SCRIPTNAME ARGUMENTS" % sys.argv[0]
print "Re-execs the python interpreter against SCRIPTNAME with ARGS,"
print "redirecting output to OUTPUTFILE."
sys.exit(1)
abs_outputfile = os.path.abspath(sys.argv[1])
abs_outputdir = os.path.dirname(abs_outputfile)
if not os.path.isdir(abs_outputdir):
os.makedirs(abs_outputdir)
ret = 0
with open(abs_outputfile, "w") as f:
ret = subprocess.Popen([sys.executable] + sys.argv[2:], stdout=f).wait()
if ret:
os.remove(abs_outputfile)
sys.exit(ret)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment