1 # -----------------------------------------------------------------------------
2 # Determine CMake version and build type.
3 # -----------------------------------------------------------------------------
4 # NOTE: cmake_minimum_required() and project() *MUST* be the two first commands
5 # used, see https://cmake.org/cmake/help/v3.3/command/project.html -- the
6 # latter in particular handles loading a bunch of shared CMake definitions
7 # and loading the cross-compilation settings from CMAKE_TOOLCHAIN_FILE.
9 # cmake_minimum_required is also set inside Source/${FRAMEWORK}/CMakeLists.txt
10 # in support of the AppleWin internal build so this version should be kept in
11 # sync across those files.
13 cmake_minimum_required(VERSION 3.12)
16 # Remove this cmake_policy() after upgrading cmake_minimum_required() to 3.20.
17 if (${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.20")
18 cmake_policy(SET CMP0116 OLD)
21 # -----------------------------------------------------------------------------
22 # Common configuration
23 #------------------------------------------------------------------------------
24 set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/Source/cmake")
27 # -----------------------------------------------------------------------------
28 # Enable API unit tests and create a target for the test runner
29 # -----------------------------------------------------------------------------
34 # -----------------------------------------------------------------------------
35 # Add module directories
36 # -----------------------------------------------------------------------------
37 add_subdirectory(Source)
39 # -----------------------------------------------------------------------------
41 # -----------------------------------------------------------------------------
43 add_subdirectory(Tools)
47 add_subdirectory(PerformanceTests)
50 # -----------------------------------------------------------------------------
51 # Print the features list last, for maximum visibility.
52 # -----------------------------------------------------------------------------
53 PRINT_WEBKIT_OPTIONS()