HDSDK/Protocol/CMakeLists.txt

41 lines
1.5 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(HDSDK LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 11)
set(ENABLE_SDK ON)
if (ENABLE_SDK)
list(APPEND SDK_FILES
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/tinyxml2.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/HXml.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/SDKInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HSDKInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HEthernetInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HGeneralInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HLightInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HOTherInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HScreenFunctionInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HSDKInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HSensorInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HTimeInfo.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data/HProgramInfo.cpp
)
endif()
add_library(HDSDK SHARED
HDSDK.cpp
${SDK_FILES}
)
if (ENABLE_SDK)
target_include_directories(HDSDK PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../SDK)
target_include_directories(HDSDK PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../SDK/Data)
endif()
target_include_directories(HDSDK PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(HDSDK PRIVATE -static-libgcc -static-libstdc++)
set_target_properties(HDSDK PROPERTIES LINK_FLAGS "-nodefaultlibs")
set(CMAKE_EXE_LINKER_FLAGS "/NODEFAULTLIB")
add_definitions(-DUSE_HD_LIB)