初始化
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
project(AttendanceViewer VERSION 1.0.0 LANGUAGES CXX)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
# 自动处理Qt的MOC、UIC和RCC
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
set(CMAKE_AUTORCC ON)
|
||||
|
||||
# 查找Qt5组件
|
||||
find_package(Qt5 REQUIRED COMPONENTS
|
||||
Core
|
||||
Widgets
|
||||
Network
|
||||
)
|
||||
|
||||
# 源文件
|
||||
set(SOURCES
|
||||
src/main.cpp
|
||||
src/MainWindow.cpp
|
||||
src/AttendanceRecord.cpp
|
||||
src/TimeSlotConfig.cpp
|
||||
src/SettingsDialog.cpp
|
||||
src/StatisticsDialog.cpp
|
||||
src/NetworkApiManager.cpp
|
||||
src/ServerConfigDialog.cpp
|
||||
)
|
||||
|
||||
# 头文件
|
||||
set(HEADERS
|
||||
include/MainWindow.h
|
||||
include/AttendanceRecord.h
|
||||
include/TimeSlotConfig.h
|
||||
include/SettingsDialog.h
|
||||
include/StatisticsDialog.h
|
||||
include/NetworkApiManager.h
|
||||
include/ServerConfigDialog.h
|
||||
)
|
||||
|
||||
# 包含目录
|
||||
include_directories(${CMAKE_SOURCE_DIR}/include)
|
||||
|
||||
# 创建可执行文件
|
||||
add_executable(${PROJECT_NAME} ${SOURCES} ${HEADERS})
|
||||
|
||||
# 链接Qt库
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
Qt5::Core
|
||||
Qt5::Widgets
|
||||
Qt5::Network
|
||||
)
|
||||
|
||||
# Windows平台特定设置
|
||||
if(WIN32)
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||
WIN32_EXECUTABLE ON
|
||||
)
|
||||
endif()
|
||||
|
||||
# 安装目标
|
||||
install(TARGETS ${PROJECT_NAME}
|
||||
RUNTIME DESTINATION bin
|
||||
)
|
||||
Reference in New Issue
Block a user