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.

102 lines
3.9KB

  1. /*
  2. ==============================================================================
  3. This file is part of the JUCE library - "Jules' Utility Class Extensions"
  4. Copyright 2004-11 by Raw Material Software Ltd.
  5. ------------------------------------------------------------------------------
  6. JUCE can be redistributed and/or modified under the terms of the GNU General
  7. Public License (Version 2), as published by the Free Software Foundation.
  8. A copy of the license is included in the JUCE distribution, or can be found
  9. online at www.gnu.org/licenses.
  10. JUCE is distributed in the hope that it will be useful, but WITHOUT ANY
  11. WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
  12. A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  13. ------------------------------------------------------------------------------
  14. To release a closed-source product which uses JUCE, commercial licenses are
  15. available: visit www.rawmaterialsoftware.com/juce for more information.
  16. ==============================================================================
  17. */
  18. // The following checks should cause a compile error if you've forgotten to
  19. // define all your plugin settings properly..
  20. #if ! (JucePlugin_Build_VST || JucePlugin_Build_AU || JucePlugin_Build_RTAS || JucePlugin_Build_Standalone)
  21. #error "You need to enable at least one plugin format!"
  22. #endif
  23. #ifndef JucePlugin_IsSynth
  24. #error "You need to define the JucePlugin_IsSynth value!"
  25. #endif
  26. #ifndef JucePlugin_ManufacturerCode
  27. #error "You need to define the JucePlugin_ManufacturerCode value!"
  28. #endif
  29. #ifndef JucePlugin_PluginCode
  30. #error "You need to define the JucePlugin_PluginCode value!"
  31. #endif
  32. #ifndef JucePlugin_ProducesMidiOutput
  33. #error "You need to define the JucePlugin_ProducesMidiOutput value!"
  34. #endif
  35. #ifndef JucePlugin_WantsMidiInput
  36. #error "You need to define the JucePlugin_WantsMidiInput value!"
  37. #endif
  38. #ifndef JucePlugin_MaxNumInputChannels
  39. #error "You need to define the JucePlugin_MaxNumInputChannels value!"
  40. #endif
  41. #ifndef JucePlugin_MaxNumOutputChannels
  42. #error "You need to define the JucePlugin_MaxNumOutputChannels value!"
  43. #endif
  44. #ifndef JucePlugin_PreferredChannelConfigurations
  45. #error "You need to define the JucePlugin_PreferredChannelConfigurations value!"
  46. #endif
  47. #ifdef JucePlugin_Latency
  48. #error "JucePlugin_Latency is now deprecated - instead, call the AudioProcessor::setLatencySamples() method if your plugin has a non-zero delay"
  49. #endif
  50. #ifndef JucePlugin_SilenceInProducesSilenceOut
  51. #error "You need to define the JucePlugin_SilenceInProducesSilenceOut value!"
  52. #endif
  53. #ifndef JucePlugin_EditorRequiresKeyboardFocus
  54. #error "You need to define the JucePlugin_EditorRequiresKeyboardFocus value!"
  55. #endif
  56. #ifndef JucePlugin_TailLengthSeconds
  57. #error "You need to define the JucePlugin_TailLengthSeconds value!"
  58. #endif
  59. //==============================================================================
  60. #if __LP64__ && (defined(__APPLE_CPP__) || defined(__APPLE_CC__)) // (disable VSTs and RTAS in a 64-bit mac build)
  61. #undef JucePlugin_Build_RTAS
  62. #endif
  63. #if _WIN64 // (disable RTAS in a 64-bit windows build)
  64. #undef JucePlugin_Build_RTAS
  65. #endif
  66. //==============================================================================
  67. #if JucePlugin_Build_RTAS && _MSC_VER && ! defined (JucePlugin_WinBag_path)
  68. #error "You need to define the JucePlugin_WinBag_path value!"
  69. #endif
  70. #if JucePlugin_Build_AU && ! defined (JucePlugin_AUCocoaViewClassName)
  71. #error "You need to define the JucePlugin_AUCocoaViewClassName value!"
  72. #endif
  73. #if (defined(__APPLE_CPP__) || defined(__APPLE_CC__)) && ! defined (JUCE_ObjCExtraSuffix)
  74. #error "To avoid objective-C name clashes with other plugins, you need to define the JUCE_ObjCExtraSuffix value as a global definition for your project!"
  75. #endif