Browse Source

Introjucer: More explicit control over the MSVC DLL runtime mode.

tags/2021-05-28
jules 13 years ago
parent
commit
e954a6558b
2 changed files with 20 additions and 8 deletions
  1. +15
    -6
      extras/Introjucer/Source/Project Saving/jucer_ProjectExport_MSVC.h
  2. +5
    -2
      extras/Introjucer/Source/Project/jucer_AudioPluginModule.h

+ 15
- 6
extras/Introjucer/Source/Project Saving/jucer_ProjectExport_MSVC.h View File

@@ -174,13 +174,22 @@ protected:
props.add (new ChoicePropertyComponent (getWarningLevelValue(), "Warning Level",
StringArray (warningLevelNames), Array<var> (warningLevels)));
const char* const wpoNames[] = { "Enable link-time code generation when possible",
"Always disable link-time code generation", nullptr };
const var wpoValues[] = { var(), var (1) };
{
const char* const runtimeNames[] = { "(Default)", "Use static runtime", "Use DLL runtime", nullptr };
const var runtimeValues[] = { var(), var (false), var (true) };
props.add (new ChoicePropertyComponent (getUsingRuntimeLibDLL(), "Runtime Library",
StringArray (runtimeNames), Array<var> (runtimeValues, numElementsInArray (runtimeValues))));
}
props.add (new BooleanPropertyComponent (getUsingRuntimeLibDLL(), "Runtime Library", "Use DLL version of runtime library"));
props.add (new ChoicePropertyComponent (getWholeProgramOptValue(), "Whole Program Optimisation",
StringArray (wpoNames), Array<var> (wpoValues, numElementsInArray (wpoValues))));
{
const char* const wpoNames[] = { "Enable link-time code generation when possible",
"Always disable link-time code generation", nullptr };
const var wpoValues[] = { var(), var (1) };
props.add (new ChoicePropertyComponent (getWholeProgramOptValue(), "Whole Program Optimisation",
StringArray (wpoNames), Array<var> (wpoValues, numElementsInArray (wpoValues))));
}
props.add (new TextPropertyComponent (getPrebuildCommand(), "Pre-build Command", 2048, false));
props.add (new TextPropertyComponent (getPostbuildCommand(), "Post-build Command", 2048, false));


+ 5
- 2
extras/Introjucer/Source/Project/jucer_AudioPluginModule.h View File

@@ -378,7 +378,9 @@ namespace RTASHelpers
for (ProjectExporter::ConfigIterator config (exporter); config.next();)
{
config->getValue (Ids::msvcModuleDefinitionFile) = msvcPathToRTASFolder + "juce_RTAS_WinExports.def";
config->getValue (Ids::useRuntimeLibDLL) = true;
if (config->getValue (Ids::useRuntimeLibDLL).getValue().isVoid())
config->getValue (Ids::useRuntimeLibDLL) = true;
if (config->getValue (Ids::postbuildCommand).toString().isEmpty())
config->getValue (Ids::postbuildCommand) = "copy /Y \"" + msvcPathToRTASFolder + "juce_RTAS_WinResources.rsr"
@@ -539,7 +541,8 @@ namespace AAXHelpers
exporter.msvcTargetSuffix = ".aaxplugin";
for (ProjectExporter::ConfigIterator config (exporter); config.next();)
config->getValue (Ids::useRuntimeLibDLL) = true;
if (config->getValue (Ids::useRuntimeLibDLL).getValue().isVoid())
config->getValue (Ids::useRuntimeLibDLL) = true;
}
else
{


Loading…
Cancel
Save