The JUCE cross-platform C++ framework, with DISTRHO/KXStudio specific changes
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.

53 lines
1.7KB

  1. # ==============================================================================
  2. #
  3. # This file is part of the JUCE 6 technical preview.
  4. # Copyright (c) 2020 - Raw Material Software Limited
  5. #
  6. # You may use this code under the terms of the GPL v3
  7. # (see www.gnu.org/licenses).
  8. #
  9. # For this technical preview, this file is not subject to commercial licensing.
  10. #
  11. # JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
  12. # EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
  13. # DISCLAIMED.
  14. #
  15. # ==============================================================================
  16. set(CMAKE_FOLDER examples)
  17. add_subdirectory(CMake)
  18. add_subdirectory(DemoRunner)
  19. function(_juce_add_pips)
  20. file(GLOB headers
  21. CONFIGURE_DEPENDS LIST_DIRECTORIES false
  22. "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
  23. foreach(header IN ITEMS ${headers})
  24. juce_add_pip(${header} added_target)
  25. target_link_libraries(${added_target} PRIVATE
  26. juce::juce_recommended_config_flags
  27. juce::juce_recommended_lto_flags
  28. juce::juce_recommended_warning_flags)
  29. get_target_property(active_targets ${added_target} JUCE_ACTIVE_PLUGIN_TARGETS)
  30. if(active_targets)
  31. foreach(plugin_target IN LISTS active_targets)
  32. target_link_libraries(${plugin_target} PRIVATE
  33. juce::juce_recommended_config_flags
  34. juce::juce_recommended_lto_flags
  35. juce::juce_recommended_warning_flags)
  36. endforeach()
  37. endif()
  38. endforeach()
  39. endfunction()
  40. add_subdirectory(Audio)
  41. add_subdirectory(BLOCKS)
  42. add_subdirectory(DSP)
  43. add_subdirectory(GUI)
  44. add_subdirectory(Plugins)
  45. add_subdirectory(Utilities)