Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f0528cd0af232932e7e4307e67e50e7ce2ec8c30
      
https://github.com/WebKit/WebKit/commit/f0528cd0af232932e7e4307e67e50e7ce2ec8c30
  Author: Elliott Williams <[email protected]>
  Date:   2025-11-14 (Fri, 14 Nov 2025)

  Changed paths:
    M Source/JavaScriptCore/DerivedSources-input.xcfilelist
    M Source/JavaScriptCore/DerivedSources.make
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/WTF/Scripts/generate-platform-args
    M Source/WebCore/DerivedSources-input.xcfilelist
    M Source/WebCore/DerivedSources.make
    M Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebGPU/WebGPU.xcodeproj/project.pbxproj
    M Source/WebKit/DerivedSources-input.xcfilelist
    M Source/WebKit/DerivedSources.make
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj
    M Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj
    M Tools/DumpRenderTree/DerivedSources-input.xcfilelist
    M Tools/DumpRenderTree/DerivedSources.make
    M Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj
    M Tools/DumpRenderTree/Scripts/generate-derived-sources.sh
    M Tools/Scripts/webkitpy/generate_xcfilelists_lib/generators.py
    M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
    M Tools/WebKitTestRunner/DerivedSources-input.xcfilelist
    M Tools/WebKitTestRunner/DerivedSources.make
    M Tools/WebKitTestRunner/Scripts/generate-derived-sources.sh
    M Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj

  Log Message:
  -----------
  [Xcode] Use generate-platform-args in DerivedSources Makefiles
https://bugs.webkit.org/show_bug.cgi?id=302332
rdar://164489420

Reviewed by Alexey Proskuryakov.

The .resp files representing active wtf/Platform.h features are more
accurate because they support indirection. Replace the older Makefile
pattern of calling clang -dM directly and parsing its output.

For projects which do not yet run generate-platform-args during their
"Derived Sources" action, add it as a script phase. For projects which
do, reorder so that it runs before the Makefile.

JavaScriptCore and WebCore run source generation as part of their
installhdrs actions, because they install SPI headers which are
generated. For these targets, invoke generate-platform-args
unconditionally. For others, skip it in installhdrs.

As a drive-by cleanup, remove "*.i386.resp" files that in dependency
lists. watchOS Simulator was the last platform to drop support for
deploying to i386 targets.

* Source/JavaScriptCore/DerivedSources-input.xcfilelist:
* Source/JavaScriptCore/DerivedSources.make:
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/WTF/Scripts/generate-platform-args:
* Source/WebCore/DerivedSources-input.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj: Move
  generate-platform-args invocation to WebCore.
* Source/WebCore/WebCore.xcodeproj/project.pbxproj: In addition to the
  above, reorder when PAL runs in single-project builds relative to
  source generation.
* Source/WebGPU/WebGPU.xcodeproj/project.pbxproj:
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources.make: In addition to the refactoring
  changes, remove FEATURE_AND_PLATFORM_UNDEFINES, which was not being
  used.
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
* Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj:
* Tools/DumpRenderTree/DerivedSources-input.xcfilelist:
* Tools/DumpRenderTree/DerivedSources.make:
* Tools/DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

* Tools/DumpRenderTree/Scripts/generate-derived-sources.sh:
* Tools/Scripts/webkitpy/generate_xcfilelists_lib/generators.py:
(BaseGenerator._generate_derived): Makefiles now depend on a file in the
DerivedSources directory which is *not* built by Make. Add a clause to
the xcfilelist processor to handle input dependencies on DerivedSources
paths. This is a bit weird, since the original design was for
DerivedSources.make to be solely responsible for generating *all* build
inputs. However, we've intended to replace Makefiles with Xcode-native
build phases over time, and this change furthers that effort.

* Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* Tools/WebKitTestRunner/DerivedSources-input.xcfilelist:
* Tools/WebKitTestRunner/DerivedSources.make:
* Tools/WebKitTestRunner/Scripts/generate-derived-sources.sh:
* Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:

Canonical link: https://commits.webkit.org/303053@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to