scripts/export_targets.py


Log

Author Commit Date CI Message
Jonah Ryan-Davis 188a1fc7 2020-10-21T10:59:43 Add dlopen_fuchsia.h as exception in export_targets.py This was breaking the Vulkan-Loader autoroller after a Fuschia related change. Bug: chromium:1140531 Change-Id: I502bcf67c014a9c543cacc35b6e21b366aae1e1b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2490340 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Tim Van Patten e78d9a61 2020-07-24T11:58:45 Convert unordered_map to absl::flat_hash_map for select files This is the initial CL to start migrating to abseil in various places: - formatutils.h - FramebufferVk.h - Program.h - ProgramExecutableVk.h - RewriteRowMajorMatrices.cpp This intentionally hits a couple different places in the code to make sure the abseil dependencies are added to the required targets. Bug: angleproject:4873 Change-Id: Idd6084dff2ebce47833f304c605bbf3151b97414 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2402382 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Jamie Madill 7676ec12 2020-08-29T10:48:28 Remove zlib from export_target exceptions. Note: contrib/optimizations/slide_hash_neon.h is inside zlib. It is conditionally included which is why it needs to be in the exceptions. Bug: chromium:1032721 Change-Id: I1da8bb2b12cfe44fca7ce8a423aa33c5e964f05f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2419043 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
Tim Van Patten a42a7f06 2020-09-16T12:39:09 Remove setting a default value for use_custom_libcxx Update the .gn to remove forcing use_custom_libcxx = false. Instead, let //build/config/c++/c++.gni determine the value, which should better match Chromium. In particular, this helps with Abseil integration by supporting Windows component builds by better matching the contents of the .def files. Bug: angleproject:4873 Test: CQ Change-Id: If8c064f16459292bfb95113a4d78e14e8923f86f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2414739 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Jamie Madill 7b543998 2020-08-31T09:10:36 Remove Vulkan repos from export targets ignore list. These were all fixed upstream. Bug: angleproject:4077 Change-Id: Id67cfdb62ec9949b0e8cb249d5bb1696ad205376 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2378924 Reviewed-by: back sept 10 - Jamie Madill <jmadill@chromium.org> Commit-Queue: back sept 10 - Jamie Madill <jmadill@chromium.org>
Jamie Madill 8d412db2 2020-08-29T22:25:18 Revert "Convert unordered_map to absl::flat_hash_map for select files" This reverts commit 1acaf4eced42a26f09b4d9180a9e5db0f37bc9a4. Reason for revert: Fails when is_component_build is not set: lld-link: error: <root>: undefined symbol: public: __cdecl absl::Condition::Condition<struct std::__1::atomic<bool> const>(bool (__cdecl *)(struct std::__1::atomic<bool> const *), struct std::__1::atomic<bool> const *) <snip> Original change's description: > Convert unordered_map to absl::flat_hash_map for select files > > This is the initial CL to start migrating to abseil in various places: > - formatutils.h > - FramebufferVk.h > - Program.h > - ProgramExecutableVk.h > - RewriteRowMajorMatrices.cpp > > This intentionally hits a couple different places in the code to make > sure the abseil dependencies are added to the required targets. > > Bug: angleproject:4873 > Change-Id: I68c7d067b6912b0cc0ecde231501dbed92f0b189 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2321735 > Commit-Queue: Tim Van Patten <timvp@google.com> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Charlie Lao <cclao@google.com> TBR=timvp@google.com,jmadill@chromium.org,cclao@google.com Change-Id: I75041532fc5126b4c7cc5e0d4529883fb357e05b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: angleproject:4873 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2383870 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Tim Van Patten 1acaf4ec 2020-07-24T11:58:45 Convert unordered_map to absl::flat_hash_map for select files This is the initial CL to start migrating to abseil in various places: - formatutils.h - FramebufferVk.h - Program.h - ProgramExecutableVk.h - RewriteRowMajorMatrices.cpp This intentionally hits a couple different places in the code to make sure the abseil dependencies are added to the required targets. Bug: angleproject:4873 Change-Id: I68c7d067b6912b0cc0ecde231501dbed92f0b189 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2321735 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Brian Sheedy a1d05e35 2020-08-27T14:43:23 Workaround GN bug Works around a bug in `gn desc` where values can sometimes be reported as strings when we would expect them to be lists. This was causing issues with the migration to abseil, as scripts/export_targets.py did not have a workaround for this bug. Bug: angleproject:4873 Change-Id: I69994e2cd68a563110fcb98072a24f59f70a06d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2380716 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Shahbaz Youssefi 6b97463d 2020-08-04T19:10:30 Add back glslang include check The issue was fixed upstream by https://github.com/KhronosGroup/glslang/pull/2362 Bug: angleproject:4763 Change-Id: Icc9af01097b1d97653eb15b640eed6bd72365fd1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2337349 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi b291ad09 2020-07-03T23:53:10 Build specialized version of glslang Bug: angleproject:4763 Change-Id: Ibb98c872a1283b9d6acde958a7c5212cf79e72df Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2281618 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Tobin Ehlis <tobine@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Tim Van Patten b55f0f78 2020-06-02T18:01:24 Compress Program binaries saved in blob cache The Android blob cache has a limit of 2MB, so ANGLE should compress the Program binaries that are saved into it to maximize its effectiveness. ANGLE will gzip the program binaries before being stored in the blob cache and then uncompress them when retrieved. Using gzip, the binaries are compressed to ~25% of their size when running the T-Rex benchmark. Some examples (in bytes): Uncompressed: 20193, Compressed: 4455 Uncompressed: 8767, Compressed: 2369 Uncompressed: 11144, Compressed: 2927 This doesn't appear to affect the T-Rex benchmark since all of the programs are loaded/decompressed as part of the benchmark initialization, and the programs are small enough to all fit in the blob cache without compression. Bug: b/155184635 Test: T-Rex, CQ Change-Id: Ie6a101c32ab5fd49baae1cb7aecdd26a934e15af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2227529 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Tim Van Patten <timvp@google.com>
Maksim Sisov 56a4cc12 2020-05-21T13:17:21 Rename DisplayOzone to DisplayGbm. DisplayOzone doesn't really have anything related to Ozone. Instead, it's the gbm platform that is used there. Thus, rename it to DisplayGbm. Bug: chromium:1084458 Change-Id: I4d974f6afbf0daa28fc3e83943b35814dca203fd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2211763 Reviewed-by: Michael Spang <spang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org>
Jonah Ryan-Davis 3cb9c4be 2020-03-13T13:56:47 Statically link vulkan-loader on Mac Disable angle_shared_libvulkan on Mac since we are the only client. Re-add codepaths to support this. Bug: angleproject:4477 Change-Id: Ie128c83adaae741636541bbfd6105d160d874a8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102954 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Tobin Ehlis <tobine@google.com>
Jamie Madill a8c95f74 2020-03-13T13:41:57 Update export_targets to fix presubmit on Windows. We don't have Windows presubmit coverage so this slipped through with the change to add DisplayEGL. See: "Reland "Instantiate rx::DisplayEGL when device type EGL is selected" Bug: angleproject:4328 Change-Id: I68f9e77b7b38fca86cf30a247f33543e4157e73f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2102952 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Julien Isorce <julien.isorce@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Kenneth Russell 12ce8f68 2020-01-03T16:40:06 Upstream WebKit's iOS port of ANGLE. Added the EAGL backend authored by Dean Jackson from Apple, and the refactoring changes needed to support it side-by-side with the macOS backend. Ran "git cl format" against these diffs. Defined the EGL_ANGLE_device_eagl extension and allocated an enum out of ANGLE's reserved range. The iOS backend is not yet included in any of the GN files. Bug: angleproject:4263 Change-Id: I631c32930433c03bb16a242955ffedf55174bb29 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1987278 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: James Darpinian <jdarpinian@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
Jonah Ryan-Davis 5afd5ec6 2019-10-25T10:53:40 Vulkan support for MacOS (using SwiftShader) Created a new WindowSurface/Display for MacOS/Vulkan, along with some GN changes to get it working. Bug: 1015454 Change-Id: I3f7a12f173795efe598856c702ce53b1e50831eb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1880163 Commit-Queue: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 1bae5615 2019-11-02T09:58:51 Remove some ignores from export_targets.py. These were fixed upstream. Bug: angleproject:4077 Change-Id: I656616a111e1703f8a910c27e6be3ec3e918f6ba Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1899726 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill c898ec1a 2019-11-04T15:20:18 Add EGL GGP extensions. This CL adds two new extensions: * EGL_ANGLE_ggp_stream_descriptor: Introduces a new attribute to CreateWindowSurface. Allows the app to pass in a stream descriptor to VkCreateSurfaceKHR. Mirrors VK_GGP_stream_descriptor_surface. * EGL_ANGLE_swap_with_frame_token: Introduces a new function 'eglSwapBuffersWithFrameTokenANGLE'. This allows the app to pass a GGP frame token down to vkQueuePresentKHR. Mirrors VK_GGP_frame_token. Bug: angleproject:4078 Change-Id: I4313ac4c264e68999905049f661bc64b44f72fab Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1897315 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Le Quyen fe26bae4 2019-10-29T18:38:53 Metal backend implementation pt 2 This is without Metal specific shader translator implemented yet. Bug: angleproject:2634 Change-Id: I95d589442251c9ba111bd05a2dc379a36739046c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1855069 Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Le Quyen d200a77a 2019-10-10T00:44:01 Metal backend skeleton implementation. Bug: angleproject:2634 Change-Id: I34be82f4a80a6851fecb53a51e069b134d82613a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1849079 Commit-Queue: Le Hoang Quyen <le.hoang.q@gmail.com> Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Brian Sheedy cc4d8331 2019-09-11T17:26:00 Reland "Add export_targets.py to presubmit" This is a reland of c40a21f353a2d0a37e83f3dce3a1c3096574be64 Changes: Fixed presubmit failing on Windows due to being unable to find gn, fixed export_targets.py failing on Windows for Googlers due to being unable to find Visual Studio files. Original change's description: > Add export_targets.py to presubmit > > Adds export_targets.py to run as part of presubmit in order to help > prevent breaking Firefox with BUILD.gn changes. > > Bug: chromium:1003151 > Change-Id: I5a7ab00891cd7c094c797e6150f642f803a726b6 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1802038 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Bug: chromium:1003151 Change-Id: I321ade86f2d969601afb8e1ed61c36bf166887b5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1842127 Commit-Queue: Brian Sheedy <bsheedy@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill a4242146 2019-10-04T18:57:25 Revert "Add export_targets.py to presubmit" This reverts commit c40a21f353a2d0a37e83f3dce3a1c3096574be64. Reason for revert: Seems to be failing locally on Windows. See bug for more info. Original change's description: > Add export_targets.py to presubmit > > Adds export_targets.py to run as part of presubmit in order to help > prevent breaking Firefox with BUILD.gn changes. > > Bug: chromium:1003151 > Change-Id: I5a7ab00891cd7c094c797e6150f642f803a726b6 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1802038 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Yuly Novikov <ynovikov@chromium.org> TBR=ynovikov@chromium.org,bsheedy@chromium.org,jgilbert@mozilla.com,jmadill@chromium.org Change-Id: Ic9a2eb58d847a40349e64b931c369f07c24b799c No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1003151 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1841877 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Brian Sheedy c40a21f3 2019-09-11T17:26:00 Add export_targets.py to presubmit Adds export_targets.py to run as part of presubmit in order to help prevent breaking Firefox with BUILD.gn changes. Bug: chromium:1003151 Change-Id: I5a7ab00891cd7c094c797e6150f642f803a726b6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1802038 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Jeff Gilbert e8247a57 2019-04-25T18:54:24 Add scripts/export_targets.py. $ export_targets.py <out_dir> <targets...> Flattens all library targets under <targets...> and checks that all includes in 'sources' are known to the build. Firefox can use this as the first half of our ANGLE vendoring process. Included additions to src/libGLESv2.gni were found with: $ export_targets.py out //:libEGL Eventually, it would be nice to have this as a presubmit check. Bug: angleproject:3403 Change-Id: I0f455e8c37c4b0a9e17e9f843843422b6a32f588 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1584652 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org>