Initial commit
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
# Copy compile_commands.json to source directory
|
||||
if (CMAKE_EXPORT_COMPILE_COMMANDS)
|
||||
add_custom_target(
|
||||
CopyCompileCommands ALL
|
||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different
|
||||
${CMAKE_BINARY_DIR}/compile_commands.json
|
||||
${CMAKE_SOURCE_DIR}/compile_commands.json
|
||||
COMMENT "Copying compile_commands.json to source directory"
|
||||
)
|
||||
endif()
|
||||
@@ -0,0 +1,11 @@
|
||||
# Generate the config.h file
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/config/config.h.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/config.h
|
||||
)
|
||||
|
||||
configure_file(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/config/resources.qrc.in
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/resources.qrc
|
||||
)
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
set(ROOT_DIR ${CMAKE_SOURCE_DIR})
|
||||
|
||||
file(GLOB_RECURSE HEADER_FILES "${ROOT_DIR}/*.h")
|
||||
file(GLOB_RECURSE SOURCE_FILES "${ROOT_DIR}/*.cpp")
|
||||
file(GLOB_RECURSE CMAKE_FILES "${ROOT_DIR}/*.cmake")
|
||||
file(GLOB_RECURSE CMAKE_LISTS_FILES "${ROOT_DIR}/CMakeLists.txt")
|
||||
|
||||
set(MOC_FILTER ".*/moc_.*")
|
||||
set(BUILD_DIR_FILTER ".*/build/.*")
|
||||
|
||||
list(FILTER HEADER_FILES EXCLUDE REGEX "${MOC_FILTER}")
|
||||
list(FILTER HEADER_FILES EXCLUDE REGEX "${BUILD_DIR_FILTER}")
|
||||
|
||||
list(FILTER SOURCE_FILES EXCLUDE REGEX "${MOC_FILTER}")
|
||||
list(FILTER SOURCE_FILES EXCLUDE REGEX "${BUILD_DIR_FILTER}")
|
||||
|
||||
list(FILTER CMAKE_FILES EXCLUDE REGEX "${BUILD_DIR_FILTER}")
|
||||
list(FILTER CMAKE_LISTS_FILES EXCLUDE REGEX "${BUILD_DIR_FILTER}")
|
||||
|
||||
execute_process(COMMAND wc -l ${HEADER_FILES} OUTPUT_VARIABLE HEADER_COUNT ERROR_QUIET)
|
||||
execute_process(COMMAND wc -l ${SOURCE_FILES} OUTPUT_VARIABLE SOURCE_COUNT ERROR_QUIET)
|
||||
execute_process(COMMAND wc -l ${CMAKE_FILES} OUTPUT_VARIABLE CMAKE_COUNT ERROR_QUIET)
|
||||
execute_process(COMMAND wc -l ${CMAKE_LISTS_FILES} OUTPUT_VARIABLE CMAKE_LISTS_COUNT ERROR_QUIET)
|
||||
|
||||
file(MAKE_DIRECTORY "${CMAKE_SOURCE_DIR}/artifacts")
|
||||
|
||||
set(HEADER_FILE "${CMAKE_SOURCE_DIR}/artifacts/header_lines_count.txt")
|
||||
set(SOURCE_FILE "${CMAKE_SOURCE_DIR}/artifacts/source_lines_count.txt")
|
||||
set(CMAKE_FILE "${CMAKE_SOURCE_DIR}/artifacts/cmake_lines_count.txt")
|
||||
set(CMAKE_LISTS_FILE "${CMAKE_SOURCE_DIR}/artifacts/cmake_lists_lines_count.txt")
|
||||
|
||||
file(WRITE ${HEADER_FILE} "${HEADER_COUNT}")
|
||||
file(WRITE ${SOURCE_FILE} "${SOURCE_COUNT}")
|
||||
file(WRITE ${CMAKE_FILE} "${CMAKE_COUNT}")
|
||||
file(WRITE ${CMAKE_LISTS_FILE} "${CMAKE_LISTS_COUNT}")
|
||||
|
||||
message(STATUS "Header line count written to: ${HEADER_FILE}")
|
||||
message(STATUS "Source line count written to: ${SOURCE_FILE}")
|
||||
message(STATUS "CMake line count written to: ${CMAKE_FILE}")
|
||||
message(STATUS "CMakeLists.txt line count written to: ${CMAKE_LISTS_FILE}")
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
# Ensure artifacts directory exists
|
||||
file(MAKE_DIRECTORY "${ARTIFACTS_DIR}")
|
||||
|
||||
# Collecting all files in the project, excluding artifacts and build directories
|
||||
file(GLOB_RECURSE PROJECT_FILES
|
||||
RELATIVE "${CMAKE_SOURCE_DIR}"
|
||||
"*"
|
||||
)
|
||||
list(FILTER PROJECT_FILES EXCLUDE REGEX "^(artifacts/|build/|external/)")
|
||||
|
||||
# Generate directory tree
|
||||
add_custom_command(
|
||||
OUTPUT "${ARTIFACTS_DIR}/tree.txt"
|
||||
COMMAND tree -I 'artifacts|build|external' "${CMAKE_SOURCE_DIR}" > "${ARTIFACTS_DIR}/tree.txt"
|
||||
WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
|
||||
DEPENDS ${PROJECT_FILES}
|
||||
COMMENT "Generating directory tree in ${ARTIFACTS_DIR}/tree.txt"
|
||||
)
|
||||
|
||||
# Create GenerateTree target
|
||||
add_custom_target(GenerateTree ALL DEPENDS "${ARTIFACTS_DIR}/tree.txt")
|
||||
@@ -0,0 +1,2 @@
|
||||
# Generate UI files
|
||||
qt_wrap_ui(UI_HEADERS ${UI_FILES})
|
||||
Reference in New Issue
Block a user