53 lines
1.3 KiB
CMake
Raw Normal View History

2025-04-28 12:25:20 +08:00
cmake_minimum_required(VERSION 3.16)
project(XNWeightBalanceInterface LANGUAGES CXX)
if(NOT fastcdr_FOUND)
find_package(fastcdr 2 REQUIRED)
endif()
if(NOT fastdds_FOUND)
find_package(fastdds 3 REQUIRED)
endif()
find_package(OpenSSL REQUIRED)
add_library(XNWeightBalanceInterface SHARED
XNWeightBalance.hpp
XNWeightBalanceCdrAux.hpp
XNWeightBalanceCdrAux.ipp
XNWeightBalancePubSubTypes.hpp
XNWeightBalancePubSubTypes.cxx
XNWeightBalanceTypeObjectSupport.hpp
XNWeightBalanceTypeObjectSupport.cxx
XNWeightBalanceInterface.hpp
XNWeightBalanceInterface.cxx
)
target_link_libraries(XNWeightBalanceInterface PRIVATE
Qt${QT_VERSION_MAJOR}::Core
fastcdr
fastdds
OpenSSL::SSL
OpenSSL::Crypto
)
target_compile_definitions(XNWeightBalanceInterface PRIVATE XNWEIGHTBALANCEINTERFACE_LIBRARY)
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
set(CMAKE_INSTALL_PREFIX "${XNCore_PATH}/Models" CACHE PATH "Install path prefix" FORCE)
endif()
include(GNUInstallDirs)
install(TARGETS XNWeightBalanceInterface
BUNDLE DESTINATION .
LIBRARY DESTINATION .
RUNTIME DESTINATION .
)
# 添加自定义命令和目标以拷贝配置文件
file(GLOB IDL_FILE "*.idl")
# 使用 install 命令在安装时拷贝配置文件
install(FILES ${IDL_FILE} DESTINATION ${CMAKE_INSTALL_PREFIX})