41 lines
1.5 KiB
CMake
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)
|