mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 14:17:34 +00:00
Meta: Move all options to targetname_options.cmake files
This common strategy of having a serenity_option() macro defined in either the Lagom or top level CMakeLists.txt allows us to do two things: First, we can more clearly see which options are Serenity-specific, Lagom-specific, or common between the target and host builds. Second, it enables the upcoming SuperBuild changes to set() the options in the SuperBuild's CMake cache and forward each target's options to the corresponding ExternalProject.
This commit is contained in:
parent
6e7cc40b18
commit
904a268872
6 changed files with 50 additions and 19 deletions
|
@ -8,7 +8,6 @@ project(
|
|||
LANGUAGES C CXX
|
||||
)
|
||||
|
||||
option(ENABLE_LAGOM_CCACHE "Enable ccache for Lagom builds" OFF)
|
||||
option(BUILD_SHARED_LIBS "Build shared libraries instead of static libraries" ON)
|
||||
if (ENABLE_OSS_FUZZ)
|
||||
set(BUILD_SHARED_LIBS OFF) # Don't use shared libraries on oss-fuzz, for ease of integration with their infrastructure
|
||||
|
@ -26,6 +25,14 @@ get_filename_component(
|
|||
|
||||
list(APPEND CMAKE_MODULE_PATH "${SERENITY_PROJECT_ROOT}/Meta/CMake")
|
||||
|
||||
if(NOT COMMAND serenity_option)
|
||||
macro(serenity_option)
|
||||
set(${ARGV})
|
||||
endmacro()
|
||||
endif()
|
||||
|
||||
include(lagom_options)
|
||||
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
if (ENABLE_LAGOM_CCACHE)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue