Trying to improve linker performance on Windows using Visual Studio 2015 I tried activating the /INCREMENTAL linker option. It initially didn't work because Juce by default sets the /FORCE:multiple linker option which blocks incremental linking.
After realizing deleting the /FORCE:multiple flag doesn't break my builds I started to wonder why it is set. In the Introjucer code I see it always gets added during export if it's not present (jucer_AudioPluginModule.h prepareExporter(..) method line 394). As far as I can tell there is no way to remove it permanently without patching Introjucer, or is there?
Digging some more I found some threads about problems with RTAS builds on windows that probably lead to activating this switch. Jules once wrote in a "How to use" textfile:
- Because the RTAS code duplicates some win32 constants, you might need to force it to link correctly
by adding "/FORCE:multiple" to the linker's additional command line options.
That makes me think this constant is only needed for RTAS which I don't use. If all my assumptions are correct, could maybe the exporter be patched so it only adds this flag if RTAS is enabled in a project? And possibly /INCREMENTAL could be activated for debug builds by default
Or is there another reason this flag is needed?