|
a7c01c62
|
2015-07-20T14:05:32
|
|
Add an angle_link_glx that can be used for debugging
This replaces the dlsyming of glX entry point with linking to libGL
which in trun allows the ANGLE to be traced using apitrace.
Re-land with a trivial compilation fix (MEMBER vs MEMEBER)
BUG=angleproject:892
Change-Id: Ie89b6fe26eb80d3d8d48f49645d7a6254230bf5c
Reviewed-on: https://chromium-review.googlesource.com/287143
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
2c58d81d
|
2015-07-21T13:31:23
|
|
Revert "Add an angle_link_glx that can be used for debugging"
This reverts commit cddca5f204d9aa55c9810cf30c74997ca19a7f86.
Change-Id: I07fa96a8b84308c77fb642a64f39fcacc471d96e
Reviewed-on: https://chromium-review.googlesource.com/287123
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
6703b265
|
2015-07-20T14:05:32
|
|
Add an angle_link_glx that can be used for debugging
This replaces the dlsyming of glX entry point with linking to libGL
which in trun allows the ANGLE to be traced using apitrace.
BUG=angleproject:892
Change-Id: Ic065582401e0e1e3fce1329cde216220a1e086a8
Reviewed-on: https://chromium-review.googlesource.com/286880
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0eb0a816
|
2015-06-19T20:18:16
|
|
Fix seg fault in IsPlatformAvailable.
Some GLX implementations can't handle having libGL.so.1 dlclose'd out
from under them while there's any X window still open against which a
GLXWindow was ever created. Load the library once per process rather
than once per FunctionsGLX instance.
This showed up as a crash in X11Window::destroy, during XCloseDisplay.
BUG=angleproject:892
Change-Id: I0da2674786a952865e5bea2513259c0a32d4453c
Reviewed-on: https://chromium-review.googlesource.com/280902
Tested-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@google.com>
|
|
f4863b70
|
2015-05-21T16:29:36
|
|
Implement swapInterval for EGL on GLX
BUG=angleproject:892
Change-Id: I80d8d67270662c7f2be893f4a8318fbc0926f1fc
Reviewed-on: https://chromium-review.googlesource.com/272677
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
8c5aeb6c
|
2015-05-21T08:17:18
|
|
Add some string helper classes.
*re-land with build fix for Clang*
These helper functions mirror some utilities in Chrome, for splitting
strings along whitespace, or reading file contents into a string.
Also remove the hack for skipping the doubly-defined GLX header.
BUG=angleproject:892,angleproject:998
Change-Id: Ife43fbf5035a3be7820460bea1b26d0e632a4fb0
Reviewed-on: https://chromium-review.googlesource.com/272518
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
|
|
a30c78ae
|
2015-05-21T12:15:43
|
|
Revert "Add some string helper classes."
Build errors on Clang:
FAILED: /b/build/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/angle/src/common/angle_common.string_utils.o.d -DV8_DEPRECATION_WARNINGS -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORE=0 -DCHROMIUM_BUILD -DCR_CLANG_REVISION=233105-2 -DTOOLKIT_VIEWS=1 -DUSE_LIBJPEG_TURBO=1 -DENABLE_ONE_CLICK_SIGNIN -DENABLE_PRE_SYNC_BACKUP -DENABLE_REMOTING=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DENABLE_HIDPI=1 -DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DDONT_EMBED_BUILD_METADATA -DDCHECK_ALWAYS_ON=1 -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_BACKGROUND=1 -DENABLE_GOOGLE_NOW=1 -DCLD_VERSION=2 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_SERVICE_DISCOVERY=1 -DENABLE_WIFI_BOOTSTRAPPING=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DSAFE_BROWSING_SERVICE -DUSE_LIBPCI=1 -DUSE_OPENSSL=1 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -Igen -I../../third_party/angle/src -I../../third_party/angle/include -isysroot /Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -O2 -gdwarf-2 -fvisibility=hidden -Werror -Wnewline-eof -mmacosx-version-min=10.6 -arch x86_64 -Wendif-labels -Wno-unused-parameter -Wno-missing-field-initializers -Wno-selector-type-mismatch -Wpartial-availability -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -std=c++11 -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics -Xclang -load -Xclang /b/build/slave/GPU_Mac_Builder/build/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib -Xclang -add-plugin -Xclang find-bad-constructs -fcolor-diagnostics -fno-strict-aliasing -c ../../third_party/angle/src/common/string_utils.cpp -o obj/third_party/angle/src/common/angle_common.string_utils.o
../../third_party/angle/src/common/string_utils.cpp:72:19: error: no matching constructor for initialization of 'std::ifstream' (aka 'basic_ifstream<char>')
std::ifstream inFile(path);
^ ~~~~
/Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1/fstream:465:7: note: candidate constructor not viable: no known conversion from 'const std::string' (aka 'const basic_string<char>') to 'const char *' for 1st argument
basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in)
^
/Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1/bits/fstream.tcc:894:25: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'const std::string' (aka 'const basic_string<char>') to 'const std::basic_ifstream<char>' for 1st argument
extern template class basic_ifstream<char>;
^
/Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1/fstream:451:7: note: candidate constructor not viable: requires 0 arguments, but 1 was provided
basic_ifstream() : __istream_type(), _M_filebuf()
^
1 error generated.
FAILED: /b/build/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/angle/src/common/angle_unittests.string_utils_unittest.o.d -DV8_DEPRECATION_WARNINGS -D__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORE=0 -DCHROMIUM_BUILD -DCR_CLANG_REVISION=233105-2 -DTOOLKIT_VIEWS=1 -DUSE_LIBJPEG_TURBO=1 -DENABLE_ONE_CLICK_SIGNIN -DENABLE_PRE_SYNC_BACKUP -DENABLE_REMOTING=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS -DENABLE_HIDPI=1 -DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DDONT_EMBED_BUILD_METADATA -DDCHECK_ALWAYS_ON=1 -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_AUTOFILL_DIALOG=1 -DENABLE_BACKGROUND=1 -DENABLE_GOOGLE_NOW=1 -DCLD_VERSION=2 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SETTINGS_APP=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_SERVICE_DISCOVERY=1 -DENABLE_WIFI_BOOTSTRAPPING=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DSAFE_BROWSING_SERVICE -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DGL_APICALL= -DGL_GLEXT_PROTOTYPES= -DEGLAPI= '-DANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES={ "d3dcompiler_47.dll", "d3dcompiler_46.dll", "d3dcompiler_43.dll" }' -DANGLE_TRANSLATOR_STATIC -DUSE_LIBPCI=1 -DUSE_OPENSSL=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -Igen -I../.. -I../../third_party/angle/include -I../../third_party/angle/src -I../../third_party/angle/src/compiler/preprocessor -I../../third_party/angle/src/tests -Igen/angle -I../../testing/gmock/include -I../../testing/gtest/include -isysroot /Applications/Xcode5.1.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk -O2 -gdwarf-2 -fvisibility=hidden -Werror -Wnewline-eof -mmacosx-version-min=10.6 -arch x86_64 -Wall -Wendif-labels -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-selector-type-mismatch -Wpartial-availability -Wheader-hygiene -Wno-char-subscripts -Wno-unneeded-internal-declaration -Wno-covered-switch-default -Wstring-conversion -Wno-c++11-narrowing -Wno-deprecated-register -Wno-inconsistent-missing-override -std=c++11 -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -fno-threadsafe-statics -Xclang -load -Xclang /b/build/slave/GPU_Mac_Builder/build/src/third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib -Xclang -add-plugin -Xclang find-bad-constructs -fcolor-diagnostics -fno-strict-aliasing -c ../../third_party/angle/src/common/string_utils_unittest.cpp -o obj/third_party/angle/src/common/angle_unittests.string_utils_unittest.o
In file included from ../../third_party/angle/src/common/string_utils_unittest.cpp:12:
../../testing/gtest/include/gtest/gtest.h:1481:16: error: comparison of integers of different signs: 'const int' and 'const unsigned int' [-Werror,-Wsign-compare]
if (expected == actual) {
~~~~~~~~ ^ ~~~~~~
../../testing/gtest/include/gtest/gtest.h:1511:12: note: in instantiation of function template specialization 'testing::internal::CmpHelperEQ<int, unsigned int>' requested here
return CmpHelperEQ(expected_expression, actual_expression, expected,
^
../../third_party/angle/src/common/string_utils_unittest.cpp:55:5: note: in instantiation of function template specialization 'testing::internal::EqHelper<false>::Compare<int, unsigned int>' requested here
EXPECT_EQ(0xBADF00D, uintValue);
^
../../testing/gtest/include/gtest/gtest.h:2017:67: note: expanded from macro 'EXPECT_EQ'
EqHelper<GTEST_IS_NULL_LITERAL_(expected)>::Compare, \
^
../../testing/gtest/include/gtest/gtest_pred_impl.h:162:23: note: expanded from macro 'EXPECT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_NONFATAL_FAILURE_)
^
../../testing/gtest/include/gtest/gtest_pred_impl.h:147:17: note: expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), \
^
../../testing/gtest/include/gtest/gtest_pred_impl.h:77:52: note: expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
BUG=angleproject:892,angleproject:998
This reverts commit fa5fb6f1ef685af316b320530ffbb425bb63446e.
Change-Id: I949debbd365926301ec19225f262484fa3b8e13b
Reviewed-on: https://chromium-review.googlesource.com/272548
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
fa5fb6f1
|
2015-05-20T16:13:48
|
|
Add some string helper classes.
These helper functions mirror some utilities in Chrome, for splitting
strings along whitespace, or reading file contents into a string.
Also remove the hack for skipping the doubly-defined GLX header.
BUG=angleproject:892,angleproject:998
Change-Id: Ie617be7e02c2ccc684028500aabb54561c9c6c14
Reviewed-on: https://chromium-review.googlesource.com/272436
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Jamie Madill <jmadill@chromium.org>
|
|
4f691690
|
2015-05-19T13:40:28
|
|
FunctionsGLX: Remove all but one of the ANGLE dependencies
A follow-up CL will make it so the dependencies on
TokenizeExtensionString doesn't pull the GL headers, this will then
allow use to remove the hack for the inclusion of glx.h
BUG=angleproject:892
Change-Id: I51c5466617057e2c580bd5e8056307515bcecc4b
Reviewed-on: https://chromium-review.googlesource.com/272206
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
3cd0ca3c
|
2015-05-15T15:05:18
|
|
Completely isolate GLX in FunctionsGLX
This makes it so it is the only file including glx.h.
BUG=angleproject:892
Change-Id: I5c45b659ec102b7a2c92e010a6843fa21b7c664b
Reviewed-on: https://chromium-review.googlesource.com/271418
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
d64a38b3
|
2015-05-14T13:03:31
|
|
FunctionsGLX: add support for glXWaitX/GL
The functions are not used in the code but are useful during development
to try to see where race condition with the X server are.
BUG=angleproject:892
Change-Id: Ie1267e46ac251bd9ac62e2a146db68ad84644fb8
Reviewed-on: https://chromium-review.googlesource.com/271177
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
582173d9
|
2015-05-13T15:51:28
|
|
FunctionsGLX: make most functions take the display implicitly
In later CLs FunctionsGLX will need to store the X display so we take
advantage of it to reduce the verbosity of the other GLX files slightly.
BUG=angleproject:892
Change-Id: I42ea00d0a37055e5e0752a860978b8ef5afb7a0b
Reviewed-on: https://chromium-review.googlesource.com/271163
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
0d3afab8
|
2015-05-11T14:53:13
|
|
Implement Pbuffers for the GLX EGL implementation
BUG=angleproject:892
Change-Id: I32b9bbb35d99621f16a055fb544ec0691dfcd5a0
Reviewed-on: https://chromium-review.googlesource.com/270261
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|
|
f229cb9b
|
2015-05-08T15:53:39
|
|
Add a FunctionsGLX class to dynamically load the GLX entry points
BUG=angleproject:892
Change-Id: I516b7d859100cb065871de8e328585a9ca817499
Reviewed-on: https://chromium-review.googlesource.com/270123
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
|