CMakeLists.txt: Make it easier to control options from dependee projects.

This commit is contained in:
Ben Clayton 2019-12-02 13:43:14 +00:00
parent dc3b3eaeb3
commit cc7b68a365

View File

@ -22,14 +22,20 @@ project(cppdap C CXX)
########################################################### ###########################################################
# Options # Options
########################################################### ###########################################################
option(CPPDAP_WARNINGS_AS_ERRORS "Treat warnings as errors" OFF) function (option_if_not_defined name description default)
option(CPPDAP_BUILD_EXAMPLES "Build example applications" OFF) if(NOT DEFINED ${name})
option(CPPDAP_BUILD_TESTS "Build tests" OFF) option(${name} ${description} ${default})
option(CPPDAP_ASAN "Build dap with address sanitizer" OFF) endif()
option(CPPDAP_MSAN "Build dap with memory sanitizer" OFF) endfunction()
option(CPPDAP_TSAN "Build dap with thread sanitizer" OFF)
option(CPPDAP_INSTALL_VSCODE_EXAMPLES "Build and install dap examples into vscode extensions directory" OFF) option_if_not_defined(CPPDAP_WARNINGS_AS_ERRORS "Treat warnings as errors" OFF)
option(CPPDAP_INSTALL "Create dap install target" OFF) option_if_not_defined(CPPDAP_BUILD_EXAMPLES "Build example applications" OFF)
option_if_not_defined(CPPDAP_BUILD_TESTS "Build tests" OFF)
option_if_not_defined(CPPDAP_ASAN "Build dap with address sanitizer" OFF)
option_if_not_defined(CPPDAP_MSAN "Build dap with memory sanitizer" OFF)
option_if_not_defined(CPPDAP_TSAN "Build dap with thread sanitizer" OFF)
option_if_not_defined(CPPDAP_INSTALL_VSCODE_EXAMPLES "Build and install dap examples into vscode extensions directory" OFF)
option_if_not_defined(CPPDAP_INSTALL "Create dap install target" OFF)
########################################################### ###########################################################
# Directories # Directories