CMakeLists.txt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. cmake_minimum_required (VERSION 3.14)
  2. include(CMakePrintHelpers)
  3. set(Python_FIND_REGISTRY "LAST")
  4. find_package (Python COMPONENTS Interpreter)
  5. function(sdf TARGET)
  6. if (DOT)
  7. add_custom_command(TARGET ${TARGET} PRE_BUILD
  8. BYPRODUCTS ${CMAKE_CURRENT_SOURCE_DIR}/test.pdf
  9. COMMAND ${DOT} -Tpdf -o ${CMAKE_CURRENT_SOURCE_DIR}/test.pdf ${CMAKE_CURRENT_SOURCE_DIR}/test.dot
  10. WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  11. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/test.dot
  12. VERBATIM
  13. )
  14. endif()
  15. add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/generated/scheduler.cpp
  16. ${CMAKE_CURRENT_SOURCE_DIR}/test.dot
  17. COMMAND ${Python_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/graph.py
  18. WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  19. DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/graph.py
  20. VERBATIM
  21. )
  22. target_sources(${TARGET} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/generated/scheduler.cpp)
  23. endfunction()
  24. set(SDFDIR ${CMAKE_CURRENT_SOURCE_DIR}/../sdf)
  25. function(add_sdf_dir TARGET)
  26. target_include_directories(${TARGET} PRIVATE ${SDFDIR}/src)
  27. target_include_directories(${TARGET} PRIVATE ${SDFDIR}/nodes/cpp)
  28. target_include_directories(${TARGET} PRIVATE ${ROOT}/CMSIS/Core)
  29. target_include_directories(${TARGET} PRIVATE ${ROOT}/CMSIS/DSP/Include)
  30. endfunction()
  31. project(Examples)
  32. set(DSP ${ROOT}/CMSIS/DSP)
  33. # Add DSP folder to module path
  34. list(APPEND CMAKE_MODULE_PATH ${DSP})
  35. add_subdirectory(${DSP}/Source bin_dsp)
  36. add_subdirectory(example1 bin_example1)
  37. add_subdirectory(example2 bin_example2)
  38. add_subdirectory(example3 bin_example3)
  39. add_subdirectory(example6 bin_example6)