diff options
| author | Chris Thrasher | 2025-04-07 22:09:59 -0600 |
|---|---|---|
| committer | Chris Thrasher | 2025-04-26 10:38:36 -0600 |
| commit | 8cfca70ae879ba59699b224e8d371b8bb9fa12ff (patch) | |
| tree | e53b243d3d2b7acc41c27cbd21624e1e28b655cb /src | |
| parent | 6aac11e17d4fe662e430a8bbfd4bf6886ca7f935 (diff) | |
| download | catch3-8cfca70ae879ba59699b224e8d371b8bb9fa12ff.tar.gz | |
Fix formatting of CMake files
2 spaces seems to be the more common indentation level so that's what
I unified around.
Diffstat (limited to 'src')
| -rw-r--r-- | src/CMakeLists.txt | 161 |
1 files changed, 75 insertions, 86 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c40de040..f7f9ea84 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -40,7 +40,6 @@ set(BENCHMARK_SOURCES ) set(BENCHMARK_FILES ${BENCHMARK_HEADERS} ${BENCHMARK_SOURCES}) - set(IMPL_HEADERS "${PROJECT_BINARY_DIR}/generated-includes/catch2/catch_user_config.hpp" ${SOURCES_DIR}/catch_user_config.hpp.in @@ -348,25 +347,23 @@ source_group("generated headers" ) add_library(Catch2 ${ALL_FILES}) -if (CATCH_ENABLE_REPRODUCIBLE_BUILD) - add_build_reproducibility_settings(Catch2) +if(CATCH_ENABLE_REPRODUCIBLE_BUILD) + add_build_reproducibility_settings(Catch2) endif() add_library(Catch2::Catch2 ALIAS Catch2) -if (ANDROID) - target_link_libraries(Catch2 PRIVATE log) +if(ANDROID) + target_link_libraries(Catch2 PRIVATE log) endif() set_target_properties(Catch2 PROPERTIES - DEBUG_POSTFIX "d" - VERSION ${PROJECT_VERSION} - SOVERSION ${PROJECT_VERSION}) + DEBUG_POSTFIX "d" + VERSION ${PROJECT_VERSION} + SOVERSION ${PROJECT_VERSION} +) # require C++14 -target_compile_features(Catch2 - PUBLIC - cxx_std_14 -) +target_compile_features(Catch2 PUBLIC cxx_std_14) configure_file( "${SOURCES_DIR}/catch_user_config.hpp.in" @@ -382,105 +379,97 @@ target_include_directories(Catch2 add_library(Catch2WithMain - ${SOURCES_DIR}/internal/catch_main.cpp + ${SOURCES_DIR}/internal/catch_main.cpp ) -if (CATCH_ENABLE_REPRODUCIBLE_BUILD) - add_build_reproducibility_settings(Catch2WithMain) +if(CATCH_ENABLE_REPRODUCIBLE_BUILD) + add_build_reproducibility_settings(Catch2WithMain) endif() add_library(Catch2::Catch2WithMain ALIAS Catch2WithMain) target_link_libraries(Catch2WithMain PUBLIC Catch2) set_target_properties(Catch2WithMain PROPERTIES OUTPUT_NAME "Catch2Main" - VERSION ${PROJECT_VERSION} - SOVERSION ${PROJECT_VERSION} + VERSION ${PROJECT_VERSION} + SOVERSION ${PROJECT_VERSION} ) set_target_properties(Catch2WithMain PROPERTIES DEBUG_POSTFIX "d") -if (NOT_SUBPROJECT) - # create and install an export set for catch target as Catch2::Catch - install( - TARGETS - Catch2 - Catch2WithMain - EXPORT - Catch2Targets - LIBRARY DESTINATION - ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION - ${CMAKE_INSTALL_LIBDIR} - RUNTIME DESTINATION - ${CMAKE_INSTALL_BINDIR} - ) - +if(NOT_SUBPROJECT) + # create and install an export set for catch target as Catch2::Catch + install( + TARGETS + Catch2 + Catch2WithMain + EXPORT + Catch2Targets + LIBRARY DESTINATION + ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION + ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION + ${CMAKE_INSTALL_BINDIR} + ) - install( - EXPORT - Catch2Targets - NAMESPACE - Catch2:: - DESTINATION - ${CATCH_CMAKE_CONFIG_DESTINATION} - ) - # Install the headers - install( - DIRECTORY - "${SOURCES_DIR}" - "${PROJECT_BINARY_DIR}/generated-includes/catch2" # Also install the generated header - DESTINATION - "${CMAKE_INSTALL_INCLUDEDIR}" - FILES_MATCHING - PATTERN "*.hpp" - ) + install( + EXPORT + Catch2Targets + NAMESPACE + Catch2:: + DESTINATION + ${CATCH_CMAKE_CONFIG_DESTINATION} + ) + # Install the headers + install( + DIRECTORY + "${SOURCES_DIR}" + "${PROJECT_BINARY_DIR}/generated-includes/catch2" # Also install the generated header + DESTINATION + "${CMAKE_INSTALL_INCLUDEDIR}" + FILES_MATCHING + PATTERN "*.hpp" + ) endif() # Some tests require a full recompilation of Catch2 lib with different # compilation flags. They can link against this target to recompile all # the sources into the binary. -if (CATCH_BUILD_EXAMPLES OR CATCH_BUILD_EXTRA_TESTS) - add_library(Catch2_buildall_interface INTERFACE) - target_sources(Catch2_buildall_interface INTERFACE - ${ALL_FILES} - # Also include main entry point - ${SOURCES_DIR}/internal/catch_main.cpp - ) - target_include_directories(Catch2_buildall_interface - INTERFACE - $<BUILD_INTERFACE:${SOURCES_DIR}/..> - $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/generated-includes> - $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> - ) - target_compile_definitions(Catch2_buildall_interface - INTERFACE - CATCH_CONFIG_STATIC - ) - target_compile_features(Catch2_buildall_interface - INTERFACE - cxx_std_14 - ) +if(CATCH_BUILD_EXAMPLES OR CATCH_BUILD_EXTRA_TESTS) + add_library(Catch2_buildall_interface INTERFACE) + target_sources(Catch2_buildall_interface INTERFACE + ${ALL_FILES} + # Also include main entry point + ${SOURCES_DIR}/internal/catch_main.cpp + ) + target_include_directories(Catch2_buildall_interface + INTERFACE + $<BUILD_INTERFACE:${SOURCES_DIR}/..> + $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/generated-includes> + $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> + ) + target_compile_definitions(Catch2_buildall_interface INTERFACE CATCH_CONFIG_STATIC) + target_compile_features(Catch2_buildall_interface INTERFACE cxx_std_14) endif() list(APPEND CATCH_WARNING_TARGETS Catch2 Catch2WithMain) set(CATCH_WARNING_TARGETS ${CATCH_WARNING_TARGETS} PARENT_SCOPE) - # We still do not support building dynamic library with hidden visibility # so we want to check & warn users if they do this. However, we won't abort # the configuration step so that we don't have to also provide an override. -if (BUILD_SHARED_LIBS) +if(BUILD_SHARED_LIBS) + set_target_properties(Catch2 Catch2WithMain + PROPERTIES + WINDOWS_EXPORT_ALL_SYMBOLS ON + ) + + get_target_property(_VisPreset Catch2 CXX_VISIBILITY_PRESET) + if(NOT MSVC AND _VisPreset STREQUAL "hidden") set_target_properties(Catch2 Catch2WithMain PROPERTIES - WINDOWS_EXPORT_ALL_SYMBOLS ON + CXX_VISIBILITY_PRESET "default" + VISIBILITY_INLINES_HIDDEN OFF ) - - get_target_property(_VisPreset Catch2 CXX_VISIBILITY_PRESET) - if (NOT MSVC AND _VisPreset STREQUAL "hidden") - set_target_properties(Catch2 Catch2WithMain - PROPERTIES - CXX_VISIBILITY_PRESET "default" - VISIBILITY_INLINES_HIDDEN OFF - ) - message(WARNING "Setting Catch2's visibility to default." - " Hidden visibility is not supported.") - endif() + message(WARNING "Setting Catch2's visibility to default." + " Hidden visibility is not supported.") + endif() endif() |