Files
Tools/fileUpdater/CMakeLists.txt

52 lines
1.3 KiB
CMake
Raw Normal View History

2026-03-15 09:19:30 +08:00
cmake_minimum_required(VERSION 3.16)
project(fileUpdater LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
if (MSVC)
add_compile_options(/utf-8)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
endif()
execute_process(
COMMAND git rev-parse --short HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE VERSION_GIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
execute_process(
COMMAND git rev-parse --abbrev-ref HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE VERSION_GIT_BRANCH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
configure_file(fileUpdaterVer.h.in fileUpdaterVer.h)
message(STATUS "Version file config to: ${CMAKE_CURRENT_BINARY_DIR}")
include_directories(${CMAKE_CURRENT_BINARY_DIR})
find_package(fmt REQUIRED)
find_package(tinyxml2 REQUIRED)
find_package(CLI11 REQUIRED)
find_package(spdlog REQUIRED)
find_package(Boost REQUIRED COMPONENTS locale filesystem nowide)
add_executable(fileUpdater main.cpp)
target_link_libraries(fileUpdater PRIVATE
fmt::fmt
Boost::locale
Boost::filesystem
Boost::nowide
CLI11::CLI11
spdlog::spdlog
tinyxml2::tinyxml2
zoost
2026-03-15 09:19:30 +08:00
)
include(GNUInstallDirs)
install(TARGETS fileUpdater
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)