From bdf0ba75308971f715c5841529e0ace8eb0786b8 Mon Sep 17 00:00:00 2001 From: Sean Evoy Date: Wed, 2 Jun 2004 14:30:30 +0000 Subject: [PATCH] Fix for bugzilla 62660 -- Target definition for MinGW is inconsistent. I have simply removed the target. If the user wants to use MinGW, they will have to also get MSYS (which is free and recommended for MinGW developers). The problem is that the clean command for Win32 is 'del" and it does not handle front-slashes in the path properly. The effort needed to generate the makefiles in a different way is greater than the effort to answer the odd newsgroup HOWTO question, so I am simply replacing Cygwin and MinGW targets with Gnu on Windows --- ...=> DefaultGnuWinScannerInfoCollector.java} | 9 +- .../plugin.properties | 17 +- .../plugin.xml | 292 ++++-------------- 3 files changed, 86 insertions(+), 232 deletions(-) rename build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/{DefaultCygwinScannerInfoCollector.java => DefaultGnuWinScannerInfoCollector.java} (87%) diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultCygwinScannerInfoCollector.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultGnuWinScannerInfoCollector.java similarity index 87% rename from build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultCygwinScannerInfoCollector.java rename to build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultGnuWinScannerInfoCollector.java index 90d4c2164d6..0ad7a94af62 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultCygwinScannerInfoCollector.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/scannerconfig/DefaultGnuWinScannerInfoCollector.java @@ -23,7 +23,7 @@ import org.eclipse.core.resources.IResource; * * @since 2.0 */ -public class DefaultCygwinScannerInfoCollector extends DefaultGCCScannerInfoCollector { +public class DefaultGnuWinScannerInfoCollector extends DefaultGCCScannerInfoCollector { /* (non-Javadoc) * @see org.eclipse.cdt.make.core.scannerconfig.IScannerInfoCollector#contributeToScannerConfig(org.eclipse.core.resources.IResource, java.util.List, java.util.List, java.util.List) @@ -34,7 +34,12 @@ public class DefaultCygwinScannerInfoCollector extends DefaultGCCScannerInfoColl while (pathIter.hasNext()) { String path = (String) pathIter.next(); String convertedPath = convertPath(path); - getIncludePaths().add(convertedPath); + // On MinGW, there is no facility for converting paths + if (convertedPath.startsWith("/")) continue; //$NON-NLS-1$ + // Add it if it is not a duplicate + if (!getIncludePaths().contains(convertedPath)){ + getIncludePaths().add(convertedPath); + } } // Now add the macros diff --git a/build/org.eclipse.cdt.managedbuilder.ui/plugin.properties b/build/org.eclipse.cdt.managedbuilder.ui/plugin.properties index a10799240a5..fdad084766f 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/plugin.properties +++ b/build/org.eclipse.cdt.managedbuilder.ui/plugin.properties @@ -16,12 +16,10 @@ TargetName.gnu=GNU TargetName.gnu.exe=Executable (Gnu) TargetName.gnu.so=Shared Library (Gnu) TargetName.gnu.lib=Static Library (Gnu) -TargetName.cygw.exe=Executable (Cygwin) -TargetName.cygw.so=Shared Library (Cygwin) -TargetName.cygw.lib=Static Library (Cygwin) -TargetName.mingw.exe=Executable (MinGW) -TargetName.mingw.so=Shared Library (MinGW) -TargetName.mingw.lib=Static Library (MinGW) +TargetName.cygw.exe=Executable (Gnu on Windows) +TargetName.cygw.so=Shared Library (Gnu on Windows) +TargetName.cygw.lib=Static Library (Gnu on Windows) + # No longer needed post-2.0 TargetName.cygw=Cygwin @@ -46,6 +44,7 @@ ToolName.compiler.cpp = C++ Compiler ToolName.archiver = Archiver ToolName.linker.c = C Linker ToolName.linker.cpp = C++ Linker +ToolName.windres = Resource compiler # GNU tool names ToolName.compiler.gnu.c = GCC C Compiler @@ -120,3 +119,9 @@ Option.Posix.Linker.Implib=Import Library name (-Wl,--out-implib=) Option.Posix.Linker.Defname=DEF file name (-Wl,--output-def=) Option.Posix.Archiver.Flags=Archiver flags + +# Platform specific option names +Option.Windows.Windres.OutputFormat = Output format +Option.Windows.Windres.OutputFormat.Coff = coff (--output-format coff) +v = rc (--output-format rc) +Option.Windows.Windres.OutputFormat.Res = res (--output-format res) \ No newline at end of file diff --git a/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml b/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml index 81f61d274ed..ed37509ae28 100644 --- a/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml +++ b/build/org.eclipse.cdt.managedbuilder.ui/plugin.xml @@ -372,6 +372,71 @@ id="gnu.both.lib.option.flags"> + @@ -1208,7 +1271,7 @@ isTest="false" makefileGenerator="org.eclipse.cdt.managedbuilder.makegen.gnu.GnuMakefileGenerator" defaultExtension="a" - scannerInfoCollector="org.eclipse.cdt.managedbuilder.internal.scannerconfig.DefaultCygwinScannerInfoCollector" + scannerInfoCollector="org.eclipse.cdt.managedbuilder.internal.scannerconfig.DefaultGnuWinScannerInfoCollector" isAbstract="false" binaryParser="org.eclipse.cdt.core.PE" parent="cdt.managedbuild.target.gnu" @@ -1271,225 +1334,6 @@ id="cdt.managedbuild.tool.gnu.archiver"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -