CMakeLists.txt 960 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. CMAKE_MINIMUM_REQUIRED(VERSION 3.19)
  2. PROJECT(TrackpointApp)
  3. # Include modules
  4. INCLUDE(FetchContent)
  5. # Build TrackpointApp
  6. # Set C++ mode
  7. set(CMAKE_CXX_STANDARD 20)
  8. set(CMAKE_CXX_STANDARD_REQUIRED True)
  9. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3")
  10. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3")
  11. # OpenSceneGraph
  12. INCLUDE(thirdparty/openscenegraph.cmake)
  13. # lib3mf
  14. INCLUDE(thirdparty/lib3mf.cmake)
  15. # Json
  16. INCLUDE(thirdparty/json.cmake)
  17. # Qt
  18. INCLUDE(thirdparty/qt.cmake)
  19. # The executable we want to build
  20. ADD_EXECUTABLE(TrackpointApp src/main.cpp)
  21. INCLUDE_DIRECTORIES(
  22. ${${OPENSCENEGRAPH_PREFIX}_SOURCE_DIR}/include
  23. ${${LIB3MF_PREFIX}_BINARY_DIR}/Autogenerated/Bindings/Cpp
  24. ${${JSON_PREFIX}_SOURCE_DIR}/include
  25. )
  26. TARGET_LINK_LIBRARIES(TrackpointApp
  27. osg osgViewer osgDB osgGA osgText osgUtil
  28. lib3mf
  29. nlohmann_json::nlohmann_json
  30. )
  31. # Header to have version number available in the code
  32. CONFIGURE_FILE(src/trackpointapp.hpp.in src/trackpointapp.hpp)