BUILD.gn


Log

Author Commit Date CI Message
Yuly Novikov e653403b 2016-11-01T18:19:06 Remove component translator target and keep static_library. Rename translator_static to translator and use it everywhere. BUG=angleproject:1596 Change-Id: I36c990d54979d2460b1513a65cca0b82f8d65c80 Reviewed-on: https://chromium-review.googlesource.com/406668 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Geoff Lang d08f3b3d 2016-09-23T15:56:30 Add stubs for a NULL renderer. BUG=angleproject:1468 Change-Id: I2ed2b65a4b6f6ea3dda61c0467aef95e407cd38c Reviewed-on: https://chromium-review.googlesource.com/388844 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Corentin Wallez 054f7ed0 2016-09-20T17:15:59 preprocessor: Miscellaneous cleanups - Use full header paths in includes - Use ASSERT instead of assert - Use angle::NonCopyable instead of PP_DISALLOW_COPY_AND_ASSIGN - Use range-for in a couple places - Remove pp_utils.h BUG=angleproject:1522 Change-Id: If107fef89e8465bca65cf664926d1051c5d1e232 Reviewed-on: https://chromium-review.googlesource.com/387212 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 1db8a26b 2016-09-22T13:53:47 Fix warning in standalone in new validation. BUG=angleproject:1512 Change-Id: Ifdb8d4c38e3c90e03eee42ba9fd6390dffd61363 Reviewed-on: https://chromium-review.googlesource.com/388611 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Corentin Wallez a5615c69 2016-09-19T09:54:44 BUILD.gn: Disable pool alloc on all translator dependents when fuzzing It contains defines that need to be consistent between the header and the implementation. BUG=angleproject:1522 BUG=chromium:647807 Change-Id: Ica144c455b7366bd9939a07b171edffe5af8bf35 Reviewed-on: https://chromium-review.googlesource.com/386945 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 30e11ab2 2016-09-16T10:29:54 BUILD.gn: make the translator fuzzer a source set When we want to use GN standalone, the fuzzer_test template won't exist. Instead make the fuzzer a source set that is used by a target in Chrome. BUG=angleproject:1522 Change-Id: I347e633448d508eb124d0861b0fb28315923016c Reviewed-on: https://chromium-review.googlesource.com/386636 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 28b6528c 2016-06-16T07:24:50 Add a fuzzer for the shader translator. BUG=angleproject:1522 Change-Id: Idbe8194ba478366e99c7460d403d03fe27dd89d0 Reviewed-on: https://chromium-review.googlesource.com/353153 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Yuly Novikov e3352f94 2016-08-12T20:40:14 Change angle_util to be a shared library So that there will be one instance of static thread synchronization variables in AndroidWindow. Previously there was one instance in lib_angle_deqp_gles2_tests__library and one in libangle_deqp_libgles2, resulting in AndroidWindow::initialize waiting forever. Also make the change in GYP build to fix standalone build, and fix rpath issues on Mac. BUG=angleproject:1471 TEST=end2end and deqp tests on standalone Win10 and end2end on GN Mac 10.11 Change-Id: I731578459400bb47d269df129aabed9b67b555e6 Reviewed-on: https://chromium-review.googlesource.com/376202 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 55033e58 2016-08-25T17:32:12 Revert "Change angle_util to be a shared library" This reverts commit 2f9b5e6f79cd576bd3b7110272d58f143801bf0f. Change-Id: I90a7ba0596e79795c9549bc268eabff69c96d572 Reviewed-on: https://chromium-review.googlesource.com/376079 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 2f9b5e6f 2016-08-12T20:40:14 Change angle_util to be a shared library So that there will be one instance of static thread synchronization variables in AndroidWindow. Previously there was one instance in lib_angle_deqp_gles2_tests__library and one in libangle_deqp_libgles2, resulting in AndroidWindow::initialize waiting forever. BUG=angleproject:1471 Change-Id: Ia529c91e34960eb352730c1bb89a91ce6336c8a0 Reviewed-on: https://chromium-review.googlesource.com/368983 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 91e71ed9 2016-08-23T09:29:22 Misc minor WinRT fixes and cleanups Change-Id: Ibf041e74d81ef266791e6b6a3bb43bf504b035b3 Reviewed-on: https://chromium-review.googlesource.com/374040 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 509a1d46 2016-07-18T10:10:29 GN: Enable more MSVS warnings. Some warnings were enabled only in standalone builds. Enabling them in the GN config will prevent standalone build breakage and also make some potentially harmful warnings more visible to non-Windows devs. BUG=angleproject:1449 Change-Id: I11fe9bac957864d37af37b3860a22fcbd91946ac Reviewed-on: https://chromium-review.googlesource.com/360961 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Olli Etuaho <oetuaho@nvidia.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill ce1ed238 2016-07-24T12:45:17 D3D11: Detect driver version for blit workaround. Since the newer driver versions are required for WebGL 2 conformance, we need a solution that can detect a driver version to know if we should apply the workaround. Use a modified copy of Chrome's Windows GPU driver detection code. In the future we should extend this to a full module when we port the command buffer workarounds. BUG=angleproject:1452 Change-Id: I783d5726454671cc22585a2bf990c071d539aa9f Reviewed-on: https://chromium-review.googlesource.com/361962 Reviewed-by: Zhenyao Mo <zmo@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill a8503cef 2016-07-18T13:47:12 Re-land "GN: Enable chromium_code config instead." Using "no_chromium_code" is a bit less strict, but ANGLE should be able to handle slightly stricter warnings. Re-land with fix for Clang build. BUG=angleproject:1449 Change-Id: I8988287d630a6258f2f9ee90e7bfef5f2d5799cd Reviewed-on: https://chromium-review.googlesource.com/361331 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 5bc93c41 2016-07-18T16:34:42 Revert "GN: Enable chromium_code config instead." Seems to fail the Clang build: ../../third_party/angle/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp(35,60): error: comparison of integers of different signs: 'UINT' (aka 'unsigned int') and 'int' [-Werror,-Wsign-compare] maxSrvMip = (desc.Texture2D.MipLevels == -1) ? INT_MAX : maxSrvMip; ~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~ BUG=angleproject:1449 This reverts commit aeb477fbe5fad337815560a0031815f0636471a1. Change-Id: I01baaf082f282c9d80a9c17fd6ffc2b8911313b2 Reviewed-on: https://chromium-review.googlesource.com/361094 Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill aeb477fb 2016-07-15T13:32:37 GN: Enable chromium_code config instead. Using "no_chromium_code" is a bit less strict, but ANGLE should be able to handle slightly stricter warnings. BUG=angleproject:1449 Change-Id: Ifaf77201085dd70cf5ff628b1aa02de55c5e96ba Reviewed-on: https://chromium-review.googlesource.com/360940 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Dirk Pranke 313d9447 2016-07-13T18:01:55 Stop linking a static_initializer into the Mac chromium build. The :angle-image_util target was a source_set rather than a static_library(), causing us to link in loadimage.cpp, which pulled in mathutils.cpp, which contains a static initializer. Switching :angle_image_util to a static library (which is what GYP does) solved the problem. R=rsesek@chromium.org, cwallez@chromium.org BUG=628052 Change-Id: I63387b3fc9d799c92f7c1b49a1c7c7435e70a951 Reviewed-on: https://chromium-review.googlesource.com/360228 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Frank Henigman e8d5c5c4 2016-07-07T13:17:47 Check ozone_platform_gbm before doing gbm stuff. Just checking use_ozone fails when building an ozone platform which doesn't have gbm, e.g. chromecast. BUG=angleproject:1439 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_chromeos_rel;tryserver.chromium.android:android_compile_dbg Change-Id: Idec14441ce30dd872b3bfddfe844abfeb910cc02 Reviewed-on: https://chromium-review.googlesource.com/358860 Reviewed-by: Luke Halliwell <halliwell@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Geoff Lang 6e4cfceb 2016-06-13T15:06:31 Refactor ANGLE's image manipulation code into a static library. Allows for chromium to make use of some of the functionality. BUG=612205 Change-Id: Ib4435ca44775a3a554b0fb3bd384bd4d31d7952d Reviewed-on: https://chromium-review.googlesource.com/351753 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Frank Henigman 62ba9623 2016-06-27T17:08:28 Require libdrm only if use_ozone=1. This is more accurate, and doesn't break platforms with no pkgconfig, e.g. Android. BUG=angleproject:1297 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_chromeos_rel;tryserver.chromium.android:android_compile_dbg Change-Id: Iafbd66a5e81467d2a5431c3bb1ddd26a837888e7 Reviewed-on: https://chromium-review.googlesource.com/356481 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Frank Henigman 77df676e 2016-06-13T16:39:01 Add ozone display gn build. Pick up ozone source when use_ozone = true. Don't link X11 unless use_x11 = true. BUG=angleproject:1297 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_chromeos_rel Change-Id: I94e6242189646c8a18b00436294bccdd4c5a8785 Reviewed-on: https://chromium-review.googlesource.com/352251 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Robert Sesek db8ae836 2016-06-21T11:47:03 [Mac/GN] Properly set the install_name and rpath for shared_library targets and their consumers. BUG=621932 R=cwallez@chromium.org Change-Id: I10b0fd5a668d74b7062747002bc48ef0e0a6df9c Reviewed-on: https://chromium-review.googlesource.com/354302 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Yuly Novikov a6426d67 2016-06-03T00:18:38 Android GL backend and end2end tests Just the bare minimum implementation for end2end tests to run. BUG=angleproject:1362 TEST=angle_end2end_tests on Nexus 5X Change-Id: I92293e0f8bdc2ffaa5d4661927750d7cb3d931e6 Reviewed-on: https://chromium-review.googlesource.com/349353 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Jamie Madill e2e406c3 2016-06-02T13:04:10 Add base::numerics for safe math and conversions. This replaces are "IsUnsignedXXXSafe" family of methods. Also add overflow checks to unpack block sizes. BUG=angleproject:1397 Change-Id: Ib47be149b0486c70f795b0d0f8899441faac9340 Reviewed-on: https://chromium-review.googlesource.com/348062 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill e31fd875 2016-05-27T08:35:36 Enable Release ASSERT in ANGLE. This will mainly affect the Chromium bots. BUG=angleproject:790 Change-Id: I0c4318e83eedba851f15b3b139551cdb6a2fde12 Reviewed-on: https://chromium-review.googlesource.com/346103 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9e54b5af 2016-05-25T12:57:39 Add Vulkan stubs. Currently enabled for Windows by default. BUG=angleproject:1319 Change-Id: I87921c579bee466465fb1e3f629bb3a40fdff659 Reviewed-on: https://chromium-review.googlesource.com/328730 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Yuly Novikov 87ae8cdf 2016-05-19T17:59:55 Fix Linux standalone compilation. simple_texture_2d, hello_triangle, stencil_operations, simple_texture_cubemap fail to compile after https://chromium-review.googlesource.com/342050. BUG=angleproject:1319 TEST=ninja -C out/Release all Change-Id: Ib70008036f8688b737f3f40b5224437a7afdea19 Reviewed-on: https://chromium-review.googlesource.com/346121 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Nico Weber de44d3a4 2016-05-13T17:27:57 gn/mac: Build GL code, and include CGL code. BUG=chromium:431177 Change-Id: Id9c8ad68a9703591d6f576bfae3d7061526ed27f Reviewed-on: https://chromium-review.googlesource.com/344740 Tryjob-Request: Nico Weber <thakis@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org>
John Bauman e271a7e4 2016-05-11T17:03:32 Use data_deps to depend on :copy_compiler_dll This should ensure that d3dcompiler_47.dll is saved into an isolate in chromium, as it's used at runtime. BUG=611235 Change-Id: I64801f00bf90f2be68c7a691724609bbf4d28dfa Reviewed-on: https://chromium-review.googlesource.com/344351 Tryjob-Request: John Bauman <jbauman@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: John Bauman <jbauman@chromium.org> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Steven Bennetts 369d03c1 2016-05-05T10:37:38 Disable angle_enable_gl on chromeos BUG=angleproject:1370 Change-Id: I63e3ee8fc6e08fcd2a908cdca3558af886526cbd Reviewed-on: https://chromium-review.googlesource.com/342740 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jeremy Roman 06feb81c 2016-04-06T16:39:52 Make :angle_common depend on :commit_id. BUG=chromium:601195 Change-Id: Ic90b8c8dbe07700e66c8fe973a3e620f439d2fbe Reviewed-on: https://chromium-review.googlesource.com/337335 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Corentin Wallez cc068e93 2016-02-29T16:37:04 Add DisplayGL::getDriverVersion and implementation on Linux NVIDIA Some GPU driver bug workarounds should be active only for specific driver version ranges. This adds NVIDIA Linux driver detection using the XNVCtrl X11 extension. BUG=590870 Change-Id: I8cbf692a0c8a6da7473169f29d720bdc2d07663d Reviewed-on: https://chromium-review.googlesource.com/329637 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez dbc9ccfb 2016-02-02T11:44:21 Remove the _ANGLE targets from the GN build. They are no longer needed by Chromium. BUG=522967 Change-Id: I187eed52378a58f3ea24c3e21082c6a93e56da7f Reviewed-on: https://chromium-review.googlesource.com/325330 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez adc5b0eb 2016-01-12T16:35:23 Fix translator having multiply defined symbols in GN builds. This error was introduced in 82b5ab606f68bad27fe5d143d8b96e84801222ac where the translator's essl and glsl sources are compiled in both the translator and translator_lib targets. As translator depends on translator_lib this caused symbols to be defined multiple times. BUG=angleproject:1250 Change-Id: I50bab7112d1460e14710f50250fa2417b2163236 Reviewed-on: https://chromium-review.googlesource.com/321770 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez c89df2ba 2015-12-07T13:05:17 Add loadable_module versions of libEGL and libGLESv2. Reland with a link fix for Clang on Windows In order to implement the --use-gl=angle Chrome flag on Linux, we need to have the ANGLE .so directly in the build directory however GYP places shared_libraries under lib/ on Linux. On the contrary loadable_modules cannot be linked against so we need to keep the shared_library targets. This commit adds _ANGLE versions of the libEGL and libGLESv2 targets as loadable module that depend on their respective shared library. BUG=522967 Change-Id: Iad968ab786b94b6041c279921de99633d23b48a7 Reviewed-on: https://chromium-review.googlesource.com/318470 Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 1fae3556 2016-01-07T14:33:48 Add dEQP Linux GN integration. BUG=angleproject:1272 Change-Id: I20cb8968221c25bb374b3cc71d7ca619a35f1a2f Reviewed-on: https://chromium-review.googlesource.com/320781 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill edbc2449 2016-01-04T11:25:00 Add dEQP GN integration. This is Windows-only for now, but will be expanded to Linux. Also do a bit of refactoring in our deqp.gypi file. BUG=angleproject:1272 Change-Id: I526a99fe3b91a2d9e8901c7e033a4916a06780be Reviewed-on: https://chromium-review.googlesource.com/320800 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Austin Kinross 82b5ab60 2015-12-11T09:30:15 Compile out GLSL/ESSL translator output code if it's not needed In WinRT we only use the HLSL code, so the GLSL/ESSL output code is not necessary and is only adding to our binary size. BUG=angleproject:1250 Change-Id: I9363ca3981bde50a230f8353c1bcc09f6ea209cb Reviewed-on: https://chromium-review.googlesource.com/317358 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Austin Kinross <aukinros@microsoft.com> Tested-by: Austin Kinross <aukinros@microsoft.com>
Roland McGrath f786c2b9 2016-01-05T12:26:07 GN: Use $root_out_dir in in copy_compiler_dll rule The root_build_dir variable yields the root of the build tree. But when the component is being built under a non-default toolchain, its output files are delivered to a toolchain subdirectory instead. The copy_compiler_dll rule should put its output next to where libANGLE and things built using it will go, which is root_out_dir. This fixes cases where the angle GN component is instantiated under more than one toolchain, which heretofore would produce multiple Ninja rules for the same target file $root_build_dir/d3dcompiler_47.dll and thus get complaints from Ninja. BUG=512869 Change-Id: I9fe83c5c5fa74902ef270654d3707636588af6b7 Reviewed-on: https://chromium-review.googlesource.com/320119 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Roland McGrath <mcgrathr@chromium.org>
Corentin Wallez 4bc76d07 2015-12-15T20:07:23 Revert "Add loadable_module versions of libEGL and libGLESv2." This reverts commit 6beb0bfdd0e57d7cb5797355d10e971c7c97cc29. It caused compile failures on win_clang_dbg because when building libEGL_ANGLE.dll DllMainCRTStartup wasn't defined. Change-Id: I8080f8db373f5988d86560da1b8b2a1bae30d3ea Reviewed-on: https://chromium-review.googlesource.com/318460 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez 6beb0bfd 2015-12-07T13:05:17 Add loadable_module versions of libEGL and libGLESv2. In order to implement the --use-gl=angle Chrome flag on Linux, we need to have the ANGLE .so directly in the build directory however GYP places shared_libraries under lib/ on Linux. On the contrary loadable_modules cannot be linked against so we need to keep the shared_library targets. This commit adds _ANGLE versions of the libEGL and libGLESv2 targets as loadable module that depend on their respective shared library. BUG=522967 Change-Id: I08f2ce0ee0430eff5bee852f09cd7d30b94d6266 Reviewed-on: https://chromium-review.googlesource.com/316421 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Tryjob-Request: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Austin Kinross 502f3df6 2015-12-02T12:33:18 Define EGL_EGLEXT_PROTOTYPES in GN projects This makes sure that EGL_EGLEXT_PROTOTYPES is defined in the same places as GL_GLEXT_PROTOTYPES. BUG=angleproject:1190 Change-Id: I0e55aad5728df765bff495822570e7590b157d68 Reviewed-on: https://chromium-review.googlesource.com/315208 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Austin Kinross <aukinros@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Dirk Pranke ac0f9b1f 2015-11-12T14:54:10 Add missing GN build dependency on -lrt for linux. Without this fix, angle_end2end_tests links fine on Trusty but not on Precise or older versions of Linux (util/linux/LinuxTimer.cpp calls clock_gettime(), which is part of libc on newer versions of the OS but requires -lrt on older versions. GYP had the dependency specified but GN didn't). R=cwallez@chromium.org BUG=432959, 531296 Change-Id: I70e1f701d099f3ba72c7e5dfd7af6d47658ffad9 Reviewed-on: https://chromium-review.googlesource.com/312298 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Geoff Lang ee48376c 2015-09-15T13:12:07 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Re-land fixes double define from different style defines in libGLESv2.gypi and other projects. Re-land fixes missing defines in angle_util project in gn. Change-Id: I1952413cd4390e6f5450df809f8f5867bf6f49e2 Reviewed-on: https://chromium-review.googlesource.com/299771 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 0393310f 2015-09-15T16:59:59 Revert "Update to the latest versions of the GL and EGL headers." Issues with GN build. This reverts commit 8284436798dd184afe61cbb586185cb68e503d6f. Change-Id: I99d186019135bbbe250e95c9567854108d31c556 Reviewed-on: https://chromium-review.googlesource.com/299870 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 82844367 2015-09-11T13:52:12 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Re-land fixes double define from different style defines in libGLESv2.gypi and other projects. Change-Id: I6204dc767bd83b7aa7e4d6e2fa338b2ce7f304d8 Reviewed-on: https://chromium-review.googlesource.com/299401 Tested-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang e12150fe 2015-09-11T20:06:27 Revert "Update to the latest versions of the GL and EGL headers." Linux compile failures to do gyp defines. This reverts commit 8bbeabc1795473f7b3141219be3970fea3b95a71. Change-Id: Icb31dd817414b3a9ab36e88cedab9c725af26b6b Reviewed-on: https://chromium-review.googlesource.com/299173 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8bbeabc1 2015-09-11T13:52:12 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Change-Id: Icaa444efa52f3b9d1497189da92bc364545a6e3a Reviewed-on: https://chromium-review.googlesource.com/299172 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 7aef6020 2015-09-11T19:04:00 Revert "Update to the latest versions of the GL and EGL headers." Broke the Clang compile. In file included from ../../third_party/angle/include/GLSLANG/ShaderLang.h:28: ../../third_party/angle/include/KHR/khrplatform.h:282:30: error: no newline at end of file [-Werror,-Wnewline-eof] #endif /* __khrplatform_h_ */ Several other similar errors. BUG=None This reverts commit aac2035d851fc92b159dc8e01cfd2ebb86e99e4a. Change-Id: I407e7e65bb6a46d1d941c54cdf14a14758e22d96 Reviewed-on: https://chromium-review.googlesource.com/298834 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang aac2035d 2015-09-11T13:52:12 Update to the latest versions of the GL and EGL headers. Add GLES 3.1 and 3.2 headers. Remove GLES 3.0 extension headers and entry point files. Change-Id: I8e9df6262dc1b2536a409c5791734e4a4d63b115 Reviewed-on: https://chromium-review.googlesource.com/299341 Tryjob-Request: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Corentin Wallez beb81589 2015-09-02T10:30:55 Make the end2end tests compile in the GN build. BUG=angleproject:929 Change-Id: Ifc5ad03579c3e187721842f7585f3f06b69cbf45 Reviewed-on: https://chromium-review.googlesource.com/296682 Reviewed-by: Dirk Pranke <dpranke@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Corentin Wallez d4bcfa2c 2015-09-01T10:32:30 Make the unittests compile in the GN build. This changes angle_unittests.gypi to use a variable per list of files so that we can grab the list of files in conditions in BUILD.gn BUG=angleproject:929 Change-Id: I7fc73fd84d8efc1ea545fe672b1dba1c429b317f Reviewed-on: https://chromium-review.googlesource.com/296443 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Tomasz Moniuszko 319fb898 2015-07-30T14:34:54 Use default commit.h file if git index is not available The solution is the same as in GYP version: 1. Check if .git/index is available in angle directory. 2. Use generated commit.h file if git is available or copy the default file instead. Change-Id: Ic3cedf6793c368070228a63c0eb270ca6fb47f81 Reviewed-on: https://chromium-review.googlesource.com/289391 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Tomasz Moniuszko <tmoniuszko@opera.com>
Cooper Partin 75da1974 2015-06-16T15:03:14 Changed d3d11 desktop renderer to use d3d9 debug annotation interfaces. The D3D11 renderer must choose the D3D9 debug annotator because the D3D11 interface method ID3DUserDefinedAnnotation::GetStatus on desktop builds doesn't work with the Graphics Diagnostics tools in Visual Studio 2013. The D3D9 annotator works properly for both D3D11 and D3D9. Incorrect status reporting can cause ANGLE to log unnecessary debug events. Change-Id: I9a31c63cbc506904eb39577826fc4df8d503f03a Reviewed-on: https://chromium-review.googlesource.com/278162 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cooper Partin <coopp@microsoft.com> Tested-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Nico Weber 47b53c00 2015-06-04T12:58:22 Mark no_angle_common as no_chromium_code. All other targets that remove chromium_code add no_chromium_code; looks like not doing this here was an oversight. BUG=491209 Change-Id: Id5c81d019603b428561a23aaa4dbe4427e43e751 Reviewed-on: https://chromium-review.googlesource.com/275316 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Tested-by: Nico Weber <thakis@chromium.org>
Corentin Wallez 51e2ad14 2015-05-26T11:32:58 Do not always use X11 for Linux builds, inherit Chromium's settings This fixes project generation for Chromium for non-X11 builds BUG=angleproject:1011 Change-Id: If528f63fb186d834d56a43ca379497d99e74777e Reviewed-on: https://chromium-review.googlesource.com/273163 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 47fc1fec 2015-05-14T10:54:18 Compile the GLX EGL implementation in BUILD.gn BUG=angleproject:892 Change-Id: Ifebcadab4fc4ad9fd93b9cf21b3ebdd2f4d6cfc1 Reviewed-on: https://chromium-review.googlesource.com/271164 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Corentin Wallez <cwallez@chromium.org>
Brett Wilson a662abb5 2015-04-07T12:55:30 Fix GN Windows component build. The translator_static dependency is missing from libANGLE. GYP has this dependency. Change-Id: I30165a041f88f7e3c6f550744d2c7a4103d0f520 Reviewed-on: https://chromium-review.googlesource.com/264425 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Dirk Pranke a17e77fe 2015-03-18T14:58:49 Replace stray reference to cpu_arch in BUILD.gn. cpu_arch has been replaced by target_cpu and current_cpu in GN. R=geofflang@chromium.org BUG=344767 Change-Id: Id1c0e37238db5fac41572244aeac0908ac5a412a Reviewed-on: https://chromium-review.googlesource.com/260971 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Daniel Bratell 73941deb 2015-02-25T14:34:49 Disable the HLSL code in Angle if it is not being used. We're only using the HLSL code in Windows so it's not necessary to compile and distribute it on other platforms. This adds a defined ANGLE_ENABLE_HLSL that can be checked in files that are used by non-HLSL code as well. Mostly the HLSL code is just not include by the build system. Details of the space savings (heavily truncated) Total change: -165717 bytes =========================== -606 - Source: angle/src/common/utilities.cpp -627 - Source: angle/src/compiler/translator/FlagStd140Structs.cpp -695 - Source: /usr/include/c++/4.8/bits/stl_algo.h -710 - Source: angle/src/compiler/translator/TranslatorHLSL.cpp -713 - Source: angle/src/compiler/translator/IntermNode.h -863 - Source: /usr/include/c++/4.8/bits/stl_map.h -935 - Source: angle/src/compiler/translator/blocklayout.cpp -1515 - Source: angle/src/compiler/translator/BuiltInFunctionEmulator.cpp -1655 - Source: angle/src/compiler/translator/UnfoldShortCircuit.cpp -2375 - Source: /usr/include/c++/4.8/bits/vector.tcc -3135 - Source: angle/src/compiler/translator/RewriteElseBlocks.cpp -4656 - Source: angle/src/compiler/translator/UtilsHLSL.cpp -5265 - Source: angle/src/compiler/translator/BuiltInFunctionEmulatorHLSL.cpp -6505 - Source: /usr/include/c++/4.8/bits/stl_tree.h -11480 - Source: angle/src/compiler/translator/UniformHLSL.cpp -13580 - Source: angle/src/compiler/translator/StructureHLSL.cpp -18964 - Source: ?? (constant strings and a few vtbls) -89332 - Source: angle/src/compiler/translator/OutputHLSL.cpp Change-Id: I23ccc98abd0a21f847dd34f9482800b3ba679d56 Reviewed-on: https://chromium-review.googlesource.com/251528 Tested-by: bratell at Opera <bratell@opera.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Geoff Lang 23dcabad 2015-02-13T10:13:24 Enable the OpenGL/WGL backend on Windows. BUG=angle:890 Change-Id: Ida58ecb9f3bcfd7ee9ae5c7cdbdff4aab9cca869 Reviewed-on: https://chromium-review.googlesource.com/249741 Reviewed-by: Cooper Partin <coopp@microsoft.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang c588ac73 2015-02-13T15:41:41 Add the OpenGL renderer to the GN build. BUG=angle:890 Change-Id: I097296c7125e203ba04eab1c179dc8c183ed4789 Reviewed-on: https://chromium-review.googlesource.com/249842 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Austin Kinross 40853472 2015-02-12T10:39:56 Disable warning 4530 in the libANGLE GN project Change-Id: I56b5428f40a294248305dff168b9b0bb7b0a9bcc Reviewed-on: https://chromium-review.googlesource.com/249240 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 562e81bb 2015-01-14T14:31:02 Fix Linux build, and update BUILD.gn. Re-re-land with fixes for Linux and Android. We were getting multiply defined symbol errors on Linux for some stuff in the common sources. Switch to using a static lib target for the common sources, and also sync BUILD.gn with the latest gyp. BUG=angle:773 Change-Id: Ia2d52978a167c532e5e76cb711de589855eff44e Reviewed-on: https://chromium-review.googlesource.com/240553 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 433c85d3 2015-01-13T22:52:17 Revert "Fix Linux build, and update BUILD.gn." Still more build failures, different ones this time. This reverts commit 9f8a57c6419f64965fd97fcc0df8e138677febaf. Change-Id: I7bea8e24403d92ca4ecb2ee0f24f9e065db5366d Reviewed-on: https://chromium-review.googlesource.com/240550 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 9f8a57c6 2015-01-13T11:13:56 Fix Linux build, and update BUILD.gn. Re-land with fixes for Android. We were getting multiply defined symbol errors on Linux for some stuff in the common sources. Switch to using a static lib target for the common sources, and also sync BUILD.gn with the latest gyp. BUG=angle:773 Change-Id: Id3edecc633b1c4be205558137c91baf87f256156 Reviewed-on: https://chromium-review.googlesource.com/240145 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 04184fb0 2015-01-09T16:51:16 Revert "Fix Linux build, and update BUILD.gn." This reverts commit ed409f938b4fd8db89d8551d2bf7fc6a6b9ad9b7. Change-Id: I208a2c43c73e99ae95988c6d81ed64691bd8a99f Reviewed-on: https://chromium-review.googlesource.com/239900 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill ed409f93 2015-01-07T13:22:02 Fix Linux build, and update BUILD.gn. We were getting multiply defined symbol errors on Linux for some stuff in the common sources. Switch to using a static lib target for the common sources, and also sync BUILD.gn with the latest gyp. BUG=angle:773 Change-Id: I212284cfa90cd117a784a5f17057f47dd08900d1 Reviewed-on: https://chromium-review.googlesource.com/239193 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang e7c6e43c 2014-12-03T14:48:07 Implement all entry points in libGLES and have libEGL act as a shim. This allows libANGLE to only be included in libGLESv2 and moves all TLS data to libGLESv2.dll. BUG=angle:733 Change-Id: I34f0b47987a5efbe906c290d3ca656142e69ea9a Reviewed-on: https://chromium-review.googlesource.com/232962 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 9d9132df 2014-12-03T14:46:48 Remove support for compiling libANGLE as a dynamic library. BUG=angle:733 Change-Id: Iacef45b89f234091eb5df505437adabece1e564b Reviewed-on: https://chromium-review.googlesource.com/232961 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 8bc361e1 2014-11-20T16:23:31 Support compiling libANGLE as a static or shared library. BUG=angle:733 Change-Id: If27d3330534bce0f5b691010ea7d97bcb7579122 Reviewed-on: https://chromium-review.googlesource.com/231052 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2207213b 2014-11-20T15:15:01 Move as many files as possible from common to libANGLE. BUG=angle:733 Change-Id: If01c91cd52ac5c2102276a9fdc4b68ebc13e47f9 Reviewed-on: https://chromium-review.googlesource.com/231850 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 4349ab85 2014-11-25T15:53:34 Revert "Move as many files as possible from common to libANGLE." Chromium directly includes our common/version.h and couldn't build after this change. This reverts commit f0a2c7727f9863c38a435a16a69d513c481fbbdd. Change-Id: Iafc41b1a3973f609518fe3588fdb64cecc285332 Reviewed-on: https://chromium-review.googlesource.com/231840 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang f0a2c772 2014-11-20T15:15:01 Move as many files as possible from common to libANGLE. BUG=angle:733 Change-Id: I40cee6e2e305ac493acbc8649f858785c0569aed Reviewed-on: https://chromium-review.googlesource.com/231051 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 2b5420c0 2014-11-19T14:20:15 Merge libGLESv2 and libEGL classes into libANGLE. BUG=angle:733 Change-Id: Ic491c971411fe82c56cd97c5c8325ac14ec218df Reviewed-on: https://chromium-review.googlesource.com/230830 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
John Abd-El-Malek ea0c84d1 2014-11-11T10:16:40 Copy the D3D compiler dll in the GN build. Change-Id: I773a411d07991d9ae160267eba8325c327146554 Reviewed-on: https://chromium-review.googlesource.com/229007 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: John Abd-El-Malek <jam@chromium.org>
Scott Graham 7e81c9d5 2014-11-15T02:23:08 Revert "Revert "Switch to 8.1 SDK and d3dcompiler_47.dll"" This reverts commit 3cbdc34d4e90f6b51d5612e6f1d3ae632da47234. This reverts back to using 8.1 and d3dcompiler_47, as chrome is now rolled forward. Change-Id: I7ef4ebdbc32146b9ba6f551e376ac03ac71131ba Reviewed-on: https://chromium-review.googlesource.com/229990 Reviewed-by: John Abd-El-Malek <jam@chromium.org> Reviewed-by: Scott Graham <scottmg@chromium.org> Commit-Queue: Scott Graham <scottmg@chromium.org> Tested-by: Scott Graham <scottmg@chromium.org>
Scott Graham 3cbdc34d 2014-11-14T18:25:26 Revert "Switch to 8.1 SDK and d3dcompiler_47.dll" This reverts commit e1425d95ba0ab095c5d64536bbeb3f78adcbf79f. This is to keep the GPU fyi bots green until the chrome side is landed. Chrome will be rolling to e1425d95... Change-Id: Iff1c60eeb7143fb72afa8525b31f8f0de9385897 Reviewed-on: https://chromium-review.googlesource.com/229497 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>
Scott Graham e1425d95 2014-11-13T11:28:30 Switch to 8.1 SDK and d3dcompiler_47.dll Change-Id: If43c7861ab7f47448fd726fd0b5c35f3a6eeb362 Reviewed-on: https://chromium-review.googlesource.com/229616 Commit-Queue: Scott Graham <scottmg@chromium.org> Tested-by: Scott Graham <scottmg@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
John Abd-El-Malek 657cd684 2014-11-05T14:04:19 Fixes for Angle to build with Windows GN. Change-Id: Id38c4b11dba31b2779efa7beade481cd50f3d935 Reviewed-on: https://chromium-review.googlesource.com/227692 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Shannon Woods <shannonwoods@chromium.org>
John Abd-El-Malek 330f0ade 2014-11-05T13:14:01 Fixes for Angle to build with Windows GN. Change-Id: I5af7a1305e5a190de5367ad940186edd6baee5bc Reviewed-on: https://chromium-review.googlesource.com/227665 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Tibor den Ouden 97049c6a 2014-10-06T21:39:16 Enhance shader debug output glGetTranslatedShaderSourceANGLE() returns the glsl code, the initial translated hlsl code, the final translated hlsl code and the disassembly of the generated binary with the compiler configuration. This enhancement is only available if the define ANGLE_GENERATE_SHADER_DEBUG_INFO exists. This define is set in the debug configurations for the Windows platform. BUG=angle:751 Change-Id: I8b15e8b25fbb0c0575a73cc876bf8f1fa7ed142a Reviewed-on: https://chromium-review.googlesource.com/221059 Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Kenneth Russell 1ce845d7 2014-10-06T16:10:36 Refactor libGLESv2.gypi to allow libANGLE to be built on all platforms. Required pulling angle_enable_d3d{9,11} into angle.gypi and definition of angle_libangle_win_sources. Pull in those sources in BUILD.gn. Tested with local GYP build on Windows. Did not test GN build yet. BUG=angleproject:773 Change-Id: Ia3703fe4fa2bc8a1682c1fa1667ca36268b36cc7 Reviewed-on: https://chromium-review.googlesource.com/221785 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Kenneth Russell <kbr@chromium.org>
Brett Wilson 10ac4043 2014-09-24T10:20:56 Rename GN public variables. forward_dependent_configs_from => public_deps direct_dependent_configs => public_configs Change-Id: I93beca2109181a2aac8d5793c3464b3af8b6ab9b Reviewed-on: https://chromium-review.googlesource.com/219695 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Brett Wilson <brettw@chromium.org>
Cem Kocagil f8a16d7b 2014-09-16T21:35:39 gn: Fix source paths Change-Id: Idf0c746d7e4e9f03b176744e8ff027be2d5f25ad Reviewed-on: https://chromium-review.googlesource.com/218520 Reviewed-by: Brett Wilson <brettw@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Commit-Queue: Cem Kocagil <ckocagil@chromium.org> Tested-by: Cem Kocagil <ckocagil@chromium.org>
Jamie Madill 04994ec4 2014-08-28T11:31:36 Use libANGLE to reduce duplicated ANGLE source compiles. libGLESv2_static and libGLESv2 can re-use the same object files. BUG=angle:733 Change-Id: I894f4b5b6fbc1fc47812609d9e996691daf9f318 Reviewed-on: https://chromium-review.googlesource.com/214188 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill e5c97abd 2014-08-07T12:31:38 Fix GN build with missing ShaderVars.cpp. Change-Id: I29be6cdda643f83a40a6adc9b76153667aafcc51 Reviewed-on: https://chromium-review.googlesource.com/211400 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill a2ad4e8a 2014-07-17T14:16:32 Export shader variables from the translator DLL. This will allow us to use these methods when compiling the translator as a DLL. BUG=angle:466,697 Change-Id: Ic9169fb7c69fe0bf5f98addfc128a30ee6b2159d Reviewed-on: https://chromium-review.googlesource.com/208752 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org>
Jamie Madill 7bf0c867 2014-08-01T10:04:09 Fix GN build for libEGL. Our build in GN differed slightly from our gyp build, causing the linker to complain about inconsistent linkage. Also remove some stray definitions of EGLAPI from our headers. Change-Id: I5d3a09ccb0cec528ead33944ce0996cceed32d86 Reviewed-on: https://chromium-review.googlesource.com/210821 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 58c55c13 2014-07-31T17:34:30 Fix GN build for libGLESv2.dll. In a previous fix to a Clang build error, we had neglected to update the GN build. Broken in commit 07d49ef535. BUG=angle:707 Change-Id: Ic11aa907d591540e915bec60f3bafaea471689d5 Reviewed-on: https://chromium-review.googlesource.com/210652 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Brett Wilson <brettw@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Brett Wilson 2f5469c2 2014-07-22T17:00:17 Export include directories to dependents in GN. Translator headers that are included by dependent code (example: ShaderLang.h) expect to be able to include files from "includes" (example: "KHR/khrplatform.h"). This automatically applies this include path to dependent targets. Change-Id: I6990f66132562f142a6cdf8b8c434d2dbaad1c98 Reviewed-on: https://chromium-review.googlesource.com/209452 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Brett Wilson <brettw@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Brett Wilson 04bac60c 2014-07-16T14:19:18 Explicitly list files for the build. Removes shelling out to enumerate_files for the main targets (tests and examples are currently unchanged) in favor of explicitly listing out the files in the build. There are a number of reasons. My immediate reason is that doing this allows the file lists to be shared with the GN build so the GYP and GN builds of angle should mostly automatically stay in sync now. In addition, I don't think we should be enumerating files in GYP. No other Chrome sub-projects do this, and Chrome engineers expect files to be listed in .gyp* files. It's also slower to shell out a bunch of times to get the file lists (this matters more in the GN build which runs very quickly). Updates the GN build to share these file lists. This unbreaks the Windows GN Angle build. BUG=angle:698 Change-Id: Iab8829628aeb7232bb64f4c247c35c6485bba3ee Reviewed-on: https://chromium-review.googlesource.com/208461 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Brett Wilson <brettw@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org>
Brandon Jones f47bebc4 2014-07-09T14:28:42 Refactored Texture2D, separated out D3D logic BUG=angle:688 Change-Id: I93c2ff0b125278234d61324844b79cc58135d4d8 Reviewed-on: https://chromium-review.googlesource.com/207675 Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Brandon Jones <bajones@chromium.org>
Shannon Woods 53a94a82 2014-06-24T15:20:36 Refactors State to be a fully-qualified class BUG=angle:685 Change-Id: I36cff2da985a12c7180fe2850ccd471f4cebbaad Reviewed-on: https://chromium-review.googlesource.com/206634 Tested-by: Shannon Woods <shannonwoods@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Brandon Jones 6518fe24 2014-07-08T15:16:52 Moved TextureStorage and Image into d3d BUG=angle:688 Change-Id: I98ffa1082340a829a77fe5082958898b9c6ab1a2 Reviewed-on: https://chromium-review.googlesource.com/207054 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Tested-by: Brandon Jones <bajones@chromium.org>
Geoff Lang 57f9b6d5 2014-06-04T16:46:37 Clean up generatemip.h. * Move "private" functions into generatemip.inl. * Use size_t for all dimensions. * Use uint8_t pointers instead of unsigned char pointers. BUG=angle:666 Change-Id: I8a1324802e4d670c042e0961c2b6f6fd53f4ebc7 Reviewed-on: https://chromium-review.googlesource.com/202503 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Geoff Lang 86846e24 2014-06-03T15:48:54 Clean up the functions in loadimage.h/cpp. * Capitalize the function names to fit the style guide. * Use explicit sizes in the function names to avoid any confusion about input or output sizes. * Use explicit sized types in the functions to avoid potential issues on new platforms since a lot of bit-twiddling is used. * Use size_t for all sizes. * Use uint8_t for all binary data for input and output data so that pointer arithmetic is much easier. * Move templated function definitions into an .inl file so that loadimage.h looks as clean as possible. BUG=angle:665 Change-Id: Id7173ed66d9e1b7ee3261eea11e77d838cbd2951 Reviewed-on: https://chromium-review.googlesource.com/202590 Reviewed-by: Brandon Jones <bajones@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 72f5b5ee 2014-06-23T15:13:02 Add the BUILD.gn file to the ANGLE source. The script currently lives in Chromium's build/secondary. BUG=angle:683 Change-Id: I3ce11913fd27e0a01a1763d6ed973b250cf101d8 Reviewed-on: https://chromium-review.googlesource.com/205244 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Shannon Woods <shannonwoods@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>