Browse Source

Introjucer: avoided adding unnecessary .r files in plugin builds that don't target RTAS or AU.

tags/2021-05-28
jules 11 years ago
parent
commit
9191455677
4 changed files with 28 additions and 20 deletions
  1. +25
    -12
      extras/Introjucer/Source/Project/jucer_Module.cpp
  2. +0
    -1
      extras/Introjucer/Source/Project/jucer_Module.h
  3. +1
    -5
      extras/audio plugin demo/Builds/MacOSX/JuceDemoPlugin.xcodeproj/project.pbxproj
  4. +2
    -2
      modules/juce_audio_plugin_client/juce_module_info

+ 25
- 12
extras/Introjucer/Source/Project/jucer_Module.cpp View File

@@ -467,16 +467,6 @@ static bool exporterTargetMatches (const String& test, String target)
return false; return false;
} }
bool LibraryModule::fileTargetMatches (ProjectExporter& exporter, const String& target)
{
if (exporter.isXcode()) return exporterTargetMatches ("xcode", target);
if (exporter.isWindows()) return exporterTargetMatches ("msvc", target);
if (exporter.isLinux()) return exporterTargetMatches ("linux", target);
if (exporter.isAndroid()) return exporterTargetMatches ("android", target);
if (exporter.isCodeBlocks()) return exporterTargetMatches ("mingw", target);
return target.isEmpty();
}
struct FileSorter struct FileSorter
{ {
static int compareElements (const File& f1, const File& f2) static int compareElements (const File& f1, const File& f2)
@@ -503,6 +493,30 @@ void LibraryModule::findWildcardMatches (const File& localModuleFolder, const St
result.addArray (tempList); result.addArray (tempList);
} }
static bool fileTargetMatches (ProjectExporter& exporter, const String& target)
{
if (exporter.isXcode()) return exporterTargetMatches ("xcode", target);
if (exporter.isWindows()) return exporterTargetMatches ("msvc", target);
if (exporter.isLinux()) return exporterTargetMatches ("linux", target);
if (exporter.isAndroid()) return exporterTargetMatches ("android", target);
if (exporter.isCodeBlocks()) return exporterTargetMatches ("mingw", target);
return target.isEmpty();
}
static bool fileShouldBeAdded (ProjectExporter& exporter, const var& properties)
{
if (! fileTargetMatches (exporter, properties["target"].toString()))
return false;
if (properties["RTASOnly"] && ! shouldBuildRTAS (exporter.getProject()).getValue())
return false;
if (properties["AudioUnitOnly"] && ! shouldBuildAU (exporter.getProject()).getValue())
return false;
return true;
}
void LibraryModule::findAndAddCompiledCode (ProjectExporter& exporter, ProjectSaver& projectSaver, void LibraryModule::findAndAddCompiledCode (ProjectExporter& exporter, ProjectSaver& projectSaver,
const File& localModuleFolder, Array<File>& result) const const File& localModuleFolder, Array<File>& result) const
{ {
@@ -515,8 +529,7 @@ void LibraryModule::findAndAddCompiledCode (ProjectExporter& exporter, ProjectSa
const var& file = files->getReference(i); const var& file = files->getReference(i);
const String filename (file ["file"].toString()); const String filename (file ["file"].toString());
if (filename.isNotEmpty()
&& fileTargetMatches (exporter, file ["target"].toString()))
if (filename.isNotEmpty() && fileShouldBeAdded (exporter, file))
{ {
const File compiledFile (localModuleFolder.getChildFile (filename)); const File compiledFile (localModuleFolder.getChildFile (filename));
result.add (compiledFile); result.add (compiledFile);


+ 0
- 1
extras/Introjucer/Source/Project/jucer_Module.h View File

@@ -103,7 +103,6 @@ private:
mutable Array<File> sourceFiles; mutable Array<File> sourceFiles;
File getModuleHeaderFile (const File& folder) const; File getModuleHeaderFile (const File& folder) const;
static bool fileTargetMatches (ProjectExporter& exporter, const String& target);
void findWildcardMatches (const File& localModuleFolder, const String& wildcardPath, Array<File>& result) const; void findWildcardMatches (const File& localModuleFolder, const String& wildcardPath, Array<File>& result) const;
void findAndAddCompiledCode (ProjectExporter&, ProjectSaver&, const File& localModuleFolder, Array<File>& result) const; void findAndAddCompiledCode (ProjectExporter&, ProjectSaver&, const File& localModuleFolder, Array<File>& result) const;


+ 1
- 5
extras/audio plugin demo/Builds/MacOSX/JuceDemoPlugin.xcodeproj/project.pbxproj View File

@@ -61,7 +61,6 @@
E01E4438B2F0F3C3CE4F5240 = {isa = PBXBuildFile; fileRef = 9C9DEB7FB75C42C4F47AF999; settings = {COMPILER_FLAGS = "-w"; }; }; E01E4438B2F0F3C3CE4F5240 = {isa = PBXBuildFile; fileRef = 9C9DEB7FB75C42C4F47AF999; settings = {COMPILER_FLAGS = "-w"; }; };
7732BED2285AE6572CC2BF11 = {isa = PBXBuildFile; fileRef = F7454AD16EE05969CCF5FD7C; settings = {COMPILER_FLAGS = "-w"; }; }; 7732BED2285AE6572CC2BF11 = {isa = PBXBuildFile; fileRef = F7454AD16EE05969CCF5FD7C; settings = {COMPILER_FLAGS = "-w"; }; };
C99CF7958D391CB2F97CC5F8 = {isa = PBXBuildFile; fileRef = 2D4B766DA1C66FA2857D80F7; settings = {COMPILER_FLAGS = "-w"; }; }; C99CF7958D391CB2F97CC5F8 = {isa = PBXBuildFile; fileRef = 2D4B766DA1C66FA2857D80F7; settings = {COMPILER_FLAGS = "-w"; }; };
1F20808BDEB51EAFFA12781B = {isa = PBXBuildFile; fileRef = 0444196DEC527454F5783BAD; };
60CA6D3CBBC03A25C7B86C35 = {isa = PBXBuildFile; fileRef = 3755479207D218969425F91F; }; 60CA6D3CBBC03A25C7B86C35 = {isa = PBXBuildFile; fileRef = 3755479207D218969425F91F; };
0AA1C3259E16BA80C124622D = {isa = PBXBuildFile; fileRef = 1D4AFBEC703C6F373B292D9A; settings = {COMPILER_FLAGS = "-w"; }; }; 0AA1C3259E16BA80C124622D = {isa = PBXBuildFile; fileRef = 1D4AFBEC703C6F373B292D9A; settings = {COMPILER_FLAGS = "-w"; }; };
6AAB8C946DA0E3E1B96EEF7E = {isa = PBXBuildFile; fileRef = 1E496F7BF3B3C59E5ECACCDE; }; 6AAB8C946DA0E3E1B96EEF7E = {isa = PBXBuildFile; fileRef = 1E496F7BF3B3C59E5ECACCDE; };
@@ -82,7 +81,6 @@
0294A7C8FF1EB1FF9E2D96AF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; }; 0294A7C8FF1EB1FF9E2D96AF = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_GenericAudioProcessorEditor.h"; path = "../../../../modules/juce_audio_processors/processors/juce_GenericAudioProcessorEditor.h"; sourceTree = "SOURCE_ROOT"; };
029A39CA475ED19FDBF0724F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; }; 029A39CA475ED19FDBF0724F = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_KeyboardFocusTraverser.h"; path = "../../../../modules/juce_gui_basics/keyboard/juce_KeyboardFocusTraverser.h"; sourceTree = "SOURCE_ROOT"; };
036748C1D26A3D752C189108 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; }; 036748C1D26A3D752C189108 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_ResamplingAudioSource.cpp"; path = "../../../../modules/juce_audio_basics/sources/juce_ResamplingAudioSource.cpp"; sourceTree = "SOURCE_ROOT"; };
0444196DEC527454F5783BAD = {isa = PBXFileReference; lastKnownFileType = file.r; name = "juce_RTAS_MacResources.r"; path = "../../../../modules/juce_audio_plugin_client/RTAS/juce_RTAS_MacResources.r"; sourceTree = "SOURCE_ROOT"; };
04555664F9106966CC7A7C16 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; }; 04555664F9106966CC7A7C16 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_MidiKeyboardComponent.cpp"; path = "../../../../modules/juce_audio_utils/gui/juce_MidiKeyboardComponent.cpp"; sourceTree = "SOURCE_ROOT"; };
047015CE891900C7636A08D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; }; 047015CE891900C7636A08D6 = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = "juce_Viewport.cpp"; path = "../../../../modules/juce_gui_basics/layout/juce_Viewport.cpp"; sourceTree = "SOURCE_ROOT"; };
04F7098D328A593B1EC368F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; }; 04F7098D328A593B1EC368F4 = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "juce_PropertiesFile.h"; path = "../../../../modules/juce_data_structures/app_properties/juce_PropertiesFile.h"; sourceTree = "SOURCE_ROOT"; };
@@ -2057,7 +2055,6 @@
9C9DEB7FB75C42C4F47AF999, 9C9DEB7FB75C42C4F47AF999,
F7454AD16EE05969CCF5FD7C, F7454AD16EE05969CCF5FD7C,
2D4B766DA1C66FA2857D80F7, 2D4B766DA1C66FA2857D80F7,
0444196DEC527454F5783BAD,
3755479207D218969425F91F, 3755479207D218969425F91F,
1D4AFBEC703C6F373B292D9A, 1D4AFBEC703C6F373B292D9A,
1E496F7BF3B3C59E5ECACCDE, 1E496F7BF3B3C59E5ECACCDE,
@@ -2186,8 +2183,7 @@
0D832C784AB07BFDE57BCB92 = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( 0D832C784AB07BFDE57BCB92 = {isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = (
B003460B11C0B7C1CC07E666, ); runOnlyForDeploymentPostprocessing = 0; }; B003460B11C0B7C1CC07E666, ); runOnlyForDeploymentPostprocessing = 0; };
D95827C1509280C88845BCB4 = {isa = PBXRezBuildPhase; buildActionMask = 2147483647; files = ( D95827C1509280C88845BCB4 = {isa = PBXRezBuildPhase; buildActionMask = 2147483647; files = (
BF6B9A47774C03C34559CAFE,
1F20808BDEB51EAFFA12781B, ); runOnlyForDeploymentPostprocessing = 0; };
BF6B9A47774C03C34559CAFE, ); runOnlyForDeploymentPostprocessing = 0; };
E032EB514708440DE9B7FF2A = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( E032EB514708440DE9B7FF2A = {isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = (
8265E59547F2C5DDD10F58BF, 8265E59547F2C5DDD10F58BF,
E32999B782F688D3746FEB08, E32999B782F688D3746FEB08,


+ 2
- 2
modules/juce_audio_plugin_client/juce_module_info View File

@@ -19,12 +19,12 @@
{ "file": "RTAS/juce_RTAS_DigiCode1.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" }, { "file": "RTAS/juce_RTAS_DigiCode1.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" },
{ "file": "RTAS/juce_RTAS_DigiCode2.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" }, { "file": "RTAS/juce_RTAS_DigiCode2.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" },
{ "file": "RTAS/juce_RTAS_DigiCode3.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" }, { "file": "RTAS/juce_RTAS_DigiCode3.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" },
{ "file": "RTAS/juce_RTAS_MacResources.r", "target": "xcode" },
{ "file": "RTAS/juce_RTAS_MacResources.r", "target": "xcode", "RTASOnly": "1" },
{ "file": "RTAS/juce_RTAS_MacUtilities.mm", "target": "xcode" }, { "file": "RTAS/juce_RTAS_MacUtilities.mm", "target": "xcode" },
{ "file": "RTAS/juce_RTAS_WinResources.rsr", "target": "msvc" }, { "file": "RTAS/juce_RTAS_WinResources.rsr", "target": "msvc" },
{ "file": "RTAS/juce_RTAS_WinUtilities.cpp", "target": "msvc", "warnings": "disabled", "stdcall": "1" }, { "file": "RTAS/juce_RTAS_WinUtilities.cpp", "target": "msvc", "warnings": "disabled", "stdcall": "1" },
{ "file": "RTAS/juce_RTAS_Wrapper.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" }, { "file": "RTAS/juce_RTAS_Wrapper.cpp", "warnings": "disabled", "stdcall": "1", "target": "xcode, msvc" },
{ "file": "AU/juce_AU_Resources.r", "target": "xcode" },
{ "file": "AU/juce_AU_Resources.r", "target": "xcode", "AudioUnitOnly": "1" },
{ "file": "AU/juce_AU_Wrapper.mm", "target": "xcode" }, { "file": "AU/juce_AU_Wrapper.mm", "target": "xcode" },
{ "file": "AAX/juce_AAX_Wrapper.cpp", "target": "xcode, msvc" }, { "file": "AAX/juce_AAX_Wrapper.cpp", "target": "xcode, msvc" },
{ "file": "AAX/juce_AAX_Wrapper.mm", "target": "xcode" }, { "file": "AAX/juce_AAX_Wrapper.mm", "target": "xcode" },


Loading…
Cancel
Save