JSC Xcode build should use unified sources for platform independent files
authorkeith_miller@apple.com <keith_miller@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 20 Sep 2017 23:08:50 +0000 (23:08 +0000)
committerkeith_miller@apple.com <keith_miller@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 20 Sep 2017 23:08:50 +0000 (23:08 +0000)
commit2b9a913c83bf92b8c87fc0392a1a1a178b86f309
treeb80df3b9ffc9dc810adbedeba40ae45ebad27198
parent00ff78245e49fc737584d5f2b7e16d5e0547580a
JSC Xcode build should use unified sources for platform independent files
https://bugs.webkit.org/show_bug.cgi?id=177190

Reviewed by Saam Barati.

.:

Add a macro for collecting the set of "header" source files and adding the bundle
files to the "sources" list.

* Source/cmake/WebKitMacros.cmake:

Source/JavaScriptCore:

This patch changes the Xcode build to use unified sources. The
main difference from a development perspective is that instead of
added source files to Xcode they need to be added to the shared
sources.txt. For now, platform specific files are still added
to the JavaScriptCore target.

Because Xcode needs to know about all the files before we generate
them all the unified source files need to be added to the
JavaScriptCore framework target. As a result, if we run out of
bundle files more will need to be added to the project. Currently,
there are no spare files. If adding more bundle files becomes
problematic we can change this.

LowLevelInterpreter.cpp can't be added to the unified source list yet
due to a clang bug.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* sources.txt: Added.

Source/WTF:

Add a new directory for build scripts that are forwarded to subsequent framework builds.

* Scripts/generate-unified-source-bundles.rb: Renamed from Source/WTF/generate-unified-source-bundles.rb.
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ChangeLog
Source/JavaScriptCore/CMakeLists.txt
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
Source/JavaScriptCore/sources.txt [new file with mode: 0644]
Source/WTF/ChangeLog
Source/WTF/Scripts/generate-unified-source-bundles.rb [moved from Source/WTF/generate-unified-source-bundles.rb with 55% similarity]
Source/WTF/WTF.xcodeproj/project.pbxproj
Source/WTF/wtf/CMakeLists.txt
Source/cmake/WebKitMacros.cmake