Bug 229348

Summary: Improve diagnostics for missing files in DerivedSources.make
Product: WebKit Reporter: Alexey Proskuryakov <ap>
Component: WebCore Misc.Assignee: Alexey Proskuryakov <ap>
Status: RESOLVED INVALID    
Severity: Normal CC: aakash_jain, commit-queue, darin, ddkilzer, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 229487    
Bug Blocks:    
Attachments:
Description Flags
proposed patch none

Description Alexey Proskuryakov 2021-08-20 13:19:09 PDT
We are seeing mysterious build failures in certain scenarios which looks like this:

make: *** No rule to make target `UserAgentScripts.h', needed by `all'.  Stop.

The theory is that some files that should be present in the file system aren't, but the error is not clear enough. Let's add better diagnostics to isolate the issue.

cf. rdar://81042866
Comment 1 Radar WebKit Bug Importer 2021-08-20 13:19:23 PDT
<rdar://problem/82182815>
Comment 2 Alexey Proskuryakov 2021-08-20 13:31:24 PDT
Created attachment 436022 [details]
proposed patch

In testing, this patch appears to resolve the build failures instead of providing diagnostics, which is not quite satisfactory, and the theory may be incorrect. 

I don't see how to further diagnose the issue, and in any case, we'll have better diagnostics if the build fails again in the future, so it's an improvement either way.
Comment 3 Aakash Jain 2021-08-24 11:37:45 PDT
rs=me
Comment 4 Alexey Proskuryakov 2021-08-24 18:24:14 PDT
Comment on attachment 436022 [details]
proposed patch

Landing with review from Aakash and me (as it's not my patch).
Comment 5 EWS 2021-08-24 18:57:28 PDT
Committed r281540 (240907@main): <https://commits.webkit.org/240907@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 436022 [details].
Comment 6 WebKit Commit Bot 2021-08-24 23:20:05 PDT
Re-opened since this is blocked by bug 229487
Comment 7 Alexey Proskuryakov 2021-08-26 10:26:35 PDT
We no longer think that it's going to work. The script that verifies xcfilelists by running make in debug mode thinks that these fake outputs are real, and modifying it feels like it would be too much of a hack.