将CMakeLists分成主CMakeLists和分游戏CMakeLists;README里补了单独构建Tom/Demo和资源转换的命令;把残留的Gfx文案改成Core。

This commit is contained in:
HP
2026-06-07 16:42:05 +08:00
parent 964a11a215
commit b82339b185
6 changed files with 155 additions and 338 deletions
+76
View File
@@ -0,0 +1,76 @@
set(TOM_GAME_TARGET IMX6U-Game)
add_executable(${TOM_GAME_TARGET}
Main.cpp
)
imx6u_configure_app_target(${TOM_GAME_TARGET})
if(NOT USE_FRAMEBUFFER)
set(SPRITE_ASSET_TOOL_SOURCES
tools/asset_pipeline/SpriteAssetTool.cpp
${PROJECT_SOURCE_DIR}/src/Core/Asset/SpriteAssetLoader.cpp
)
if(WIN32)
add_executable(TomSpriteAssetTool ${SPRITE_ASSET_TOOL_SOURCES})
set_target_properties(TomSpriteAssetTool PROPERTIES OUTPUT_NAME SpriteAssetTool)
target_include_directories(TomSpriteAssetTool PRIVATE
${PROJECT_SOURCE_DIR}/src/Core/Asset
${PROJECT_SOURCE_DIR}/src/Core/RenderData
${PROJECT_SOURCE_DIR}/libs/Win/SDL2/include
${PROJECT_SOURCE_DIR}/libs/Win/SDL_image/include
)
target_link_directories(TomSpriteAssetTool PRIVATE
${SDL2_LIB_DIR}
${SDL2_IMAGE_LIB_DIR}
)
target_link_libraries(TomSpriteAssetTool PRIVATE SDL2main SDL2 SDL2_image)
add_custom_command(TARGET TomSpriteAssetTool POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${SDL2_DLL}"
"$<TARGET_FILE_DIR:TomSpriteAssetTool>"
)
add_custom_command(TARGET TomSpriteAssetTool POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
"${SDL2_IMAGE_DLL}"
"$<TARGET_FILE_DIR:TomSpriteAssetTool>"
)
elseif(SDL2_image_FOUND)
add_executable(TomSpriteAssetTool ${SPRITE_ASSET_TOOL_SOURCES})
set_target_properties(TomSpriteAssetTool PROPERTIES OUTPUT_NAME SpriteAssetTool)
target_include_directories(TomSpriteAssetTool PRIVATE
${PROJECT_SOURCE_DIR}/src/Core/Asset
${PROJECT_SOURCE_DIR}/src/Core/RenderData
${SDL2_image_INCLUDE_DIRS}
${SDL2_IMAGE_INCLUDE_DIRS}
)
target_link_libraries(TomSpriteAssetTool PRIVATE SDL2::SDL2)
if(TARGET SDL2_image::SDL2_image)
target_link_libraries(TomSpriteAssetTool PRIVATE SDL2_image::SDL2_image)
else()
target_link_libraries(TomSpriteAssetTool PRIVATE
${SDL2_image_LIBRARIES}
${SDL2_IMAGE_LIBRARIES}
)
endif()
else()
message(STATUS "SpriteAssetTool disabled: SDL2_image was not found")
endif()
if(TARGET TomSpriteAssetTool)
add_custom_target(ConvertTomSprites
COMMAND $<TARGET_FILE:TomSpriteAssetTool>
--batch
"${CMAKE_CURRENT_SOURCE_DIR}/assets/raw"
"${CMAKE_CURRENT_SOURCE_DIR}/assets/sprites"
--preset tom-800x480
WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}"
DEPENDS TomSpriteAssetTool
COMMENT "Converting Tom PNG assets to board-ready .sprite files"
VERBATIM
)
endif()
endif()