CMakeLists.txt 835 B

1234567891011121314151617181920212223242526272829
  1. cmake_minimum_required(VERSION 3.5)
  2. project(parson C)
  3. include (GNUInstallDirs)
  4. set(PARSON_VERSION 1.4.0)
  5. add_library(parson parson.c)
  6. target_include_directories(parson PUBLIC $<INSTALL_INTERFACE:include>)
  7. set_target_properties(parson PROPERTIES PUBLIC_HEADER "parson.h")
  8. set_target_properties(parson PROPERTIES VERSION ${PARSON_VERSION})
  9. set_target_properties(parson PROPERTIES SOVERSION ${PARSON_VERSION})
  10. install(
  11. TARGETS parson
  12. EXPORT parsonTargets
  13. RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT shlib
  14. LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
  15. ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
  16. PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
  17. )
  18. install(
  19. EXPORT parsonTargets
  20. FILE parsonConfig.cmake
  21. NAMESPACE parson::
  22. DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
  23. )