Production ANGLE builds are technically non-compliant. During the installhdrs build action, ANGLE headers are exported but are not post-processed. This differs from the install build action, where the exported headers *are* post-processed. The headers need to be treated identically under both actions. The post-processing is enabled by setting the INSTALLHDRS_SCRIPT_PHASE build setting to YES. Most other WebKit projects already set this setting (see, for example, https://trac.webkit.org/changeset/155787, https://trac.webkit.org/changeset/110327, and https://trac.webkit.org/changeset/41417).
<rdar://problem/59513380>
Created attachment 394187 [details] Patch
Note that there are important steps to take when updating ANGLE. See http://trac.webkit.org/wiki/UpdatingANGLE
Comment on attachment 394187 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=394187&action=review > Source/ThirdParty/ANGLE/Configurations/ANGLE.xcconfig:7 > APPLY_RULES_IN_COPY_HEADERS = $(USE_NEW_BUILD_SYSTEM); Doesn’t this (also) need to change to YES? It appears as if at least some of the processing is done by the "Files '*.h' using Script" build rule that runs the “adjust-angle-include-paths-rule” script.
No, it doesn't need to change. There are two ways of post-processing the headers. One way is XCBuild compatible, the other is backward compatible with older Xcode's. The former is supported by the adjust-angle-include-paths-rule script and selected by APPLY_RULES_IN_COPY_HEADERS=YES, as you noted. The latter continues to be supported by adjust-angle-include-paths.sh, which is executed if APPLY_RULES_IN_COPY_HEADERS is not YES.
Committed r258815: <https://trac.webkit.org/changeset/258815> All reviewed patches have been landed. Closing bug and clearing flags on attachment 394187 [details].