xlnt/CMakeLists.txt

40 lines
1.2 KiB
CMake
Raw Normal View History

2017-03-06 11:39:27 +08:00
cmake_minimum_required(VERSION 3.2)
2017-01-21 22:04:10 +08:00
project(xlnt_all)
2015-11-03 03:22:13 +08:00
2016-10-28 06:40:20 +08:00
# This indicates to CMakeLists in subdirectories that they are part of a larger project
2017-01-21 22:04:10 +08:00
set(COMBINED_PROJECT TRUE)
# Library type
option(STATIC "Set to ON to build xlnt as a static library instead of a shared library" OFF)
# Optional components
2016-10-28 06:40:20 +08:00
option(SAMPLES "Set to ON to build executable code samples (in ./samples)" OFF)
option(BENCHMARKS "Set to ON to build performance benchmarks (in ./benchmarks)" OFF)
# Platform specific options
if(NOT MSVC)
2016-10-28 06:40:20 +08:00
option(COVERAGE "Generate coverage data using gcov" OFF)
2015-10-27 04:54:21 +08:00
endif()
# Add components according to selected options
2016-10-28 06:40:20 +08:00
if(SAMPLES)
add_subdirectory(samples)
endif()
2015-10-15 01:16:25 +08:00
2016-10-28 06:40:20 +08:00
if(BENCHMARKS)
add_subdirectory(benchmarks)
endif()
find_package(PythonInterp)
find_package(CxxTest)
if(PYTHONINTERP_FOUND AND CXXTEST_FOUND)
add_subdirectory(tests)
elseif(NOT PYTHONINTERP_FOUND)
message("Python couldn't be found in the current PATH but is required for building tests. Tests will be skipped for now.")
else()
message("CxxTest couldn't be found in the current PATH but is required for building tests. Tests will be skipped for now.")
endif()
add_subdirectory(source)