mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-09 23:34:20 +00:00
Projucer (MSVC): Add setting to control intrinsic functions optimisation flag
This commit is contained in:
parent
6212a4c81f
commit
f3840561b5
2 changed files with 10 additions and 1 deletions
|
|
@ -478,6 +478,7 @@ public:
|
|||
fastMathValue (config, Ids::fastMath, getUndoManager()),
|
||||
debugInformationFormatValue (config, Ids::debugInformationFormat, getUndoManager(), "ProgramDatabase"),
|
||||
pluginBinaryCopyStepValue (config, Ids::enablePluginBinaryCopyStep, getUndoManager(), false),
|
||||
intrinsicFunctionsEnabledValue (config, Ids::intrinsicFunctions, getUndoManager(), false),
|
||||
vstBinaryLocation (config, Ids::vstBinaryLocation, getUndoManager()),
|
||||
vst3BinaryLocation (config, Ids::vst3BinaryLocation, getUndoManager()),
|
||||
aaxBinaryLocation (config, Ids::aaxBinaryLocation, getUndoManager()),
|
||||
|
|
@ -577,6 +578,7 @@ public:
|
|||
bool shouldUseMultiProcessorCompilation() const { return multiProcessorCompilationValue.get(); }
|
||||
bool isFastMathEnabled() const { return fastMathValue.get(); }
|
||||
bool isPluginBinaryCopyStepEnabled() const { return pluginBinaryCopyStepValue.get(); }
|
||||
bool isIntrinsicFunctionsEnabled() const { return intrinsicFunctionsEnabledValue.get(); }
|
||||
|
||||
static bool shouldBuildTarget (build_tools::ProjectType::Target::Type targetType, Architecture arch)
|
||||
{
|
||||
|
|
@ -649,6 +651,9 @@ public:
|
|||
{ optimisationOff, optimiseMinSize, optimiseMaxSpeed, optimiseFull }),
|
||||
"The optimisation level for this configuration");
|
||||
|
||||
props.add (new ChoicePropertyComponent (intrinsicFunctionsEnabledValue, "Intrinsic Functions"),
|
||||
"Replaces some function calls with intrinsic or otherwise special forms of the function that help your application run faster.");
|
||||
|
||||
props.add (new TextPropertyComponent (intermediatesPathValue, "Intermediates Path", 2048, false),
|
||||
"An optional path to a folder to use for the intermediate build files. Note that Visual Studio allows "
|
||||
"you to use macros in this path, e.g. \"$(TEMP)\\MyAppBuildFiles\\$(Configuration)\", which is a handy way to "
|
||||
|
|
@ -749,7 +754,7 @@ public:
|
|||
ValueTreePropertyWithDefault warningLevelValue, warningsAreErrorsValue, prebuildCommandValue, postbuildCommandValue, generateDebugSymbolsValue,
|
||||
enableIncrementalLinkingValue, useRuntimeLibDLLValue, multiProcessorCompilationValue,
|
||||
intermediatesPathValue, characterSetValue, architectureTypeValue, fastMathValue, debugInformationFormatValue,
|
||||
pluginBinaryCopyStepValue;
|
||||
pluginBinaryCopyStepValue, intrinsicFunctionsEnabledValue;
|
||||
|
||||
struct LocationProperties
|
||||
{
|
||||
|
|
@ -1117,6 +1122,9 @@ public:
|
|||
|
||||
auto cppStandard = owner.project.getCppStandardString();
|
||||
cl->createNewChildElement ("LanguageStandard")->addTextElement ("stdcpp" + cppStandard);
|
||||
|
||||
if (config.isIntrinsicFunctionsEnabled())
|
||||
cl->createNewChildElement ("IntrinsicFunctions")->addTextElement ("true");
|
||||
}
|
||||
|
||||
{
|
||||
|
|
|
|||
|
|
@ -125,6 +125,7 @@ namespace Ids
|
|||
DECLARE_ID (cppLibType);
|
||||
DECLARE_ID (codeSigningIdentity);
|
||||
DECLARE_ID (fastMath);
|
||||
DECLARE_ID (intrinsicFunctions);
|
||||
DECLARE_ID (linkTimeOptimisation);
|
||||
DECLARE_ID (vstBinaryLocation);
|
||||
DECLARE_ID (vst3BinaryLocation);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue