Bug 194072
Summary: | Adding a file to Source/WebCore/SourcesCocoa.txt and doing 'make' doesn't regenerate unified sources | ||
---|---|---|---|
Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> |
Component: | Tools / Tests | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | ap, graouts, krollin, lforschler, simon.fraser, thorton |
Priority: | P2 | ||
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Simon Fraser (smfr)
I added a new file to Source/WebCore/SourcesCocoa.txt and did a 'make d' in Souce/WebCore, and unified sources were not regenerated.
Using Xcode 10.0 beta.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Simon Fraser (smfr)
I had to run the scheme from Xcode to get things to regenerate.
Keith Rollin
If you find yourself in the same position again, I'd be interested in hearing what happens if you execute:
WK_ENABLE_CHECK_XCFILELISTS=1 make d
This should go through the make process, fail to build the new file, and then tell you that that the .xcfilelists were updated and that you should restart your build. When you do `WK_ENABLE_CHECK_XCFILELISTS=1 make d` again, the unifiedsources should now build.
Simon Fraser (smfr)
This should be trivially reproducible.
Simon Fraser (smfr)
Note that the issue I saw was about updating the unified source files, not the xcfilelists.
Antoine Quint
This bit me today too. Keith, I ran the command you suggested:
... === Generating .xcfilelists for JavaScriptCore/iphoneos/Release ===
... === Merging .xcfilelists for JavaScriptCore ===
...
... ".xcfilelist" files tell the build system what files are consumed and produced by the
... "Run Script" build phases in Xcode. At least one of these .xcfilelist files was out
... of date and has been updated. You now need to restart your build.
Command /bin/sh failed with exit code 3
Antoine Quint
Running the same command a second time yields the same result and the build doesn't work.
Anecdotally, while my changes were in WebCore only, I now have a bunch of changes in JavaScriptCore:
modified: Source/JavaScriptCore/DerivedSources-input.xcfilelist
modified: Source/JavaScriptCore/DerivedSources-output.xcfilelist
modified: Source/JavaScriptCore/UnifiedSources-input.xcfilelist
Keith Rollin
(In reply to Antoine Quint from comment #6)
> Running the same command a second time yields the same result and the build
> doesn't work.
>
> Anecdotally, while my changes were in WebCore only, I now have a bunch of
> changes in JavaScriptCore:
>
> modified: Source/JavaScriptCore/DerivedSources-input.xcfilelist
> modified: Source/JavaScriptCore/DerivedSources-output.xcfilelist
> modified: Source/JavaScriptCore/UnifiedSources-input.xcfilelist
Is it indeed the same result? Or a similar result in a different project? If JavaScriptCore is out-of-date, then you'll get a warning for that. Once that's fixed and you restart the build, you'll get another message for WebCore.
The issue with out-of-date files in JavaScriptCore (as well as with WebKit and with files in WebCore other than the ones you added) is addressed in Bug 194121. The change for automatic the regeneration of these files is in Bug 194124.