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.

51 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. add_subdirectory(CMake)
  17. add_subdirectory(DemoRunner)
  18. function(_juce_add_pips)
  19. file(GLOB_RECURSE headers
  20. CONFIGURE_DEPENDS LIST_DIRECTORIES false
  21. "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
  22. foreach(header IN ITEMS ${headers})
  23. juce_add_pip(${header} added_target)
  24. target_link_libraries(${added_target} PRIVATE
  25. juce::juce_recommended_config_flags
  26. juce::juce_recommended_lto_flags
  27. juce::juce_recommended_warning_flags)
  28. get_target_property(active_targets ${added_target} JUCE_ACTIVE_PLUGIN_TARGETS)
  29. if(active_targets)
  30. foreach(plugin_target IN LISTS active_targets)
  31. target_link_libraries(${plugin_target} PRIVATE
  32. juce::juce_recommended_config_flags
  33. juce::juce_recommended_lto_flags
  34. juce::juce_recommended_warning_flags)
  35. endforeach()
  36. endif()
  37. endforeach()
  38. endfunction()
  39. add_subdirectory(Audio)
  40. add_subdirectory(BLOCKS)
  41. add_subdirectory(DSP)
  42. add_subdirectory(GUI)
  43. add_subdirectory(Plugins)
  44. add_subdirectory(Utilities)