Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Recoskie2008-02-15 08:59:08 -0500
committerChris Recoskie2008-02-15 08:59:08 -0500
commitc4f848492049e2d15c1ef2175bc244346fc65109 (patch)
treef087c0df5fe740995de7e55f16c1230670bdf158
parent0c363ef3e880853e8881a3172e51bb934808be7c (diff)
downloadorg.eclipse.cdt-c4f848492049e2d15c1ef2175bc244346fc65109.tar.gz
org.eclipse.cdt-c4f848492049e2d15c1ef2175bc244346fc65109.tar.xz
org.eclipse.cdt-c4f848492049e2d15c1ef2175bc244346fc65109.zip
RESOLVED - bug 163672: Other Objects on Win
https://bugs.eclipse.org/bugs/show_bug.cgi?id=163672 Patch from Keith Campbell
-rw-r--r--build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/makegen/gnu/GnuMakefileGenerator.java18
1 files changed, 16 insertions, 2 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 4ab96a7d177..6fd2ae7c227 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
@@ -1039,9 +1039,23 @@ public class GnuMakefileGenerator implements IManagedBuilderMakefileGenerator2 {
valueList = (List)entry.getValue();
Iterator valueIter = valueList.iterator();
while (valueIter.hasNext()) {
- macroBuffer.append(WHITESPACE + ensurePathIsGNUMakeTargetRuleCompatibleSyntax((String)valueIter.next()));
+ String path = (String) valueIter.next();
+
+ // These macros will also be used within commands.
+ // Make all the slashes go forward so they aren't
+ // interpreted as escapes and get lost.
+ // See https://bugs.eclipse.org/163672.
+ path = path.replace('\\', '/');
+
+ path = ensurePathIsGNUMakeTargetRuleCompatibleSyntax(path);
+
+ macroBuffer.append(WHITESPACE);
+ macroBuffer.append(path);
}
- if (iterator.hasNext()) macroBuffer.append(NEWLINE + NEWLINE);
+ // terminate the macro definition line
+ macroBuffer.append(NEWLINE);
+ // leave a blank line before the next macro
+ if (iterator.hasNext()) macroBuffer.append(NEWLINE);
}
// For now, just save the buffer that was populated when the rules were created

Back to the top