Lemma is an Electromagnetics API
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

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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 "yaml-cpp")
  23. # target_link_libraries(lemmacore "matplot")
  24. endif()
  25. # find_package(yaml-cpp) does not seem to properly define library names...
  26. # a better solution than this is welcome
  27. target_link_libraries(lemmacore ${YAML_CPP_LIBRARIES})
  28. #if (WIN32)
  29. # target_link_libraries(lemmacore "libyaml-cppmdd")
  30. #else()
  31. # target_link_libraries(lemmacore "yaml-cpp")
  32. #endif()
  33. # Testing
  34. if (LEMMA_ENABLE_TESTING)
  35. add_subdirectory(testing)
  36. endif()
  37. # Install
  38. install ( TARGETS lemmacore DESTINATION ${CMAKE_INSTALL_PREFIX}/lib )
  39. install ( FILES include/LemmaCore DESTINATION ${CMAKE_INSTALL_PREFIX}/include/Lemma )
  40. install ( DIRECTORY include/ DESTINATION ${CMAKE_INSTALL_PREFIX}/include/Lemma FILES_MATCHING PATTERN "*.h" )
  41. # Examples
  42. if (LEMMA_BUILD_EXAMPLES)
  43. add_subdirectory(examples)
  44. endif()