Initial commit

This commit is contained in:
2025-12-19 20:08:22 +00:00
commit 2a30c0d77b
12 changed files with 444 additions and 0 deletions
+54
View File
@@ -0,0 +1,54 @@
set(TARGET_NAME ${PROJECT_NAME})
message(STATUS "Configuring ${TARGET_NAME}")
# Build configuration
configure_file(
${CMAKE_CURRENT_LIST_DIR}/Version.h.in
${CMAKE_CURRENT_LIST_DIR}/Version.h)
set(${PROJECT_NAME}_SOURCES "main.cpp")
set(${PROJECT_NAME}_INCLUDES "Version.h")
set(${PROJECT_NAME}_INCLUDE_DIRS "")
set(${PROJECT_NAME}_DEPENDENCIES "")
# Find all subdirectories
set(SUBDIRS_LIST "")
SubDirList(${CMAKE_CURRENT_LIST_DIR} SUBDIRS_LIST)
foreach(SUBDIR IN LISTS SUBDIRS_LIST)
if (NOT ${PROJECT_NAME}_BUILD_SUBDIR_${SUBDIR})
option(${PROJECT_NAME}_BUILD_SUBDIR_${SUBDIR} "Build ${SUBDIR} subdirectory" ON)
endif()
if(${PROJECT_NAME}_BUILD_SUBDIR_${SUBDIR})
file(GLOB SUBDIR_SOURCES ${CMAKE_CURRENT_LIST_DIR}/${SUBDIR}/*.cc ${CMAKE_CURRENT_LIST_DIR}/${SUBDIR}/*.cpp)
list(APPEND ${PROJECT_NAME}_SOURCES ${SUBDIR_SOURCES})
file(GLOB SUBDIR_INCLUDES ${CMAKE_CURRENT_LIST_DIR}/${SUBDIR}/*.h)
list(APPEND ${PROJECT_NAME}_INCLUDES ${SUBDIR_INCLUDES})
list(APPEND ${PROJECT_NAME}_INCLUDE_DIRS ${CMAKE_CURRENT_LIST_DIR}/${SUBDIR})
endif()
endforeach()
add_executable(${TARGET_NAME} ${${PROJECT_NAME}_SOURCES} ${${PROJECT_NAME}_INCLUDES})
if(NOT ${${PROJECT_NAME}_DEPENDENCIES})
add_dependencies(${TARGET_NAME} ${${PROJECT_NAME}_DEPENDENCIES})
target_link_libraries(${TARGET_NAME} ${${PROJECT_NAME}_DEPENDENCIES})
endif()
#include_directories(${CMAKE_CURRENT_LIST_DIR})
#target_include_directories(${TARGET_NAME} PUBLIC ${CMAKE_CURRENT_LIST_DIR})
install(TARGETS ${TARGET_NAME}
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${TARGET_NAME}/
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${TARGET_NAME}/
ARCHIVE DESTINATION ${CMAKE_INSTALL_SHAREDSTATEDIR})
message(STATUS "")
message(STATUS "${TARGET_NAME} summary")
message(STATUS "")
foreach(SUBDIR IN LISTS SUBDIRS_LIST)
message(STATUS "Build subdirectory ${SUBDIR}: \t \t ${${PROJECT_NAME}_BUILD_SUBDIR_${SUBDIR}}")
endforeach()
message(STATUS "")
+6
View File
@@ -0,0 +1,6 @@
#define PROJECT_VERSION_MAJOR @PROJECT_VERSION_MAJOR@
#define PROJECT_VERSION_MINOR @PROJECT_VERSION_MINOR@
#define PROJECT_VERSION_PATCH @PROJECT_VERSION_PATCH@
#define VERSION_BRANCH @PROJECT_VERSION_BRANCH@
#define VERSION_COMMIT @PROJECT_VERSION_COMMIT@
#define VERSION_FULL "@PROJECT_VERSION_FULL@"
+5
View File
@@ -0,0 +1,5 @@
int main(int argc, char **argv)
{
return 0;
}