diff --git a/autotools/org.eclipse.linuxtools.cdt.autotools.core/src/org/eclipse/linuxtools/internal/cdt/autotools/core/AutotoolsNewMakeGenerator.java b/autotools/org.eclipse.linuxtools.cdt.autotools.core/src/org/eclipse/linuxtools/internal/cdt/autotools/core/AutotoolsNewMakeGenerator.java index 261fef6..ea98501 100644 --- a/autotools/org.eclipse.linuxtools.cdt.autotools.core/src/org/eclipse/linuxtools/internal/cdt/autotools/core/AutotoolsNewMakeGenerator.java +++ b/autotools/org.eclipse.linuxtools.cdt.autotools.core/src/org/eclipse/linuxtools/internal/cdt/autotools/core/AutotoolsNewMakeGenerator.java @@ -1245,6 +1245,16 @@ public class AutotoolsNewMakeGenerator extends MarkerGenerator { IPath buildCommand = buildInfo.getBuildCommand(); String defaultBuildCommand = buildCommand.toString(); String buildArguments = buildInfo.getBuildArguments(); + + // Bug #351660 - reset targets to a single dummy target so that + // we will never be able to find any of the new targets we are about to + // create and thus avoid an extraneous event notification on a change to + // the MakeTarget. The dummy target should have an invalid name for + // a normal make target. + IMakeTarget dummyTarget = makeTargetManager.createTarget( + project, "\ndummyTarget\n", targetBuildID); //$NON-NLS-1$ + makeTargetManager.setTargets(project, new IMakeTarget[]{dummyTarget}); + for (int i = 0; i < targets.length; i++) { target = targets[i].getTarget(); String targetName = target.toString(); @@ -1264,7 +1274,7 @@ public class AutotoolsNewMakeGenerator extends MarkerGenerator { makeTarget.setBuildAttribute(IMakeTarget.BUILD_ARGUMENTS, buildArguments); makeTarget.setBuildAttribute(IMakeTarget.BUILD_COMMAND, defaultBuildCommand); - makeTarget.setBuildAttribute(GENERATED_TARGET, "true"); + makeTarget.setBuildAttribute(GENERATED_TARGET, "true"); //$NON-NLS-1$ makeTarget.setBuildAttribute(IMakeTarget.BUILD_TARGET, targetName);