wiki:CMake

Version 1 (modified by achristensen@apple.com, 9 years ago) (diff)

--

Discussion

https://code.google.com/p/gyp/wiki/GypVsCMake (April 2010) http://trac.webkit.org/wiki/Unifying%20the%20build%20system (April 2011) https://lists.webkit.org/pipermail/webkit-dev/2012-April/020279.html (April 2012) https://lists.webkit.org/pipermail/webkit-dev/2013-April/024494.html (April 2013) https://lists.webkit.org/pipermail/webkit-dev/2014-March/026343.html (April 2014) http://trac.webkit.org/wiki/March%202015%20Meeting (March 2015)

Current State (August 2014)

jsc built and ran, no ftl WebCore built on Mac (probably not completely - libWebCore.a)

cmake .. -DPORT=Mac && make -j8

Proposed Timeline on Windows

Get WinLauncher working Verify equivalent output & testing Update internal testing & infrastructure Remove *.vcxproj

Proposed Timeline on Mac

Get MiniBrowser working on Mac CMake build bot Get Safari working on Mac (Start use by engineers) Verify equivalent output & testing Update internal testing & infrastructure (Don't hold your breath) Remove *.xcodeproj (???)

Reviewing

https://bugs.webkit.org/show_bug.cgi?id=72816 AppleWin (November 2011 - April 2013) https://bugs.webkit.org/show_bug.cgi?id=115944 WinCairo (April 2013) https://bugs.webkit.org/show_bug.cgi?id=136003 Mac (August 2014)

Issues

Directories - MAKE PORT SPECIFIC

WebKitBuild/Release/jsc WebKitBuild/Release/JavaScriptCore.framework/JavaScriptCore (frameworks) WebKitBuild/bin/jsc WebKitBuild/lib/libJavaScriptCore.dylib

Xcode field test (can still use Xcode) Unsupported features? iOS? Few Reviewers (none at Apple)

Gyuyoung Kim Ossy Martin Robinson Rakuco Zan? (cross compiling)

New Apple reviewers?

Brent? Chris? dbates?

Feature defines conditional on OS?

Benefits

Faster build (jsc 4 min -> 3 min) Dependency tracking Not breaking EFL/GTK+ as often Not reviewing Xcode changes Centralized feature define list

New possibilities

Distributed build MinGW / Clang on Windows New Ports