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.

81 lines
3.0KB

  1. # ==============================================================================
  2. #
  3. # This file is part of the JUCE library.
  4. # Copyright (c) 2020 - Raw Material Software Limited
  5. #
  6. # JUCE is an open source library subject to commercial or open-source
  7. # licensing.
  8. #
  9. # By using JUCE, you agree to the terms of both the JUCE 6 End-User License
  10. # Agreement and JUCE Privacy Policy (both effective as of the 16th June 2020).
  11. #
  12. # End User License Agreement: www.juce.com/juce-6-licence
  13. # Privacy Policy: www.juce.com/juce-privacy-policy
  14. #
  15. # Or: You may also use this code under the terms of the GPL v3 (see
  16. # www.gnu.org/licenses).
  17. #
  18. # JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
  19. # EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
  20. # DISCLAIMED.
  21. #
  22. # ==============================================================================
  23. juce_add_gui_app(DemoRunner
  24. BUNDLE_ID com.juce.demorunner
  25. ICON_BIG ${CMAKE_CURRENT_SOURCE_DIR}/Source/JUCEAppIcon.png
  26. NEEDS_CURL TRUE
  27. NEEDS_WEB_BROWSER TRUE
  28. MICROPHONE_PERMISSION_ENABLED TRUE
  29. CAMERA_PERMISSION_ENABLED TRUE
  30. BLUETOOTH_PERMISSION_ENABLED TRUE
  31. FILE_SHARING_ENABLED TRUE
  32. DOCUMENT_BROWSER_ENABLED TRUE
  33. REQUIRES_FULL_SCREEN FALSE
  34. IPAD_SCREEN_ORIENTATIONS UIInterfaceOrientationPortrait
  35. UIInterfaceOrientationPortraitUpsideDown
  36. UIInterfaceOrientationLandscapeLeft
  37. UIInterfaceOrientationLandscapeRight
  38. IPHONE_SCREEN_ORIENTATIONS UIInterfaceOrientationPortrait
  39. UIInterfaceOrientationPortraitUpsideDown
  40. UIInterfaceOrientationLandscapeLeft
  41. UIInterfaceOrientationLandscapeRight)
  42. juce_generate_juce_header(DemoRunner)
  43. target_sources(DemoRunner PRIVATE
  44. Source/Demos/DemoPIPs1.cpp
  45. Source/Demos/DemoPIPs2.cpp
  46. Source/Demos/JUCEDemos.cpp
  47. Source/Main.cpp
  48. Source/UI/DemoContentComponent.cpp
  49. Source/UI/MainComponent.cpp)
  50. target_compile_definitions(DemoRunner PRIVATE
  51. PIP_JUCE_EXAMPLES_DIRECTORY_STRING="${JUCE_SOURCE_DIR}/examples"
  52. JUCE_ALLOW_STATIC_NULL_VARIABLES=0
  53. JUCE_DEMO_RUNNER=1
  54. JUCE_STRICT_REFCOUNTEDPOINTER=1
  55. JUCE_UNIT_TESTS=1
  56. JUCE_USE_CAMERA=1
  57. JUCE_USE_CURL=1
  58. JUCE_USE_MP3AUDIOFORMAT=1
  59. JUCE_WEB_BROWSER=1)
  60. target_link_libraries(DemoRunner PRIVATE
  61. juce::juce_analytics
  62. juce::juce_audio_utils
  63. juce::juce_box2d
  64. juce::juce_dsp
  65. juce::juce_opengl
  66. juce::juce_osc
  67. juce::juce_product_unlocking
  68. juce::juce_video
  69. juce::juce_recommended_config_flags
  70. juce::juce_recommended_lto_flags
  71. juce::juce_recommended_warning_flags)
  72. foreach(folder IN ITEMS ../Assets ../Audio ../DSP ../GUI ../Utilities)
  73. juce_add_bundle_resources_directory(DemoRunner ${folder})
  74. endforeach()