CMakeLists.txt 964 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(CppParser ${SRCS})
  13. add_library(Poco::CppParser ALIAS CppParser)
  14. set_target_properties(CppParser
  15. PROPERTIES
  16. VERSION ${SHARED_LIBRARY_VERSION} SOVERSION ${SHARED_LIBRARY_VERSION}
  17. OUTPUT_NAME PocoCppParser
  18. DEFINE_SYMBOL CppParser_EXPORTS
  19. )
  20. target_link_libraries(CppParser PUBLIC Poco::Foundation)
  21. target_include_directories(CppParser
  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(CppParser)
  28. POCO_GENERATE_PACKAGE(CppParser)
  29. if(ENABLE_TESTS)
  30. add_subdirectory(testsuite)
  31. endif()