AnsweredAssumed Answered

MCUXpresso replicates -D__MULTICORE_NONE and -D__MULTICORE_MASTER in .cproject file ad infinitum.

Question asked by Roger Strassburg on Sep 23, 2019
Latest reply on Sep 26, 2019 by soledad

The MCUXpresso IDE keeps adding -D__MULTICORE_MASTER and -D__MULTICORE_NONE to .cproject file:

 

@@ -1016,7 +1016,7 @@
<tool id="com.crt.advproject.gas.exe.release.1872929933" name="MCU Assembler" superClass="com.crt.advproject.gas.exe.release">
<option id="com.crt.advproject.gas.thumb.921078428" name="Thumb mode" superClass="com.crt.advproject.gas.thumb" useByScannerDiscovery="false" value="true" valueType="boolean"/>
<option id="com.crt.advproject.gas.arch.649091898" name="Architecture" superClass="com.crt.advproject.gas.arch" useByScannerDiscovery="false" value="com.crt.advproject.gas.target.cm4" valueType="enumerated"/>
- <option id="gnu.both.asm.option.flags.crt.1381242170" name="Assembler flags" superClass="gnu.both.asm.option.flags.crt" useByScannerDiscovery="false" value="-c -x assembler-with-cpp -D__REDLIB__ -D__MULTICORE_NONE" valueType="string"/>
+ <option id="gnu.both.asm.option.flags.crt.1381242170" name="Assembler flags" superClass="gnu.both.asm.option.flags.crt" useByScannerDiscovery="false" value="-c -x assembler-with-cpp -D__REDLIB__ -D__MULTICORE_NONE -D__MULTICORE_NONE -D__MULTICORE_NONE" valueType="string"/>
<option id="gnu.both.asm.option.include.paths.1142053181" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" useByScannerDiscovery="false"/>
<option id="gnu.both.asm.option.warnings.nowarn.2100826557" name="Suppress warnings (-W)" superClass="gnu.both.asm.option.warnings.nowarn" useByScannerDiscovery="false"/>
<option id="gnu.both.asm.option.version.713266816" name="Announce version (-v)" superClass="gnu.both.asm.option.version" useByScannerDiscovery="false"/>
@@ -1324,7 +1324,7 @@
<tool id="com.crt.advproject.gas.exe.release.1845877874" name="MCU Assembler" superClass="com.crt.advproject.gas.exe.release">
<option id="com.crt.advproject.gas.thumb.1511920781" name="Thumb mode" superClass="com.crt.advproject.gas.thumb" value="true" valueType="boolean"/>
  option id="com.crt.advproject.gas.arch.1308542101" name="Architecture" superClass="com.crt.advproject.gas.arch" value="-mcpu=cortex-m33-nodsp" valueType="enumerated"/>
- <option id="gnu.both.asm.option.flags.crt.1170199820" name="Assembler flags" superClass="gnu.both.asm.option.flags.crt" useByScannerDiscovery="false" value="-c -x assembler-with-cpp -D__REDLIB__ -D__MULTICORE_MASTER" valueType="string "/>
+ <option id="gnu.both.asm.option.flags.crt.1170199820" name="Assembler flags" superClass="gnu.both.asm.option.flags.crt" useByScannerDiscovery="false" value="-c -x assembler-with-cpp -D__REDLIB__ -D__MULTICORE_MASTER -D__MULTICORE_MASTER -D__MULTICORE_MASTER" valueType="string"/>
<option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="true" id="gnu.both.asm.option.include.paths.2091182739" name="Include paths (-I)" superClass="gnu.both.asm.option.include.paths" useByScannerDiscovery="false" valueType="includePath"/>
<option id="gnu.both.asm.option.warnings.nowarn.482912183" name="Suppress warnings (-W)" superClass="gnu.both.asm.option.warnings.nowarn" useByScannerDiscovery="false"/>
<option id="gnu.both.asm.option.version.80960214" name="Announce version (-v)" superClass="gnu.both.asm.option.version" useByScannerDiscovery="false"/>

 

This seems to happen after builds, at least after the first one. This results in the .cproject file showing up in git as having been modified, even though it really hasn't been, and also makes it more difficult to resolve merge conflicts involving the .cproject file. These defines continue to multiply over several commits and checkouts and need to be cleaned out every once in a while.

Outcomes