CMAKE_MINIMUM_REQUIRED(VERSION 3.16) PROJECT(VirtualMath C) SET(CMAKE_C_STANDARD 11) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/parser/include) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/include) AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/memory MEM_LIST) AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/parser PASER_LIST) AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/src SRC_LIST) AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/file FILE_LIST) AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/gc GC_LIST) AUX_SOURCE_DIRECTORY(${PROJECT_SOURCE_DIR}/argument ARGUMENT_LIST) MESSAGE("project dir is ${PROJECT_SOURCE_DIR}") ADD_LIBRARY(VirtualMathCore STATIC ${SRC_LIST} ${GC_LIST} ${PASER_LIST} ${MEM_LIST} ${FILE_LIST} ${ARGUMENT_LIST}) ADD_EXECUTABLE(VirtualMath main.c) TARGET_LINK_LIBRARIES(VirtualMath VirtualMathCore)