Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: cc8d0fdd5e1b87567b879879a6adcc2a50357ca9
https://github.com/WebKit/WebKit/commit/cc8d0fdd5e1b87567b879879a6adcc2a50357ca9
Author: Chris Dumez <[email protected]>
Date: 2026-04-20 (Mon, 20 Apr 2026)
Changed paths:
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
Log Message:
-----------
Use a stamp file for JS bindings generation to avoid O(n*m) make dependency
overhead
https://bugs.webkit.org/show_bug.cgi?id=312838
Reviewed by Elliott Williams.
The generate-bindings-all.pl make rule used ~3,646 pattern targets
(one per JS*.h and JS*.cpp), each depending on all ~1,823 IDL files.
This caused make to perform O(n*m) prerequisite stat calls (~15 seconds
of overhead) before even running the Perl script. Replace with a single
stamp file target so make checks dependencies only once.
* Source/WebCore/DerivedSources-output.xcfilelist: Add .js-bindings-stamp
to output file list and fix alphabetical ordering of JSWebXRSession entries.
* Source/WebCore/DerivedSources.make: Replace ~3,646 pattern targets for
JS bindings with a single .js-bindings-stamp target, avoiding O(n*m)
make dependency checking overhead.
Canonical link: https://commits.webkit.org/311636@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications