refactor: 大规模调整项目目录结构,将ChatClient和ChatServer整合为Monorepo结构,并分为两个独立文件夹:chatclient/ 和 chatserver/。更新了ChatClient的CMakeLists.txt配置以适配新结构。

This commit is contained in:
xyz
2025-09-16 19:47:22 +08:00
parent 89ff4fbac0
commit e7af9ad1d7
77 changed files with 146 additions and 168 deletions

View File

@ -1,66 +1,3 @@
cmake_minimum_required(VERSION 3.16)
project(ClientChat VERSION 0.1 LANGUAGES CXX)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# 查找模块
find_package(Qt6 COMPONENTS
Core
Protobuf
Widgets
Network
WebSockets
Multimedia
QUIET)
set(QT_VERSION_MAJOR 6)
# proto文件
file(GLOB PB_FILES
proto/*.proto
)
# 源文件
file(GLOB PROJECT_SOURCES
model/*.h model/*.cpp
network/*.h network/*.cpp
*.h *.cpp
*.ui
*.qrc
)
if(ANDROID)
# Android 平台:附加 Android 可部署资源
qt_add_executable(ClientChat
MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
# 指定自定义的 Android 部署目录
# set_property(TARGET ClientChat APPEND PROPERTY QT_ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android")
else()
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
qt_add_executable(ClientChat
MANUAL_FINALIZATION
${PROJECT_SOURCES}
)
qt_add_protobuf(ClientChat PROTO_FILES ${PB_FILES})
endif()
endif()
# 链接动态库
target_link_libraries(ClientChat PRIVATE
Qt6::Core
Qt${QT_VERSION_MAJOR}::Widgets
Qt6::Network
Qt6::WebSockets
Qt6::Multimedia
)
cmake_minimum_required(VERSION 3.1.3)
project(ChatClient)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/ChatClient)