project(Common LANGUAGES C CXX) find_package(Qt5 REQUIRED COMPONENTS Core Network Widgets) set(SRC HttpHelper.h HttpHelper.cpp FileHelper.h FileHelper.cpp ConfigHelper.h ConfigHelper.cpp PolicyHelper.h PolicyHelper.cpp LocalStateHelper.h LocalStateHelper.cpp TicketHelper.h TicketHelper.cpp IntegrityHelper.h IntegrityHelper.cpp DeviceIdentityHelper.h DeviceIdentityHelper.cpp ) add_library(Common STATIC ${SRC}) # Common编译自身需要OpenSSL头文件 target_include_directories(Common PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} PRIVATE ${OPENSSL_INC} ) # 链接库、库目录通过INTERFACE传递给所有依赖Common的exe target_link_directories(Common INTERFACE $<$:${OPENSSL_LIB_DEBUG}> $<$:${OPENSSL_LIB_RELEASE}> ) target_link_libraries(Common PRIVATE Qt5::Core Qt5::Network Qt5::Widgets INTERFACE libssl.lib libcrypto.lib )