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.6KB

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