You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.5 KiB
40 lines
1.5 KiB
|
5 days ago
|
# 最低 CMake 版本要求(兼容大多数环境)
|
||
|
|
cmake_minimum_required(VERSION 3.10)
|
||
|
|
|
||
|
|
# 项目名称(自定义,比如 BusbarFlightDistance)
|
||
|
|
project(BusbarFlightDistance)
|
||
|
|
|
||
|
|
# 指定 C++ 标准(C++14,和你之前的编译参数一致)
|
||
|
|
set(CMAKE_CXX_STANDARD 14)
|
||
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||
|
|
|
||
|
|
# 定义宏(解决 VOXEL_API 的 dllimport/dllexport 问题,对应之前的 -DBUSBAR_ROUTER_STATIC)
|
||
|
|
add_definitions(-DBUSBAR_ROUTER_STATIC)
|
||
|
|
|
||
|
|
# 兼容 GCC 的 -fpermissive(解决语法警告)
|
||
|
|
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
||
|
|
add_compile_options(-fpermissive)
|
||
|
|
endif()
|
||
|
|
|
||
|
|
# 头文件目录(对应之前的 -I../include)
|
||
|
|
include_directories(
|
||
|
|
${PROJECT_SOURCE_DIR}/include # ../include 对应这里的绝对路径
|
||
|
|
${PROJECT_SOURCE_DIR}/src # 可选:如果 src 下也有头文件,加上
|
||
|
|
)
|
||
|
|
|
||
|
|
# 查找所有源文件(自动收集 src 下的所有 .cpp,不用手动列)
|
||
|
|
file(GLOB SOURCES
|
||
|
|
${PROJECT_SOURCE_DIR}/src/*.cpp # 匹配 src 下所有 .cpp
|
||
|
|
# 如果有其他目录的源文件,继续加:
|
||
|
|
# ${PROJECT_SOURCE_DIR}/utils/*.cpp
|
||
|
|
)
|
||
|
|
|
||
|
|
# 生成可执行文件(main.exe)
|
||
|
|
add_executable(main ${SOURCES})
|
||
|
|
|
||
|
|
# 可选:如果需要链接系统库(比如 Windows 的静态库)
|
||
|
|
if (WIN32)
|
||
|
|
# Windows 下可能需要的库(比如 msvcrt、kernel32,按需添加)
|
||
|
|
target_link_libraries(main PRIVATE kernel32 user32 gdi32 winspool comdlg32 advapi32 shell32 ole32 oleaut32 uuid odbc32 odbccp32)
|
||
|
|
endif()
|