forked from nfrechette/sjson-cpp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
36 lines (26 loc) · 1.12 KB
/
CMakeLists.txt
File metadata and controls
36 lines (26 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
cmake_minimum_required (VERSION 3.2)
project(sjson-cpp CXX)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake")
include(CMakeUtils)
include(CMakeCompiler)
include(CMakePlatforms)
set(CPU_INSTRUCTION_SET false CACHE STRING "CPU instruction set")
# Grab all of our include files
file(GLOB_RECURSE SJSON_CPP_INCLUDE_FILES LIST_DIRECTORIES false
${PROJECT_SOURCE_DIR}/includes/*.h
${PROJECT_SOURCE_DIR}/*.md
${PROJECT_SOURCE_DIR}/cmake/*.cmake
${PROJECT_SOURCE_DIR}/tools/vs_visualizers/*.natvis)
create_source_groups("${SJSON_CPP_INCLUDE_FILES}" ${PROJECT_SOURCE_DIR})
file(GLOB SJSON_CPP_ROOT_FILES LIST_DIRECTORIES false
${PROJECT_SOURCE_DIR}/*.md
${PROJECT_SOURCE_DIR}/*.py)
# Create a dummy target so they show up in the IDE
add_custom_target(sjson-cpp SOURCES ${SJSON_CPP_INCLUDE_FILES} ${SJSON_CPP_ROOT_FILES})
if(CMAKE_CONFIGURATION_TYPES)
set(CMAKE_CONFIGURATION_TYPES Debug Release)
set(CMAKE_CONFIGURATION_TYPES "${CMAKE_CONFIGURATION_TYPES}" CACHE STRING "Reset the configurations to what we need" FORCE)
endif()
enable_testing()
# Add other projects
add_subdirectory("${PROJECT_SOURCE_DIR}/tests")