CMakeLists.txt 917 B

1234567891011121314151617181920212223242526272829303132333435363738
  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(Redis ${SRCS})
  13. add_library(Poco::Redis ALIAS Redis)
  14. set_target_properties(Redis
  15. PROPERTIES
  16. VERSION ${SHARED_LIBRARY_VERSION} SOVERSION ${SHARED_LIBRARY_VERSION}
  17. OUTPUT_NAME PocoRedis
  18. DEFINE_SYMBOL Redis_EXPORTS
  19. )
  20. target_link_libraries(Redis PUBLIC Poco::Net)
  21. target_include_directories(Redis
  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. POCO_INSTALL(Redis)
  28. POCO_GENERATE_PACKAGE(Redis)
  29. if(ENABLE_TESTS)
  30. add_subdirectory(testsuite)
  31. endif()