From a611c076227dee22cf3215bafa32db38fa1b7d08 Mon Sep 17 00:00:00 2001 From: Ivan Khokhlov Date: Sat, 8 Feb 2025 09:29:15 +0000 Subject: [PATCH] feat: update cmake files --- CMakeLists.txt | 2 +- additional_tasks/template_task/CMakeLists.txt | 8 ++++++-- lib/CMakeLists.txt | 7 +++++-- sandbox/template/CMakeLists.txt | 11 ++++++----- task_02/CMakeLists.txt | 11 ++++++----- task_03/CMakeLists.txt | 11 ++++++----- task_04/CMakeLists.txt | 11 ++++++----- task_05/CMakeLists.txt | 11 ++++++----- task_06/CMakeLists.txt | 11 ++++++----- task_07/CMakeLists.txt | 11 ++++++----- task_08/CMakeLists.txt | 11 ++++++----- task_09/CMakeLists.txt | 11 ++++++----- 12 files changed, 66 insertions(+), 50 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 06c6f26a..476a4a2c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,4 +18,4 @@ foreach(dir ${tasks_dirs}) ELSE() CONTINUE() ENDIF() -endforeach() +endforeach() \ No newline at end of file diff --git a/additional_tasks/template_task/CMakeLists.txt b/additional_tasks/template_task/CMakeLists.txt index febbeb1f..eed780fc 100644 --- a/additional_tasks/template_task/CMakeLists.txt +++ b/additional_tasks/template_task/CMakeLists.txt @@ -4,7 +4,7 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") @@ -25,12 +25,16 @@ enable_testing() find_package(GTest REQUIRED) include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( ${PROJECT_NAME}_tests GTest::gtest_main + Utils ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 167a8fd4..71a63846 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -1,7 +1,10 @@ cmake_minimum_required(VERSION 3.10) +project(Utils) + +set(CMAKE_CXX_STANDARD 23) file(GLOB_RECURSE lib_source_list "src/*.cpp" "src/*.hpp") -add_library(Utils ${lib_source_list}) +add_library(${PROJECT_NAME} ${lib_source_list}) -target_include_directories(Utils PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) +target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src) \ No newline at end of file diff --git a/sandbox/template/CMakeLists.txt b/sandbox/template/CMakeLists.txt index ae49c5db..81f4f599 100644 --- a/sandbox/template/CMakeLists.txt +++ b/sandbox/template/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../../lib/src/*.cpp" "../../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,18 +16,20 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) + target_link_libraries( ${PROJECT_NAME}_tests GTest::gtest_main @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_02/CMakeLists.txt b/task_02/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_02/CMakeLists.txt +++ b/task_02/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_03/CMakeLists.txt b/task_03/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_03/CMakeLists.txt +++ b/task_03/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_04/CMakeLists.txt b/task_04/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_04/CMakeLists.txt +++ b/task_04/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_05/CMakeLists.txt b/task_05/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_05/CMakeLists.txt +++ b/task_05/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_06/CMakeLists.txt b/task_06/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_06/CMakeLists.txt +++ b/task_06/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_07/CMakeLists.txt b/task_07/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_07/CMakeLists.txt +++ b/task_07/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_08/CMakeLists.txt b/task_08/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_08/CMakeLists.txt +++ b/task_08/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file diff --git a/task_09/CMakeLists.txt b/task_09/CMakeLists.txt index 0e239848..ece21019 100644 --- a/task_09/CMakeLists.txt +++ b/task_09/CMakeLists.txt @@ -4,11 +4,10 @@ get_filename_component(PROJECT_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE " " "_" PROJECT_NAME ${PROJECT_NAME}) project(${PROJECT_NAME} C CXX) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) set(CMAKE_CXX_STANDARD_REQUIRED ON) file(GLOB_RECURSE source_list "src/*.cpp" "src/*.hpp") -file(GLOB_RECURSE lib_source_list "../lib/src/*.cpp" "../lib/src/*.hpp") file(GLOB_RECURSE main_source_list "src/main.cpp") file(GLOB_RECURSE test_source_list "src/*.cpp") file(GLOB_RECURSE test_list "src/*test.cpp") @@ -17,16 +16,18 @@ list(REMOVE_ITEM test_source_list ${main_source_list}) list(REMOVE_ITEM source_list ${test_list}) include_directories(${PROJECT_NAME} PUBLIC src) -include_directories(${PROJECT_NAME} PUBLIC ../lib/src) add_executable(${PROJECT_NAME} ${source_list}) -target_link_libraries(${PROJECT_NAME} PUBLIC Utils) # Locate GTest enable_testing() find_package(GTest REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) +find_library(Utils ../) +target_link_libraries(${PROJECT_NAME} PUBLIC Utils) + # Link runTests with what we want to test and the GTest and pthread library add_executable(${PROJECT_NAME}_tests ${test_source_list}) target_link_libraries( @@ -36,4 +37,4 @@ target_link_libraries( ) include(GoogleTest) -gtest_discover_tests(${PROJECT_NAME}_tests) +gtest_discover_tests(${PROJECT_NAME}_tests) \ No newline at end of file