Main Lemma Repository
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CMakeLists.txt 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. add_subdirectory("src")
  2. add_library( lemmacore ${SOURCE} )
  3. target_include_directories( lemmacore PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include" )
  4. set_target_properties(lemmacore PROPERTIES
  5. VERSION "${LEMMA_VERSION_NOQUOTES}"
  6. SOVERSION "${LEMMA_VERSION_MAJOR}.${LEMMA_VERSION_MINOR}"
  7. PROJECT_LABEL "LemmaCore ${LABEL_SUFFIX}"
  8. CXX_STANDARD 14
  9. CXX_STANDARD_REQUIRED ON
  10. )
  11. # External project dependencies
  12. #add_dependencies(lemmacore YAML_CPP)
  13. if (LEMMA_TINYXML_SUPPORT)
  14. add_dependencies(lemmacore TINYXML2)
  15. endif()
  16. if (LEMMA_MATIO_SUPPORT)
  17. add_dependencies(lemmacore MATIO)
  18. endif()
  19. # Linking
  20. if ( LEMMA_VTK6_SUPPORT OR LEMMA_VTK7_SUPPORT OR LEMMA_VTK8_SUPPORT )
  21. target_link_libraries(lemmacore ${VTK_LIBRARIES})
  22. # target_link_libraries(lemmacore "matplot")
  23. endif()
  24. # find_package(yaml-cpp) does not seem to properly define library names...
  25. # a better solution than this is welcome
  26. target_link_libraries(lemmacore ${YAML_CPP_LIBRARIES})
  27. #if (WIN32)
  28. # target_link_libraries(lemmacore "libyaml-cppmdd")
  29. #else()
  30. # target_link_libraries(lemmacore "yaml-cpp")
  31. #endif()
  32. # Testing
  33. if (LEMMA_ENABLE_TESTING)
  34. add_subdirectory(testing)
  35. endif()
  36. # Install
  37. install ( TARGETS lemmacore DESTINATION ${CMAKE_INSTALL_PREFIX}/lib )
  38. install ( FILES include/LemmaCore DESTINATION ${CMAKE_INSTALL_PREFIX}/include/Lemma )
  39. install ( DIRECTORY include/ DESTINATION ${CMAKE_INSTALL_PREFIX}/include/Lemma FILES_MATCHING PATTERN "*.h" )
  40. # Examples
  41. if (LEMMA_BUILD_EXAMPLES)
  42. add_subdirectory(examples)
  43. endif()