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

Reply via email to