cmake_minimum_required(VERSION 3.27) project(HW_Lib C) set(CMAKE_C_STANDARD 23) include_directories( lib/inc ) file(GLOB LIB_SUBDIRS "lib/inc/*") foreach (LIB_SUBDIR ${LIB_SUBDIRS}) include_directories(${LIB_SUBDIR}) endforeach () file(GLOB DEMO_SUBDIRS "demo/*") foreach (DEMO_SUBDIR ${DEMO_SUBDIRS}) include_directories(${DEMO_SUBDIR}) endforeach () file(GLOB_RECURSE SOURCES "lib/src/*.*" "demo/*/*.*") add_executable(HW_Lib main.c ${SOURCES})