improve scalability - automatically add sub projects to the main one

We want to make CMake scale cleanly so that:
Adding a new tutorial folder is easy
Each executable is independent

each subproject would still require CMakeLists
This commit is contained in:
dl92
2026-01-08 00:05:41 +00:00
parent c2fc82707e
commit 685f69610c

View File

@@ -1,13 +1,27 @@
cmake_minimum_required(VERSION 3.21)
cmake_minimum_required(VERSION 3.25)
project(cpp_learning
project(LearningCPP
VERSION 0.1
LANGUAGES CXX
)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
add_subdirectory(tut1)
add_subdirectory(tut2)
#add_subdirectory(tut1)
#add_subdirectory(tut2)
# vcpkg toolchain (already integrated)
if(DEFINED ENV{VCPKG_ROOT})
set(CMAKE_TOOLCHAIN_FILE "$ENV{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake" CACHE STRING "")
endif()
# Add subdirectories automatically
file(GLOB SUBDIRS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/tut*)
foreach(subdir ${SUBDIRS})
if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${subdir})
add_subdirectory(${subdir})
endif()
endforeach()