-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
51 lines (43 loc) · 2.18 KB
/
Copy pathCMakeLists.txt
File metadata and controls
51 lines (43 loc) · 2.18 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
cmake_minimum_required(VERSION 3.14)
include(ExternalProject)
########################################################################################################################
# Install dependencies
set(EXTERNAL_INSTALL_DIR ../External)
#-----------------------------------------------------------------------------------------------------------------------
## Google Test
### Get gtest library
ExternalProject_Add(GoogleTest
GIT_REPOSITORY https://github.com/google/googletest
SOURCE_DIR "${EXTERNAL_INSTALL_DIR}/GoogleTest/src"
BINARY_DIR "${EXTERNAL_INSTALL_DIR}/GoogleTest/build"
STAMP_DIR "${EXTERNAL_INSTALL_DIR}/GoogleTest/stamp"
TMP_DIR "${EXTERNAL_INSTALL_DIR}/GoogleTest/tmp"
GIT_TAG release-1.8.1
# Install step is not required, so turn it off
UPDATE_COMMAND ""
INSTALL_COMMAND "")
### Include gtest dependencies
include_directories(./External/GoogleTest/src/googletest/include)
### Gtest libs
set(GTEST_LIB_PATH "${CMAKE_CURRENT_SOURCE_DIR}/External/GoogleTest/build/googlemock")
#### G-Test
add_library(G-Test STATIC IMPORTED)
set_target_properties(G-Test PROPERTIES
IMPORTED_LOCATION "${GTEST_LIB_PATH}/gtest/libgtest.a")
#### G-Test_main
add_library(G-Test_main STATIC IMPORTED)
set_target_properties(G-Test_main PROPERTIES
IMPORTED_LOCATION "${GTEST_LIB_PATH}/gtest/libgtest_main.a")
########################################################################################################################
# C++17 is required
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED 17)
########################################################################################################################
# Project settings
project(EnumExtension)
include_directories(Include)
########################################################################################################################
# Tests
enable_testing ()
add_subdirectory(Tests)
########################################################################################################################