From 2f5d4d65f7d1ae5752007e34a43040a6476b06b9 Mon Sep 17 00:00:00 2001 From: tpoole Date: Tue, 28 Feb 2017 16:15:16 +0000 Subject: [PATCH] Fixed a bug setting JUCE_STANDALONE_APPLICATION --- .../Project Saving/jucer_ProjectExporter.cpp | 29 ++++++++++--------- .../Project Saving/jucer_ProjectSaver.h | 2 +- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/extras/Projucer/Source/Project Saving/jucer_ProjectExporter.cpp b/extras/Projucer/Source/Project Saving/jucer_ProjectExporter.cpp index 95b1846dee..97c7496ec4 100644 --- a/extras/Projucer/Source/Project Saving/jucer_ProjectExporter.cpp +++ b/extras/Projucer/Source/Project Saving/jucer_ProjectExporter.cpp @@ -342,26 +342,27 @@ StringPairArray ProjectExporter::getAllPreprocessorDefs() const void ProjectExporter::addTargetSpecificPreprocessorDefs (StringPairArray& defs, const ProjectType::Target::Type targetType) const { + std::pair targetFlags[] = { + {"JucePlugin_Build_VST", ProjectType::Target::VSTPlugIn}, + {"JucePlugin_Build_VST3", ProjectType::Target::VST3PlugIn}, + {"JucePlugin_Build_AU", ProjectType::Target::AudioUnitPlugIn}, + {"JucePlugin_Build_AUv3", ProjectType::Target::AudioUnitv3PlugIn}, + {"JucePlugin_Build_RTAS", ProjectType::Target::RTASPlugIn}, + {"JucePlugin_Build_AAX", ProjectType::Target::AAXPlugIn}, + {"JucePlugin_Build_Standalone", ProjectType::Target::StandalonePlugIn} + }; + if (targetType == ProjectType::Target::SharedCodeTarget) { - defs.set ("JucePlugin_Build_VST", (shouldBuildTargetType (ProjectType::Target::VSTPlugIn) ? "1" : "0")); - defs.set ("JucePlugin_Build_VST3", (shouldBuildTargetType (ProjectType::Target::VST3PlugIn) ? "1" : "0")); - defs.set ("JucePlugin_Build_AU", (shouldBuildTargetType (ProjectType::Target::AudioUnitPlugIn) ? "1" : "0")); - defs.set ("JucePlugin_Build_AUv3", (shouldBuildTargetType (ProjectType::Target::AudioUnitv3PlugIn) ? "1" : "0")); - defs.set ("JucePlugin_Build_RTAS", (shouldBuildTargetType (ProjectType::Target::RTASPlugIn) ? "1" : "0")); - defs.set ("JucePlugin_Build_AAX", (shouldBuildTargetType (ProjectType::Target::AAXPlugIn) ? "1" : "0")); - defs.set ("JucePlugin_Build_Standalone", (shouldBuildTargetType (ProjectType::Target::StandalonePlugIn) ? "1" : "0")); + for (auto& flag : targetFlags) + defs.set (flag.first, (shouldBuildTargetType (flag.second) ? "1" : "0")); + defs.set ("JUCE_SHARED_CODE", "1"); } else if (targetType != ProjectType::Target::unspecified) { - defs.set ("JucePlugin_Build_VST", (targetType == ProjectType::Target::VSTPlugIn ? "1" : "0")); - defs.set ("JucePlugin_Build_VST3", (targetType == ProjectType::Target::VST3PlugIn ? "1" : "0")); - defs.set ("JucePlugin_Build_AU", (targetType == ProjectType::Target::AudioUnitPlugIn ? "1" : "0")); - defs.set ("JucePlugin_Build_AUv3", (targetType == ProjectType::Target::AudioUnitv3PlugIn ? "1" : "0")); - defs.set ("JucePlugin_Build_RTAS", (targetType == ProjectType::Target::RTASPlugIn ? "1" : "0")); - defs.set ("JucePlugin_Build_AAX", (targetType == ProjectType::Target::AAXPlugIn ? "1" : "0")); - defs.set ("JucePlugin_Build_Standalone", (targetType == ProjectType::Target::StandalonePlugIn ? "1" : "0")); + for (auto& flag : targetFlags) + defs.set (flag.first, (targetType == flag.second ? "1" : "0")); } } diff --git a/extras/Projucer/Source/Project Saving/jucer_ProjectSaver.h b/extras/Projucer/Source/Project Saving/jucer_ProjectSaver.h index 008c27d492..efab3a949b 100644 --- a/extras/Projucer/Source/Project Saving/jucer_ProjectSaver.h +++ b/extras/Projucer/Source/Project Saving/jucer_ProjectSaver.h @@ -394,7 +394,7 @@ private: // Fabian TODO out << "//==============================================================================" << newLine << "#ifndef JUCE_STANDALONE_APPLICATION" << newLine - << " #ifdef JucePlugin_Build_Standalone" << newLine + << " #if defined(JucePlugin_Name) && defined(JucePlugin_Build_Standalone)" << newLine << " #define JUCE_STANDALONE_APPLICATION JucePlugin_Build_Standalone" << newLine << " #else" << newLine << " #define JUCE_STANDALONE_APPLICATION " << isStandaloneApplication << newLine