Files
ANSCORE/integrations/ANSIO/CMakeLists.txt

47 lines
1.1 KiB
CMake

# ANSIO — IO Box communication DLL (cJSON + mbedtls)
add_library(ANSIO SHARED
dllmain.cpp
pch.cpp
pch.h
framework.h
# IOBox sources (embedded)
IOBox/cJSON.c
IOBox/cJSON_Utils.c
IOBox/iobox_api.cpp
IOBox/iobox_api.h
IOBox/mbedtls/aes.c
IOBox/mbedtls/base64.c
IOBox/mbedtls/sha256.c
)
target_include_directories(ANSIO PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
${SHARED_INCLUDE_DIR}
)
target_include_directories(ANSIO PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}/IOBox
)
target_link_libraries(ANSIO
PRIVATE ANSLicensingSystem
PRIVATE anslicensing
PRIVATE labview
)
target_compile_definitions(ANSIO PRIVATE UNICODE _UNICODE NOMINMAX ANSIO_EXPORTS _USRDLL)
if(WIN32)
target_link_libraries(ANSIO PRIVATE ${WIN_COMMON_LIBS})
else()
target_link_libraries(ANSIO PRIVATE ${UNIX_COMMON_LIBS})
endif()
# C files must skip C++ precompiled headers and compile as C
set_source_files_properties(
IOBox/cJSON.c IOBox/cJSON_Utils.c
IOBox/mbedtls/aes.c IOBox/mbedtls/base64.c IOBox/mbedtls/sha256.c
PROPERTIES SKIP_PRECOMPILE_HEADERS ON LANGUAGE C
)
target_precompile_headers(ANSIO PRIVATE pch.h)