Please see the breaking changes doc for details.tags/2021-05-28
| @@ -1,6 +1,37 @@ | |||||
| JUCE breaking changes | JUCE breaking changes | ||||
| ===================== | ===================== | ||||
| Develop | |||||
| ======= | |||||
| Change | |||||
| ------ | |||||
| A typo in the JUCEUtils CMake script that caused the wrong manufacturer code to | |||||
| be set in the compile definitions for a plugin was fixed. | |||||
| Possible Issues | |||||
| --------------- | |||||
| The manufacturer code for plugins built under CMake with this version of JUCE | |||||
| will differ from the manufacturer code that was generated previously. | |||||
| Workaround | |||||
| ---------- | |||||
| If you have released plugins that used the old, incorrect manufacturer code and | |||||
| wish to continue using this code for backwards compatibility, add the following | |||||
| to your `juce_add_plugin` call: | |||||
| USE_LEGACY_COMPATIBILITY_PLUGIN_CODE TRUE | |||||
| In most cases, this should not be necessary, and we recommend using the fixed | |||||
| behaviour. | |||||
| Rationale | |||||
| --------- | |||||
| This change ensures that the manufacturer codes used by CMake projects match | |||||
| the codes that would be generated by the Projucer, improving compatibility | |||||
| when transitioning from the Projucer to CMake. | |||||
| Version 6.0.2 | Version 6.0.2 | ||||
| ============= | ============= | ||||
| @@ -495,6 +495,13 @@ attributes directly to these creation functions, rather than adding them later. | |||||
| hosting plugins. Using this parameter should be preferred over using | hosting plugins. Using this parameter should be preferred over using | ||||
| `target_compile_definitions` to manually set the `JUCE_PLUGINHOST_AU` preprocessor definition. | `target_compile_definitions` to manually set the `JUCE_PLUGINHOST_AU` preprocessor definition. | ||||
| - `USE_LEGACY_COMPATIBILITY_PLUGIN_CODE` | |||||
| - May be either TRUE or FALSE (defaults to FALSE). If TRUE, will override the value of the | |||||
| preprocessor definition "JucePlugin_ManufacturerCode" with the hex equivalent of "proj". This | |||||
| option exists to maintain compatiblity with a previous, buggy version of JUCE's CMake support | |||||
| which mishandled the manufacturer code property. Most projects should leave this option set to | |||||
| its default value. | |||||
| - `COPY_PLUGIN_AFTER_BUILD` | - `COPY_PLUGIN_AFTER_BUILD` | ||||
| - Whether or not to install the plugin to the current system after building. False by default. | - Whether or not to install the plugin to the current system after building. False by default. | ||||
| If you want all of the plugins in a subdirectory to be installed automatically after building, | If you want all of the plugins in a subdirectory to be installed automatically after building, | ||||
| @@ -1527,9 +1527,15 @@ function(_juce_configure_plugin_targets target) | |||||
| get_target_property(project_version_string ${target} JUCE_VERSION) | get_target_property(project_version_string ${target} JUCE_VERSION) | ||||
| _juce_version_code(${project_version_string} project_version_hex) | _juce_version_code(${project_version_string} project_version_hex) | ||||
| get_target_property(project_manufacturer_code ${target} JUCE_PLUGIN_MANUFACTURERER_CODE) | |||||
| get_target_property(project_manufacturer_code ${target} JUCE_PLUGIN_MANUFACTURER_CODE) | |||||
| get_target_property(project_plugin_code ${target} JUCE_PLUGIN_CODE) | get_target_property(project_plugin_code ${target} JUCE_PLUGIN_CODE) | ||||
| get_target_property(use_legacy_compatibility_plugin_code ${target} JUCE_USE_LEGACY_COMPATIBILITY_PLUGIN_CODE) | |||||
| if(use_legacy_compatibility_plugin_code) | |||||
| set(project_manufacturer_code "project_manufacturer_code-NOTFOUND") | |||||
| endif() | |||||
| _juce_to_char_literal(${project_manufacturer_code} project_manufacturer_code) | _juce_to_char_literal(${project_manufacturer_code} project_manufacturer_code) | ||||
| _juce_to_char_literal(${project_plugin_code} project_plugin_code) | _juce_to_char_literal(${project_plugin_code} project_plugin_code) | ||||
| @@ -1897,6 +1903,7 @@ function(_juce_initialise_target target) | |||||
| AU_SANDBOX_SAFE | AU_SANDBOX_SAFE | ||||
| AAX_CATEGORY | AAX_CATEGORY | ||||
| PLUGINHOST_AU # Set this true if you want to host AU plugins | PLUGINHOST_AU # Set this true if you want to host AU plugins | ||||
| USE_LEGACY_COMPATIBILITY_PLUGIN_CODE | |||||
| VST_COPY_DIR | VST_COPY_DIR | ||||
| VST3_COPY_DIR | VST3_COPY_DIR | ||||