void LibraryModule::prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const { Project& project = exporter.getProject(); exporter.addToExtraSearchPaths (exporter.getModuleFolderRelativeToProject (getID()).getParentDirectory()); const String extraDefs (moduleInfo.getPreprocessorDefs().trim()); if (extraDefs.isNotEmpty()) exporter.getExporterPreprocessorDefs() = exporter.getExporterPreprocessorDefsString() + "\n" + extraDefs; { Array<File> compiled; const File localModuleFolder = project.getModules().shouldCopyModuleFilesLocally (getID()).getValue() ? project.getLocalModuleFolder (getID()) : moduleInfo.getFolder(); findAndAddCompiledUnits (exporter, &projectSaver, localModuleFolder, compiled); if (project.getModules().shouldShowAllModuleFilesInProject (getID()).getValue()) addBrowseableCode (exporter, compiled, localModuleFolder); } if (isVSTPluginHost (project)) VSTHelpers::addVSTFolderToPath (exporter, false); if (isVST3PluginHost (project)) VSTHelpers::addVSTFolderToPath (exporter, true); if (exporter.isXcode()) { if (isAUPluginHost (project)) exporter.xcodeFrameworks.addTokens ("AudioUnit CoreAudioKit", false); const String frameworks (moduleInfo.moduleInfo [exporter.isOSX() ? "OSXFrameworks" : "iOSFrameworks"].toString()); exporter.xcodeFrameworks.addTokens (frameworks, ", ", StringRef()); parseAndAddLibs (exporter.xcodeLibs, moduleInfo.moduleInfo [exporter.isOSX() ? "OSXLibs" : "iOSLibs"].toString()); } else if (exporter.isLinux()) { parseAndAddLibs (exporter.linuxLibs, moduleInfo.moduleInfo ["LinuxLibs"].toString()); } else if (exporter.isCodeBlocksWindows()) { parseAndAddLibs (exporter.mingwLibs, moduleInfo.moduleInfo ["mingwLibs"].toString()); } if (moduleInfo.isPluginClient()) { if (shouldBuildVST (project).getValue()) VSTHelpers::prepareExporter (exporter, projectSaver, false); if (shouldBuildVST3 (project).getValue()) VSTHelpers::prepareExporter (exporter, projectSaver, true); if (shouldBuildAU (project).getValue()) AUHelpers::prepareExporter (exporter, projectSaver); if (shouldBuildAAX (project).getValue()) AAXHelpers::prepareExporter (exporter, projectSaver); if (shouldBuildRTAS (project).getValue()) RTASHelpers::prepareExporter (exporter, projectSaver); } }
void LibraryModule::createPropertyEditors (ProjectExporter& exporter, PropertyListBuilder& props) const { if (isVSTPluginHost (exporter.getProject()) && ! (moduleInfo.isPluginClient() && shouldBuildVST (exporter.getProject()).getValue())) VSTHelpers::createVSTPathEditor (exporter, props, false); if (isVST3PluginHost (exporter.getProject()) && ! (moduleInfo.isPluginClient() && shouldBuildVST3 (exporter.getProject()).getValue())) VSTHelpers::createVSTPathEditor (exporter, props, true); if (moduleInfo.isPluginClient()) { if (shouldBuildVST (exporter.getProject()).getValue()) VSTHelpers::createPropertyEditors (exporter, props, false); if (shouldBuildVST3 (exporter.getProject()).getValue()) VSTHelpers::createPropertyEditors (exporter, props, true); if (shouldBuildRTAS (exporter.getProject()).getValue()) RTASHelpers::createPropertyEditors (exporter, props); if (shouldBuildAAX (exporter.getProject()).getValue()) AAXHelpers::createPropertyEditors (exporter, props); } }