# ANSLicensingSystem — DLL for license validation (also used by LabVIEW) add_library(ANSLicensingSystem SHARED ANSLicense.cpp ANSLicense.h Utility.cpp Utility.h pch.cpp pch.h framework.h dllmain.cpp ) target_include_directories(ANSLicensingSystem PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${SHARED_INCLUDE_DIR} # These are needed by consumers because ANSLicense.h / Utility.h include them ${RESEARCH_DIR} # for LabVIEWHeader/extcode.h ${ANSLIBS_DIR}/ZLIB/include # for zlib.h (Utility.h includes it) ${VCPKG_INCLUDE_DIR} # for zip.h (Utility.h includes it) ) target_include_directories(ANSLicensingSystem PRIVATE ${ANLS_ROOT}/ANSLIB/anszip ${RESEARCH_DIR}/ANS-HWiNFO/include ${RESEARCH_DIR}/spdlog-1.12.0/include ) target_link_libraries(ANSLicensingSystem PRIVATE anslicensing PRIVATE labview PRIVATE opencv PRIVATE zlib_dep PRIVATE spdlog_dep PRIVATE boost ) target_link_directories(ANSLicensingSystem PRIVATE ${RESEARCH_DIR}/ANS-HWiNFO/lib ${RESEARCH_DIR}/boost_lib ${VCPKG_LIB_DIR} ${ANLS_ROOT}/ANSLIB/anszip/x64/Release ) # BASE64 class — not exported from anslicensing.dll, compile directly target_include_directories(ANSLicensingSystem PRIVATE ${CMAKE_SOURCE_DIR}/core/anslicensing ) target_sources(ANSLicensingSystem PRIVATE ${CMAKE_SOURCE_DIR}/core/anslicensing/base64.cpp ) target_link_libraries(ANSLicensingSystem PRIVATE HWiNFO.lib OpenCL.lib OpenCLExt.lib bz2.lib zip.lib libboost_log-vc143-mt-x64-1_82.lib shlwapi.lib winhttp.lib ${WIN_COMMON_LIBS} ) target_compile_definitions(ANSLicensingSystem PRIVATE ANSLICENSE_EXPORTS ANSLICENSINGSYSTEM_EXPORTS UNICODE _UNICODE _USRDLL ) target_precompile_headers(ANSLicensingSystem PRIVATE pch.h)