|
1 |
| -cmake_minimum_required(VERSION 3.10) |
| 1 | +cmake_minimum_required(VERSION 3.20) |
2 | 2 |
|
3 | 3 | get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME)
|
4 | 4 | string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME})
|
5 |
| -project(${PROJECT_NAME} C CXX) |
| 5 | +project(${PROJECT_NAME} LANGUAGES CXX) |
6 | 6 |
|
7 | 7 | set(CMAKE_CXX_STANDARD 23)
|
8 | 8 | set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
9 | 9 |
|
10 |
| -file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") |
11 |
| -file(GLOB_RECURSE lib_source_list "../../lib/src/*.cpp" "../../lib/src/*.hpp") |
12 |
| -file(GLOB_RECURSE main_source_list "src/main.cpp") |
13 |
| -file(GLOB_RECURSE test_source_list "src/*.cpp") |
| 10 | +file(GLOB_RECURSE SOURCE_LIST "src/*.cpp" "src/*.hpp") |
| 11 | +file(GLOB_RECURSE MAIN_SOURCE_LIST "src/main.cpp") |
| 12 | +set(TEST_SOURCE_LIST ${SOURCE_LIST}) |
14 | 13 | file(GLOB_RECURSE test_list "src/*test.cpp")
|
15 | 14 |
|
16 |
| -list(REMOVE_ITEM test_source_list ${main_source_list}) |
17 |
| -list(REMOVE_ITEM source_list ${test_list}) |
| 15 | +list(REMOVE_ITEM TEST_SOURCE_LIST ${MAIN_SOURCE_LIST}) |
| 16 | +list(REMOVE_ITEM SOURCE_LIST ${test_list}) |
18 | 17 |
|
19 | 18 | include_directories(${PROJECT_NAME} PUBLIC src)
|
20 | 19 |
|
21 |
| -add_executable(${PROJECT_NAME} ${source_list} ${lib_source_list}) |
| 20 | +find_library(Utils ../) |
| 21 | + |
| 22 | +add_executable(${PROJECT_NAME} ${SOURCE_LIST}) |
| 23 | +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) |
22 | 24 |
|
23 | 25 | # Locate GTest
|
24 | 26 | enable_testing()
|
25 | 27 | find_package(GTest REQUIRED)
|
26 | 28 | include_directories(${GTEST_INCLUDE_DIRS})
|
27 | 29 |
|
28 |
| -find_library(Utils ../) |
29 |
| -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) |
30 |
| - |
31 | 30 | # Link runTests with what we want to test and the GTest and pthread library
|
32 |
| -add_executable(${PROJECT_NAME}_tests ${test_source_list}) |
| 31 | +add_executable(${PROJECT_NAME}_tests ${TEST_SOURCE_LIST}) |
33 | 32 | target_link_libraries(
|
34 | 33 | ${PROJECT_NAME}_tests
|
35 | 34 | GTest::gtest_main
|
|
0 commit comments