sdl2_version #2
+11
@@ -432,3 +432,14 @@ FodyWeavers.xsd
|
||||
# JetBrains Rider
|
||||
*.sln.iml
|
||||
|
||||
# ---> CMake
|
||||
build/
|
||||
cmake-build-*/
|
||||
CMakeCache.txt
|
||||
CMakeFiles/
|
||||
CMakeScripts/
|
||||
*.cmake
|
||||
!CMakeLists.txt
|
||||
Makefile
|
||||
*.make
|
||||
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
cmake_minimum_required(VERSION 3.10)
|
||||
project(tank_battles_on_the_scrap_paper
|
||||
VERSION 1.0
|
||||
LANGUAGES CXX
|
||||
)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
# ── 源文件 ──
|
||||
set(SOURCES
|
||||
tank_battles_on_the_scrap_paper/main.cpp
|
||||
tank_battles_on_the_scrap_paper/map.cpp
|
||||
)
|
||||
|
||||
set(HEADERS
|
||||
tank_battles_on_the_scrap_paper/bullet.h
|
||||
tank_battles_on_the_scrap_paper/tank.h
|
||||
tank_battles_on_the_scrap_paper/map.h
|
||||
tank_battles_on_the_scrap_paper/data_config.h
|
||||
tank_battles_on_the_scrap_paper/resource.h
|
||||
)
|
||||
|
||||
# ── 可执行文件 ──
|
||||
add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS}
|
||||
tank_battles_on_the_scrap_paper/resource.rc
|
||||
)
|
||||
|
||||
# ── Windows 特定配置 ──
|
||||
if(WIN32)
|
||||
# EasyX 图形库
|
||||
target_include_directories(${PROJECT_NAME} PRIVATE
|
||||
${EASYX_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
# Windows 多媒体库
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE
|
||||
winmm.lib
|
||||
gdi32.lib
|
||||
)
|
||||
|
||||
# 控制台子系统
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||
WIN32_EXECUTABLE FALSE
|
||||
)
|
||||
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE
|
||||
_CONSOLE
|
||||
_UNICODE
|
||||
UNICODE
|
||||
)
|
||||
else()
|
||||
# 非 Windows 平台给出提示
|
||||
message(WARNING
|
||||
"${PROJECT_NAME} 依赖 EasyX (Windows-only 图形库),"
|
||||
"当前平台不支持编译。仅生成项目结构参考。"
|
||||
)
|
||||
endif()
|
||||
|
||||
# ── 复制资源文件到构建目录 ──
|
||||
file(COPY
|
||||
tank_battles_on_the_scrap_paper/images/
|
||||
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/images/
|
||||
)
|
||||
|
||||
file(COPY
|
||||
tank_battles_on_the_scrap_paper/music/
|
||||
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/music/
|
||||
)
|
||||
Reference in New Issue
Block a user