Bug 212444 - New build system causing full WebCore recompiles
Summary: New build system causing full WebCore recompiles
Status: RESOLVED DUPLICATE of bug 217371
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Major
Assignee: Keith Rollin
Keywords: InRadar
Depends on: 199212 209890 212428 212530 212623
  Show dependency treegraph
Reported: 2020-05-27 16:55 PDT by Kenneth Russell
Modified: 2020-10-06 02:51 PDT (History)
3 users (show)

See Also:

zip archive of build output (182.46 KB, application/zip)
2020-05-27 16:55 PDT, Kenneth Russell
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kenneth Russell 2020-05-27 16:55:21 PDT
Created attachment 400403 [details]
zip archive of build output

After the switch to the new build system, touching a single .cc file in for example Source/ThirdParty/ANGLE and running:

./Tools/Scripts/build-webkit --release --ios-simulator > build-log.txt 2>&1

seems to cause some timestamp in JavaScriptCore to be modified, causing headers to be regenerated, and a lot of WebCore to be rebuilt.

Attached is the (aborted) output after touching Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp and running that command. (WebKit was completely built in this configuration before touching that file and attempting a rebuild.)

This drastically increases incremental build times and basically destroys our ability to contribute to WebKit. Can this regression please be investigated?
Comment 1 Radar WebKit Bug Importer 2020-05-27 16:55:41 PDT
Comment 2 Kenneth Russell 2020-05-27 17:29:01 PDT
Note: I might have broken something in Bug 212428.
Comment 3 Kenneth Russell 2020-05-27 19:16:38 PDT
Undoing my change to WebKit.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings from Bug 212428, touching a file in Source/ThirdParty/ANGLE and running:

./Tools/Scripts/build-webkit --debug --ios-simulator

still does a huge rebuild of lots of JavaScriptCore, WebCore, and WebKit. Incremental builds aren't working any more in WebKit.
Comment 4 Kenneth Russell 2020-05-29 18:06:56 PDT
The switch to XCBuild was reverted in Bug 212530 so reducing the priority to P2, Major. Keith, may I assign this to you to follow up on later? I can help fix ANGLE so that it doesn't regenerate its headers all the time (originally fixed in Bug 199212, but seems it will need a new solution that doesn't generate a timestamp but is instead based on the file's contents).
Comment 5 Keith Rollin 2020-10-06 02:51:35 PDT

*** This bug has been marked as a duplicate of bug 217371 ***