Bug 223250 - adjust-angle-include-paths.py is making the maintenance more difficult than it should be
Summary: adjust-angle-include-paths.py is making the maintenance more difficult than i...
Status: ASSIGNED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebGL (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Kimmo Kinnunen
URL:
Keywords: InRadar
Depends on: 223470
Blocks: gcgranglecleanup
  Show dependency treegraph
 
Reported: 2021-03-16 05:29 PDT by Kimmo Kinnunen
Modified: 2021-03-23 05:30 PDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kimmo Kinnunen 2021-03-16 05:29:51 PDT
adjust-angle-include-paths.py is making the maintenance more difficult than it should be

Problems:
* The WebCore part has to jump multiple hoops just to include angle headers
* Angle headers are not complete, preventing explicit context API usage

Currently:
1) copy partial amount of public headers
2) regex-patch the headers to fix the shortcoming that the folder structure was flattened by 1


Most likely the problem should be solved one of
a) publish the public headers via publishing the folder reference of ANGLE/include
b) copy public headers via script

https://stackoverflow.com/questions/3807241/keeping-directory-structure-when-creating-frameworks-in-xcode
Comment 1 Kimmo Kinnunen 2021-03-19 01:10:06 PDT
In this bug we could address the difference, if it's desired:

WTF has "Copy WTF Headers" build target where it rsyncs the headers, preserving the directory structure, to the header path.
wtf does not have Xcode public/private headers, only project headers.

libwebrtc has "Copy libwebrtc headers" build target where it rsyncs the headers, preserving the directory structure, to the header path.
libwebrtc does not have Xcode public/private headers, only project headers.


ANGLE has "Adjust ANGLE paths" *build phase* where it regex-replaces some #includes to not have directories.
ANGLE has Xcode public headers.
Comment 2 Kimmo Kinnunen 2021-03-19 01:14:13 PDT
The explicit headers part is addressed by bug 223470
Comment 3 Alexey Proskuryakov 2021-03-19 10:57:59 PDT
At some point, we should be switching from script phases to using a copy headers phase with APPLY_RULES_IN_COPY_HEADERS, as that enables a much easier way to track dependencies. This feature is new build system only, so it cannot be done right now.
Comment 4 Radar WebKit Bug Importer 2021-03-23 05:30:16 PDT
<rdar://problem/75734268>