2017-10-05 20:39:04 +00:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# Determine CMake version and build type.
|
|
|
|
# -----------------------------------------------------------------------------
|
2019-05-18 02:38:38 +00:00
|
|
|
# NOTE: cmake_minimum_required() and project() *MUST* be the two first commands
|
2017-11-27 15:34:49 +00:00
|
|
|
# used, see https://cmake.org/cmake/help/v3.3/command/project.html -- the
|
|
|
|
# latter in particular handles loading a bunch of shared CMake definitions
|
|
|
|
# and loading the cross-compilation settings from CMAKE_TOOLCHAIN_FILE.
|
|
|
|
#
|
2021-03-05 19:12:45 +00:00
|
|
|
# cmake_minimum_required is also set inside Source/${FRAMEWORK}/CMakeLists.txt
|
|
|
|
# in support of the AppleWin internal build so this version should be kept in
|
|
|
|
# sync across those files.
|
|
|
|
#
|
|
|
|
cmake_minimum_required(VERSION 3.12)
|
2017-11-27 15:34:49 +00:00
|
|
|
project(WebKit)
|
|
|
|
|
2016-02-01 01:20:55 +00:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# Common configuration
|
|
|
|
#------------------------------------------------------------------------------
|
2020-10-26 19:54:45 +00:00
|
|
|
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/Source/cmake")
|
2016-02-01 01:20:55 +00:00
|
|
|
include(WebKitCommon)
|
|
|
|
|
2012-07-13 17:25:14 +00:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# Enable API unit tests and create a target for the test runner
|
|
|
|
# -----------------------------------------------------------------------------
|
[CMake] Unify coding style for CMake files
https://bugs.webkit.org/show_bug.cgi?id=103605
Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05
Reviewed by Laszlo Gombos.
Update cmake files(.cmake, CMakeLists.txt) with following style rules:
1. Indentation
1.1 Use spaces, not tabs.
1.2 Four spaces as indent.
2. Spacing
2.1 Place one space between control statements and their parentheses.
For eg, if (), else (), elseif (), endif (), foreach (),
endforeach (), while (), endwhile (), break ().
2.2 Do not place spaces between function and macro statements and
their parentheses. For eg, macro(), endmacro(), function(),
endfunction().
2.3 Do not place spaces between a command or function or macro and its
parentheses, or between a parenthesis and its content. For eg,
message("testing") not message( "testing") or message ("testing" )
2.4 No space at line ending.
3. Lowercase when call commands macros and functions. For eg,
add_executable() not ADD_EXECUTABLE(), set() not SET().
.:
* CMakeLists.txt:
* Source/CMakeLists.txt:
* Source/PlatformEfl.cmake:
* Source/cmake/EFLHelpers.cmake:
* Source/cmake/FindATK.cmake:
* Source/cmake/FindCFLite.cmake:
* Source/cmake/FindCairo.cmake:
* Source/cmake/FindDBus.cmake:
* Source/cmake/FindDirectX.cmake:
* Source/cmake/FindE_DBus.cmake:
* Source/cmake/FindEcore.cmake:
* Source/cmake/FindEdje.cmake:
* Source/cmake/FindEet.cmake:
* Source/cmake/FindEeze.cmake:
* Source/cmake/FindEfreet.cmake:
* Source/cmake/FindEina.cmake:
* Source/cmake/FindElementary.cmake:
* Source/cmake/FindEnchant.cmake:
* Source/cmake/FindEvas.cmake:
* Source/cmake/FindFontconfig.cmake:
* Source/cmake/FindGLIB.cmake:
* Source/cmake/FindGStreamer.cmake:
* Source/cmake/FindGperf.cmake:
* Source/cmake/FindHarfBuzz.cmake:
* Source/cmake/FindICU.cmake:
* Source/cmake/FindLibSoup.cmake:
* Source/cmake/FindQuickTimeSDK.cmake:
* Source/cmake/FindSqlite.cmake:
* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsCommon.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmake/OptionsWindows.cmake:
* Source/cmake/WebKitFS.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmake/WebKitHelpers.cmake:
* Source/cmake/WebKitMacros.cmake:
* Source/cmake/WebKitPackaging.cmake:
* Source/cmake/gtest/CMakeLists.txt:
Source/JavaScriptCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
* shell/CMakeLists.txt:
* shell/PlatformBlackBerry.cmake:
* shell/PlatformEfl.cmake:
* shell/PlatformWinCE.cmake:
Source/WebCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
* UseJSC.cmake:
* UseV8.cmake:
Source/WebKit:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
Source/WebKit/efl:
* DefaultTheme/CMakeLists.txt:
Source/WebKit2:
* CMakeLists.txt:
* PlatformEfl.cmake:
* win/WebKit2ExportGenerator.vcproj:
* win/WebKit2ExportGeneratorCommon.vsprops:
Source/WTF:
* CMakeLists.txt:
* wtf/CMakeLists.txt:
* wtf/PlatformBlackBerry.cmake:
* wtf/PlatformEfl.cmake:
* wtf/PlatformWinCE.cmake:
Tools:
* CMakeLists.txt:
* DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
* DumpRenderTree/efl/CMakeLists.txt:
* EWebLauncher/CMakeLists.txt:
* EWebLauncher/ControlTheme/CMakeLists.txt:
* MiniBrowser/efl/CMakeLists.txt:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformEfl.cmake:
* WebKitTestRunner/CMakeLists.txt:
* WebKitTestRunner/PlatformEfl.cmake:
* WinCELauncher/CMakeLists.txt:
* clang/ReportMemoryUsagePlugin/CMakeLists.txt:
Canonical link: https://commits.webkit.org/122367@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
|
|
|
if (ENABLE_API_TESTS)
|
|
|
|
enable_testing()
|
|
|
|
endif ()
|
2012-07-13 17:25:14 +00:00
|
|
|
|
2011-11-23 09:08:11 +00:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# Add module directories
|
|
|
|
# -----------------------------------------------------------------------------
|
[CMake] Unify coding style for CMake files
https://bugs.webkit.org/show_bug.cgi?id=103605
Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05
Reviewed by Laszlo Gombos.
Update cmake files(.cmake, CMakeLists.txt) with following style rules:
1. Indentation
1.1 Use spaces, not tabs.
1.2 Four spaces as indent.
2. Spacing
2.1 Place one space between control statements and their parentheses.
For eg, if (), else (), elseif (), endif (), foreach (),
endforeach (), while (), endwhile (), break ().
2.2 Do not place spaces between function and macro statements and
their parentheses. For eg, macro(), endmacro(), function(),
endfunction().
2.3 Do not place spaces between a command or function or macro and its
parentheses, or between a parenthesis and its content. For eg,
message("testing") not message( "testing") or message ("testing" )
2.4 No space at line ending.
3. Lowercase when call commands macros and functions. For eg,
add_executable() not ADD_EXECUTABLE(), set() not SET().
.:
* CMakeLists.txt:
* Source/CMakeLists.txt:
* Source/PlatformEfl.cmake:
* Source/cmake/EFLHelpers.cmake:
* Source/cmake/FindATK.cmake:
* Source/cmake/FindCFLite.cmake:
* Source/cmake/FindCairo.cmake:
* Source/cmake/FindDBus.cmake:
* Source/cmake/FindDirectX.cmake:
* Source/cmake/FindE_DBus.cmake:
* Source/cmake/FindEcore.cmake:
* Source/cmake/FindEdje.cmake:
* Source/cmake/FindEet.cmake:
* Source/cmake/FindEeze.cmake:
* Source/cmake/FindEfreet.cmake:
* Source/cmake/FindEina.cmake:
* Source/cmake/FindElementary.cmake:
* Source/cmake/FindEnchant.cmake:
* Source/cmake/FindEvas.cmake:
* Source/cmake/FindFontconfig.cmake:
* Source/cmake/FindGLIB.cmake:
* Source/cmake/FindGStreamer.cmake:
* Source/cmake/FindGperf.cmake:
* Source/cmake/FindHarfBuzz.cmake:
* Source/cmake/FindICU.cmake:
* Source/cmake/FindLibSoup.cmake:
* Source/cmake/FindQuickTimeSDK.cmake:
* Source/cmake/FindSqlite.cmake:
* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsCommon.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmake/OptionsWindows.cmake:
* Source/cmake/WebKitFS.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmake/WebKitHelpers.cmake:
* Source/cmake/WebKitMacros.cmake:
* Source/cmake/WebKitPackaging.cmake:
* Source/cmake/gtest/CMakeLists.txt:
Source/JavaScriptCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
* shell/CMakeLists.txt:
* shell/PlatformBlackBerry.cmake:
* shell/PlatformEfl.cmake:
* shell/PlatformWinCE.cmake:
Source/WebCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
* UseJSC.cmake:
* UseV8.cmake:
Source/WebKit:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
Source/WebKit/efl:
* DefaultTheme/CMakeLists.txt:
Source/WebKit2:
* CMakeLists.txt:
* PlatformEfl.cmake:
* win/WebKit2ExportGenerator.vcproj:
* win/WebKit2ExportGeneratorCommon.vsprops:
Source/WTF:
* CMakeLists.txt:
* wtf/CMakeLists.txt:
* wtf/PlatformBlackBerry.cmake:
* wtf/PlatformEfl.cmake:
* wtf/PlatformWinCE.cmake:
Tools:
* CMakeLists.txt:
* DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
* DumpRenderTree/efl/CMakeLists.txt:
* EWebLauncher/CMakeLists.txt:
* EWebLauncher/ControlTheme/CMakeLists.txt:
* MiniBrowser/efl/CMakeLists.txt:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformEfl.cmake:
* WebKitTestRunner/CMakeLists.txt:
* WebKitTestRunner/PlatformEfl.cmake:
* WinCELauncher/CMakeLists.txt:
* clang/ReportMemoryUsagePlugin/CMakeLists.txt:
Canonical link: https://commits.webkit.org/122367@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
|
|
|
add_subdirectory(Source)
|
2011-11-23 09:08:11 +00:00
|
|
|
|
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# Add tools
|
|
|
|
# -----------------------------------------------------------------------------
|
[CMake] Unify coding style for CMake files
https://bugs.webkit.org/show_bug.cgi?id=103605
Patch by Halton Huo <halton.huo@intel.com> on 2012-12-05
Reviewed by Laszlo Gombos.
Update cmake files(.cmake, CMakeLists.txt) with following style rules:
1. Indentation
1.1 Use spaces, not tabs.
1.2 Four spaces as indent.
2. Spacing
2.1 Place one space between control statements and their parentheses.
For eg, if (), else (), elseif (), endif (), foreach (),
endforeach (), while (), endwhile (), break ().
2.2 Do not place spaces between function and macro statements and
their parentheses. For eg, macro(), endmacro(), function(),
endfunction().
2.3 Do not place spaces between a command or function or macro and its
parentheses, or between a parenthesis and its content. For eg,
message("testing") not message( "testing") or message ("testing" )
2.4 No space at line ending.
3. Lowercase when call commands macros and functions. For eg,
add_executable() not ADD_EXECUTABLE(), set() not SET().
.:
* CMakeLists.txt:
* Source/CMakeLists.txt:
* Source/PlatformEfl.cmake:
* Source/cmake/EFLHelpers.cmake:
* Source/cmake/FindATK.cmake:
* Source/cmake/FindCFLite.cmake:
* Source/cmake/FindCairo.cmake:
* Source/cmake/FindDBus.cmake:
* Source/cmake/FindDirectX.cmake:
* Source/cmake/FindE_DBus.cmake:
* Source/cmake/FindEcore.cmake:
* Source/cmake/FindEdje.cmake:
* Source/cmake/FindEet.cmake:
* Source/cmake/FindEeze.cmake:
* Source/cmake/FindEfreet.cmake:
* Source/cmake/FindEina.cmake:
* Source/cmake/FindElementary.cmake:
* Source/cmake/FindEnchant.cmake:
* Source/cmake/FindEvas.cmake:
* Source/cmake/FindFontconfig.cmake:
* Source/cmake/FindGLIB.cmake:
* Source/cmake/FindGStreamer.cmake:
* Source/cmake/FindGperf.cmake:
* Source/cmake/FindHarfBuzz.cmake:
* Source/cmake/FindICU.cmake:
* Source/cmake/FindLibSoup.cmake:
* Source/cmake/FindQuickTimeSDK.cmake:
* Source/cmake/FindSqlite.cmake:
* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsCommon.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmake/OptionsWindows.cmake:
* Source/cmake/WebKitFS.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmake/WebKitHelpers.cmake:
* Source/cmake/WebKitMacros.cmake:
* Source/cmake/WebKitPackaging.cmake:
* Source/cmake/gtest/CMakeLists.txt:
Source/JavaScriptCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
* shell/CMakeLists.txt:
* shell/PlatformBlackBerry.cmake:
* shell/PlatformEfl.cmake:
* shell/PlatformWinCE.cmake:
Source/WebCore:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
* UseJSC.cmake:
* UseV8.cmake:
Source/WebKit:
* CMakeLists.txt:
* PlatformBlackBerry.cmake:
* PlatformEfl.cmake:
* PlatformWinCE.cmake:
Source/WebKit/efl:
* DefaultTheme/CMakeLists.txt:
Source/WebKit2:
* CMakeLists.txt:
* PlatformEfl.cmake:
* win/WebKit2ExportGenerator.vcproj:
* win/WebKit2ExportGeneratorCommon.vsprops:
Source/WTF:
* CMakeLists.txt:
* wtf/CMakeLists.txt:
* wtf/PlatformBlackBerry.cmake:
* wtf/PlatformEfl.cmake:
* wtf/PlatformWinCE.cmake:
Tools:
* CMakeLists.txt:
* DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
* DumpRenderTree/efl/CMakeLists.txt:
* EWebLauncher/CMakeLists.txt:
* EWebLauncher/ControlTheme/CMakeLists.txt:
* MiniBrowser/efl/CMakeLists.txt:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformEfl.cmake:
* WebKitTestRunner/CMakeLists.txt:
* WebKitTestRunner/PlatformEfl.cmake:
* WinCELauncher/CMakeLists.txt:
* clang/ReportMemoryUsagePlugin/CMakeLists.txt:
Canonical link: https://commits.webkit.org/122367@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136790 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-06 03:10:13 +00:00
|
|
|
if (ENABLE_TOOLS)
|
|
|
|
add_subdirectory(Tools)
|
|
|
|
endif ()
|
2015-04-11 21:28:34 +00:00
|
|
|
|
2020-05-09 23:35:11 +00:00
|
|
|
if (DEVELOPER_MODE)
|
2017-10-31 09:39:32 +00:00
|
|
|
add_subdirectory(PerformanceTests)
|
|
|
|
endif ()
|
2017-10-05 07:05:44 +00:00
|
|
|
|
2015-04-11 21:28:34 +00:00
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
# Print the features list last, for maximum visibility.
|
|
|
|
# -----------------------------------------------------------------------------
|
|
|
|
PRINT_WEBKIT_OPTIONS()
|