43 lines
1.5 KiB
CMake
43 lines
1.5 KiB
CMake
project(arona LANGUAGES C CXX)
|
|
set(CMAKE_CXX_STANDARD 26)
|
|
set(CMAKE_C_STANDARD 11)
|
|
|
|
add_subdirectory(third_party/imgui)
|
|
|
|
# 隐藏控制台窗口
|
|
add_link_options(-mwindows)
|
|
|
|
# 遍历添加源文件
|
|
set(ALL_FILES "")
|
|
retrieve_files(${CMAKE_CURRENT_SOURCE_DIR}/src ALL_FILES)
|
|
add_executable(${PROJECT_NAME} ${ALL_FILES})
|
|
|
|
# 添加目录
|
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
|
|
|
|
# 添加链接库
|
|
target_link_libraries(${PROJECT_NAME} core imgui)
|
|
add_definitions(-DIMGUI_USER_CONFIG="widget/user_imconfig.h")
|
|
|
|
set(RESOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/resources)
|
|
file(GLOB RESOURCE_FILES ${RESOURCE_DIR}/*)
|
|
|
|
set(RESOURCE_DEST_DIR ${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}/resources)
|
|
|
|
# 添加构建后拷贝命令
|
|
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${RESOURCE_DEST_DIR}
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${RESOURCE_DIR} ${RESOURCE_DEST_DIR}
|
|
COMMENT "Copying resource files to build directory"
|
|
)
|
|
|
|
# 如果你想让资源文件在构建过程中的某个阶段参与依赖关系
|
|
add_custom_target(CopyResources ALL
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory ${RESOURCE_DEST_DIR}
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${RESOURCE_DIR} ${RESOURCE_DEST_DIR}
|
|
COMMENT "Copying resource files to build directory"
|
|
)
|
|
message(STATUS "Resource files will be copied to ${RESOURCE_DEST_DIR}")
|
|
|
|
# 确保可执行文件在拷贝资源文件之后生成
|
|
add_dependencies(${PROJECT_NAME} CopyResources) |