CMakeLists.txt 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # Sources
  2. file(GLOB SRCS_G "src/*.cpp")
  3. POCO_SOURCES_AUTO(SRCS ${SRCS_G})
  4. # Headers
  5. file(GLOB_RECURSE HDRS_G "include/*.h")
  6. POCO_HEADERS_AUTO(SRCS ${HDRS_G})
  7. # Version Resource
  8. if(MSVC AND BUILD_SHARED_LIBS)
  9. source_group("Resources" FILES ${PROJECT_SOURCE_DIR}/DLLVersion.rc)
  10. list(APPEND SRCS ${PROJECT_SOURCE_DIR}/DLLVersion.rc)
  11. endif()
  12. add_library(NetSSL ${SRCS})
  13. add_library(Poco::NetSSL ALIAS NetSSL)
  14. set_target_properties(NetSSL
  15. PROPERTIES
  16. VERSION ${SHARED_LIBRARY_VERSION} SOVERSION ${SHARED_LIBRARY_VERSION}
  17. OUTPUT_NAME PocoNetSSL
  18. DEFINE_SYMBOL NetSSL_EXPORTS
  19. )
  20. target_link_libraries(NetSSL PUBLIC Poco::Crypto Poco::Util Poco::Net)
  21. target_include_directories(NetSSL
  22. PUBLIC
  23. $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
  24. $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
  25. PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src
  26. )
  27. if(MSVC AND POCO_DISABLE_INTERNAL_OPENSSL AND OPENSSL_USE_STATIC_LIBS)
  28. target_link_libraries(NetSSL PUBLIC ws2_32.lib Crypt32.lib)
  29. endif()
  30. POCO_INSTALL(NetSSL)
  31. POCO_GENERATE_PACKAGE(NetSSL)
  32. if(ENABLE_TESTS)
  33. add_subdirectory(samples)
  34. add_subdirectory(testsuite)
  35. endif()