From 8b88c9bffea13b448e5149e4edb52245fcc916d6 Mon Sep 17 00:00:00 2001 From: Dorothea Pilz-Roeder Date: Fri, 3 May 2019 14:15:00 +0200 Subject: [PATCH] Bug 180451 - fix generateMakefiles() on incremental build - generateMakefiles() requires similar patch for the top build directory like regenerateMakefiles(). - need to extend the check in isGeneratedResource for config directories located in subdirectory of the project root. Change-Id: Id1809e216aee54524bc6cb072f8883ea5a202b61 Signed-off-by: Dorothea Pilz-Roeder --- .../managedbuilder/makegen/gnu/GnuMakefileGenerator.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java index 82bd52a1066..b75bdcfea10 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java @@ -659,7 +659,7 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator2 { } // Make sure the build directory is available - topBuildDir = createDirectory(config.getName()); + ensureTopBuildDir(); checkCancel(); // Make sure that there is a makefile containing all the folders participating @@ -792,12 +792,11 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator2 { //TODO: fix to use builder output dir instead String[] configNames = ManagedBuildManager.getBuildInfo(project).getConfigurationNames(); for (String name : configNames) { - IPath root = new Path(name); - // It is if it is a root of the resource pathname - if (root.isPrefixOf(path)) + IPath pathOfConfig = computeTopBuildDir(name); + if (pathOfConfig.isPrefixOf(path)) { return true; + } } - return false; }