Sha256: 2e8e3eed7e08e949ebe1a871ea24bfc75eb2593038d7e9a05d34b9af409e96d4
Contents?: true
Size: 1.08 KB
Versions: 1
Compression:
Stored size: 1.08 KB
Contents
# Integration with build systems ## CMake You can use the following CMake script to automatically fetch Catch from github and configure it as an external project: ```CMake cmake_minimum_required(VERSION 2.8.8) project(catch_builder CXX) include(ExternalProject) ExternalProject_Add( catch PREFIX ${CMAKE_BINARY_DIR}/catch GIT_REPOSITORY https://github.com/philsquared/Catch.git TIMEOUT 10 UPDATE_COMMAND ${GIT_EXECUTABLE} pull CONFIGURE_COMMAND "" BUILD_COMMAND "" INSTALL_COMMAND "" LOG_DOWNLOAD ON ) # Expose required variable (CATCH_INCLUDE_DIR) to parent scope ExternalProject_Get_Property(catch source_dir) set(CATCH_INCLUDE_DIR ${source_dir}/include CACHE INTERNAL "Path to include folder for Catch") ``` If you put it in, e.g., `${PROJECT_SRC_DIR}/${EXT_PROJECTS_DIR}/catch/`, you can use it in your project by adding the following to your root CMake file: ```CMake # Includes Catch in the project: add_subdirectory(${EXT_PROJECTS_DIR}/catch) include_directories(${CATCH_INCLUDE_DIR} ${COMMON_INCLUDES}) enable_testing(true) # Enables unit-testing. ```
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
redsnow-0.3.2 | ext/snowcrash/ext/markdown-parser/test/ext/Catch/docs/build-systems.md |