FreeKill/CMakeLists.txt.OSX

76 lines
1.8 KiB
Plaintext
Raw Permalink Normal View History

# SPDX-License-Identifier: GPL-3.0-or-later
# ------------------------------------------------------------
# 此为新月杀的项目组织文件采用CMake+QT
# 2022-01-24 新建文件夹 2023-02-21 发布v0.0.1版本
# ------------------------------------------------------------
cmake_minimum_required(VERSION 3.22)
project(FreeKill VERSION 0.4.22)
add_definitions(-DFK_VERSION=\"${CMAKE_PROJECT_VERSION}\")
set(LIBGIT2_DIR "/opt/homebrew/Cellar/libgit2/1.8.3")
set(LUA_DIR "/opt/homebrew/Cellar/lua/5.4.7")
find_package(Qt6 REQUIRED COMPONENTS
Network
)
if (NOT DEFINED FK_SERVER_ONLY)
find_package(Qt6 REQUIRED COMPONENTS
Gui
Qml
Widgets
Multimedia
QuickControls2
LinguistTools
)
else ()
add_definitions(-DFK_SERVER_ONLY)
endif()
find_package(OpenSSL)
find_package(Lua)
find_package(SQLite3)
set(CMAKE_AUTOMOC ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(REQUIRED_QT_VERSION "6.4")
include_directories("${LUA_DIR}/include/lua")
include_directories(include)
include_directories("${LIBGIT2_DIR}/include")
include_directories(src)
link_directories("${LIBGIT2_DIR}/lib")
link_directories("${LUA_DIR}/lib")
qt_add_executable(FreeKill)
target_link_libraries(FreeKill PRIVATE git2)
if (NOT DEFINED FK_SERVER_ONLY)
qt_add_translations(FreeKill
TS_FILES lang/zh_CN.ts
QM_FILES_OUTPUT_VARIABLE zh_CN.qm
TS_FILES lang/en_US.ts
QM_FILES_OUTPUT_VARIABLE en_US.qm
TS_FILES lang/vi_VN.ts
QM_FILES_OUTPUT_VARIABLE vi_VN.qm
)
endif()
add_custom_command(
TARGET FreeKill
POST_BUILD
COMMENT "Generating version file fk_ver"
COMMAND echo ${CMAKE_PROJECT_VERSION} > ${PROJECT_SOURCE_DIR}/fk_ver
COMMAND ${PROJECT_SOURCE_DIR}/genfkver.sh
)
add_subdirectory(src)
enable_testing()
add_subdirectory(test)