1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-23 08:55:25 +02:00

bug 296904: Split MakeErrorParser to regex style GmakeErrorParser and CWDLocator

This commit is contained in:
Andrew Gvozdev 2010-01-29 06:34:42 +00:00
parent d9bb636ab9
commit f7abbce100
13 changed files with 310 additions and 44 deletions

View file

@ -372,7 +372,7 @@
</target>
<target
isTest="true"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
name="Test Error Parsers"
binaryParser="org.eclipse.cdt.core.PE"
isAbstract="false"
@ -1214,7 +1214,7 @@
name="Dbg"
id="cdt.managedbuild.config.testgnu.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
id="cdt.managedbuild.toolchain.testgnu.exe.debug"
name="Dbg ToolChain"
@ -1287,7 +1287,7 @@
name="Rel"
id="cdt.managedbuild.config.testgnu.exe.release"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
id="cdt.managedbuild.toolchain.testgnu.exe.release"
name="Rel ToolChain"
@ -1361,7 +1361,7 @@
name="Debug"
cleanCommand="rm -rf"
artifactExtension="so"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu.so.debug">
<toolChain
id="cdt.managedbuild.toolchain.testgnu.so.debug"
@ -1443,7 +1443,7 @@
name="Release"
cleanCommand="rm -rf"
artifactExtension="so"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu.so.release">
<toolChain
id="cdt.managedbuild.toolchain.testgnu.so.release"
@ -1532,7 +1532,7 @@
name="Dbg"
artifactExtension="a"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu.lib.debug">
<toolChain
id="cdt.managedbuild.toolchain.testgnu.lib.debug"
@ -1598,7 +1598,7 @@
name="Rel"
artifactExtension="a"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu.lib.release">
<toolChain
id="cdt.managedbuild.toolchain.testgnu.lib.release"
@ -2582,7 +2582,7 @@
name="MBS30ConfigName.Dbg"
id="cdt.managedbuild.config.testgnu30.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
osList="solaris,linux,hpux,aix,qnx"
@ -2647,7 +2647,7 @@
name="MBS30ConfigName.Rel"
id="cdt.managedbuild.config.testgnu30.exe.release"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
osList="solaris,linux,hpux,aix,qnx"
@ -2719,7 +2719,7 @@
name="MBS30ConfigName.Dbg"
cleanCommand="rm -rf"
artifactExtension="so"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu30.so.debug">
<toolChain
archList="all"
@ -2809,7 +2809,7 @@
name="MBS30ConfigName.Rel"
cleanCommand="rm -rf"
artifactExtension="so"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu30.so.release">
<toolChain
archList="all"
@ -2906,7 +2906,7 @@
name="MBS30ConfigName.Dbg"
artifactExtension="a"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu30.lib.debug">
<toolChain
archList="all"
@ -2968,7 +2968,7 @@
name="MBS30ConfigName.Rel"
artifactExtension="a"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
id="cdt.managedbuild.config.testgnu30.lib.release">
<toolChain
archList="all"
@ -3072,7 +3072,7 @@
name="Dbg"
id="cdt.managedbuild.config.Testprepost30.gnu.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
osList="solaris,linux,hpux,aix,qnx"
@ -3161,7 +3161,7 @@
id="test30_1.gnu.so.config"
artifactExtension="so.4.5.6"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
osList="all"
@ -3632,7 +3632,7 @@
name="One"
id="cdt.managedbuild.config.testenv.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
configurationEnvironmentSupplier="org.eclipse.cdt.managedbuilder.core.tests.TestMacro"
@ -3698,7 +3698,7 @@
name="Two"
id="cdt.managedbuild.config.testenv.exe.release"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
configurationMacroSupplier="org.eclipse.cdt.managedbuilder.core.tests.TestMacro"
@ -3805,7 +3805,7 @@
name="Five"
id="cdt.managedbuild.config.testenv.exe.five"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="all"
configurationEnvironmentSupplier="org.eclipse.cdt.managedbuilder.core.tests.TestMacro"
@ -3955,7 +3955,7 @@
<configuration
id="TopTC.config.exe.debug"
name="Debug"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
cleanCommand="rm -rf">
<toolChain
id="TopTC.toolchain.exe.debug"
@ -3974,7 +3974,7 @@
<configuration
id="TopTC.config.exe.release"
name="Release"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser"
cleanCommand="rm -rf">
<toolChain
id="TopTC.toolchain.exe.release"
@ -4007,7 +4007,7 @@
description="debug configuration for IA32 windows"
id="cdt.managedbuild.config.testMultipleVersions.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
id="cdt.managedbuild.toolchain.testMultipleVersions.exe.debug_1.1.0"
name="Debug IA32 ToolChain"
@ -4047,7 +4047,7 @@
description="release configuration for IA32 windows"
id="cdt.managedbuild.config.testMultipleVersions.exe.release"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain
archList="x86"
osList="linux"
@ -4150,7 +4150,7 @@
description="debug configuration for IA32 windows"
id="config.testProjectConverterConvenienceRoutines.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
id="toolchain.testProjectConverterConvenienceRoutines.exe.debug_1.1.0"
name="Debug IA32 ToolChain"
@ -4318,7 +4318,7 @@
name="Test Configuration"
id="test.config_1.0.0"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
id="test.toolChain_1.0.0"
name="Test ToolChain Ver 1.0"
@ -4362,7 +4362,7 @@
name="Test Configuration 2.0"
id="test.config_2.0.0"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
id="test.toolChain_2.0.0"
name="Test ToolChain Ver 2.0"
@ -4465,7 +4465,7 @@
name="Test Configuration"
id="testProject.config_1.0.0"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
id="testProject.toolChain_1.0.0"
name="Test ToolChain Ver 1.0"
@ -4506,7 +4506,7 @@
name="Test Configuration"
id="testProject.config_2.0.0"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
id="testProject.toolChain_2.0.0"
name="Test ToolChain Ver 2.0"
@ -5020,7 +5020,7 @@
name="One"
id="cdt.managedbuild.config.enablement.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
archList="all"
configurationEnvironmentSupplier="org.eclipse.cdt.managedbuilder.core.tests.TestMacro"
@ -6197,7 +6197,7 @@
name="MBS30ConfigName.Dbg"
id="cdt.managedbuild.config.bdm.exe.debug"
cleanCommand="rm -rf"
errorParsers="org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser">
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser">
<toolChain isSystem="true"
archList="all"
osList="solaris,linux,hpux,aix,qnx"
@ -7874,7 +7874,7 @@
cleanBuildTarget="clean"
ignoreErrCmd="-k"
parallelBuildCmd="-j*"
errorParsers="org.eclipse.cdt.core.MakeErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GmakeErrorParser"
name="%GNUMakeBuilder.name">
</builder>

View file

@ -71,7 +71,7 @@ public class ManagedBuildCoreTests extends TestCase {
int expecectedNumConfigs = 2;
String[] expectedConfigName = {"Dbg", "Rel"};
String expectedCleanCmd = "rm -rf";
String expectedParserId = "org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser";
String expectedParserId = "org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser";
String expectedOSList = "solaris,linux,hpux,aix,qnx";
int expectedSizeOSList = 5;
String[] expectedArchList = {"all"};
@ -244,7 +244,7 @@ public class ManagedBuildCoreTests extends TestCase {
int expecectedNumConfigs = 2;
String[] expectedConfigName = {"Debug", "Release"};
String expectedCleanCmd = "rm -rf";
String expectedParserId = "org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser";
String expectedParserId = "org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser";
String expectedArtifactExtension = "so";
String expectedOSList = "solaris,linux,hpux,aix,qnx";
int expectedSizeOSList = 5;
@ -443,7 +443,7 @@ public class ManagedBuildCoreTests extends TestCase {
int expecectedNumConfigs = 2;
String[] expectedConfigName = {"Dbg", "Rel"};
String expectedCleanCmd = "rm -rf";
String expectedParserId = "org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser";
String expectedParserId = "org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GASErrorParser;org.eclipse.cdt.core.GmakeErrorParser";
String expectedArtifactExtension = "a";
String expectedOSList = "solaris,linux,hpux,aix,qnx";
int expectedSizeOSList = 5;

View file

@ -1818,7 +1818,7 @@ public class ManagedBuildCoreTests20 extends TestCase {
assertEquals(expectedBinParserId, targetPlatform.getBinaryParserList()[0]);
// This target defines errors parsers. Check that the error parsers
// have been assigned.
assertEquals("org.eclipse.cdt.core.MakeErrorParser;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser", configs[0].getErrorParserIds());
assertEquals("org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GCCErrorParser;org.eclipse.cdt.core.GLDErrorParser;org.eclipse.cdt.core.GmakeErrorParser", configs[0].getErrorParserIds());
// Tool
ITool[] tools = configs[0].getTools();

View file

@ -44,9 +44,10 @@ public class BackwardCompatiblityTests extends TestCase {
};
String[] ERR_PARSERS = new String[]{
"org.eclipse.cdt.core.MakeErrorParser",
"org.eclipse.cdt.core.CWDLocator",
"org.eclipse.cdt.core.GASErrorParser",
"org.eclipse.cdt.core.VCErrorParser"
"org.eclipse.cdt.core.VCErrorParser",
"org.eclipse.cdt.core.GmakeErrorParser",
};
IProject project = loadStdProject(PROJ_NAME);

View file

@ -370,7 +370,7 @@
cleanBuildTarget="clean"
ignoreErrCmd="-k"
parallelBuildCmd="-j*"
errorParsers="org.eclipse.cdt.core.MakeErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GmakeErrorParser"
name="%GNUMakeBuilder.name"
isSystem="true">
</builder>

View file

@ -1624,7 +1624,7 @@
cleanBuildTarget="clean"
ignoreErrCmd="-k"
parallelBuildCmd="-j*"
errorParsers="org.eclipse.cdt.core.MakeErrorParser"
errorParsers="org.eclipse.cdt.core.CWDLocator;org.eclipse.cdt.core.GmakeErrorParser"
name="%GNUMakeBuilder.name">
</builder>

View file

@ -42,7 +42,7 @@ import org.eclipse.core.runtime.Platform;
* properly locate and resolve filenames found in build output in case of EFS files/folders.
*/
public class ErrorParserEfsFileMatchingTest extends TestCase {
private static final String MAKE_ERRORPARSER_ID = "org.eclipse.cdt.core.MakeErrorParser";
private static final String MAKE_ERRORPARSER_ID = "org.eclipse.cdt.core.CWDLocator";
private String mockErrorParserId = null;
private final static String testName = "FindMatchingFilesEfsTest";

View file

@ -43,7 +43,7 @@ import org.eclipse.core.runtime.Platform;
* properly locate and resolve filenames found in build output.
*/
public class ErrorParserFileMatchingTest extends TestCase {
private static final String MAKE_ERRORPARSER_ID = "org.eclipse.cdt.core.MakeErrorParser";
private static final String MAKE_ERRORPARSER_ID = "org.eclipse.cdt.core.CWDLocator";
private String mockErrorParserId = null;
private final static String testName = "FindMatchingFilesTest";

View file

@ -108,11 +108,12 @@ public class ErrorParserManagerTest extends TestCase {
};
String[] errorParsersIds = {
"org.eclipse.cdt.core.MakeErrorParser",
"org.eclipse.cdt.core.CWDLocator",
"org.eclipse.cdt.core.GCCErrorParser",
"org.eclipse.cdt.core.GASErrorParser",
"org.eclipse.cdt.core.GLDErrorParser",
"org.eclipse.cdt.core.VCErrorParser",
"org.eclipse.cdt.core.GmakeErrorParser",
};
epManager = new ErrorParserManager(cProject.getProject(), markerGenerator, errorParsersIds);

View file

@ -47,8 +47,10 @@ SOMParser.name=HP-UX SOM Parser
CDTGNUCErrorParser.name=CDT GNU C/C++ Error Parser
CDTGNUAssemblerErrorParser.name=CDT GNU Assembler Error Parser
CDTGNULinkerErrorParser.name=CDT GNU Linker Error Parser
CDTGNUMakeErrorParser.name=CDT GNU Make Error Parser
CDTWorkingDirLocator.name=CDT CWD Locator
CDTGNUMakeErrorParser.name=CDT GNU Make Error Parser 7.0
CDTVisualCErrorParser.name=CDT Visual C Error Parser
CDTGNUMakeErrorParser.name.deprecated=CDT GNU Make Error Parser 6.0 (Deprecated)
CDTRegexErrorParser.name=CDT Regular Expression Error Parser
PathEntryContainerInitializer=Path Entry Container Initializer

View file

@ -149,16 +149,212 @@
<!-- =================================================================================== -->
<!-- Define the list of Error Parser provided by the CDT -->
<!-- =================================================================================== -->
<!-- MakeErrorParser is deprecated as of CDT 7.0 (replaced with WorkingDirLocator and GmakeErrorParser) -->
<extension
id="MakeErrorParser"
name="%CDTGNUMakeErrorParser.name"
name="%CDTGNUMakeErrorParser.name.deprecated"
point="org.eclipse.cdt.core.ErrorParser">
<errorparser
id="org.eclipse.cdt.core.MakeErrorParser"
name="%CDTGNUMakeErrorParser.name"
name="%CDTGNUMakeErrorParser.name.deprecated"
class="org.eclipse.cdt.internal.errorparsers.MakeErrorParser">
</errorparser>
</extension>
<extension
id="WorkingDirLocator"
name="%CDTWorkingDirLocator.name"
point="org.eclipse.cdt.core.ErrorParser">
<errorparser
class="org.eclipse.cdt.internal.errorparsers.CWDLocator"
id="org.eclipse.cdt.core.CWDLocator"
name="%CDTWorkingDirLocator.name">
</errorparser>
</extension>
<extension
id="GmakeErrorParser"
name="%CDTGNUMakeErrorParser.name"
point="org.eclipse.cdt.core.ErrorParser">
<errorparser
class="org.eclipse.cdt.core.errorparsers.RegexErrorParser"
id="org.eclipse.cdt.core.GmakeErrorParser"
name="%CDTGNUMakeErrorParser.name">
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make: \*\*\* \[.*\] Error .*"
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*\[.*\] Error [-]{0,1}\d*.*"
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*missing separator.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*missing separator \(did you mean TAB instead of 8 spaces?\).\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*commands commence before first target.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*missing rule before commands.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*No rule to make target `.*'."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*No rule to make target `.*', needed by `.*'."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*No targets specified and no makefile found.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*No targets.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*Makefile `.*' was not found."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*Included makefile `.*' was not found."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*warning: overriding commands for target `.*'"
severity="Warning"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*warning: ignoring old commands for target `.*'"
severity="Warning"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*Circular .+ &lt;- .+ dependency dropped."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*Recursive variable `.*' references itself \(eventually\).\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*[uU]nterminated variable reference.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*insufficient arguments to function `.*'.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*missing target pattern.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*multiple target patterns.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*target pattern contains no `%'.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*mixed implicit and static pattern rules.\s*Stop."
severity="Error"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*warning: -jN forced in submake: disabling jobserver mode."
severity="Warning"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*warning: jobserver unavailable: using -j1. Add `+' to parent make rule."
severity="Warning"/>
<pattern
description-expr="$0"
eat-processed-line="true"
file-expr=""
line-expr=""
regex="make.*target `.*' doesn't match the target pattern"
severity="Error"/>
</errorparser>
</extension>
<extension
id="GCCErrorParser"
name="%CDTGNUCErrorParser.name"

View file

@ -0,0 +1,61 @@
/*******************************************************************************
* Copyright (c) 2005, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Andrew Gvozdev (Quoin Inc.) - initial API and implementation adapted from MakeErrorParser
*******************************************************************************/
package org.eclipse.cdt.internal.errorparsers;
import java.util.regex.Matcher;
import org.eclipse.cdt.core.ErrorParserManager;
import org.eclipse.cdt.core.errorparsers.AbstractErrorParser;
import org.eclipse.cdt.core.errorparsers.ErrorPattern;
import org.eclipse.core.runtime.Path;
/**
* Class {@code CWDLocator} is used to change working directory from where file name is searched by
* {@link ErrorParserManager}. The intention is to handle make output of commands "pushd" and "popd".
*/
public class CWDLocator extends AbstractErrorParser {
private static final ErrorPattern[] patterns = {
new ErrorPattern("make\\[(.*)\\]: Entering directory `(.*)'", 0, 0) {
@Override
protected boolean recordError(Matcher matcher, ErrorParserManager eoParser) {
int level;
try {
level = Integer.valueOf(matcher.group(1)).intValue();
} catch (NumberFormatException e) {
level = 0;
}
String dir = matcher.group(2);
/*
* Sometimes make screws up the output, so "leave" events can't be seen. Double-check
* level here.
*/
int parseLevel = eoParser.getDirectoryLevel();
for (; level < parseLevel; level++) {
eoParser.popDirectoryURI();
}
eoParser.pushDirectory(new Path(dir));
return true;
}
}, new ErrorPattern("make\\[.*\\]: Leaving directory", 0, 0) {
@Override
protected boolean recordError(Matcher matcher, ErrorParserManager eoParser) {
eoParser.popDirectoryURI();
return true;
}
},
};
public CWDLocator() {
super(patterns);
}
}

View file

@ -20,6 +20,11 @@ import org.eclipse.cdt.core.errorparsers.AbstractErrorParser;
import org.eclipse.cdt.core.errorparsers.ErrorPattern;
import org.eclipse.core.runtime.Path;
/**
* @deprecated replaced with {@link CWDLocator} and {@code GmakeErrorParser}
*
*/
@Deprecated
public class MakeErrorParser extends AbstractErrorParser {
private static final ErrorPattern[] patterns = {
new ErrorPattern("make\\[(.*)\\]: Entering directory `(.*)'", 0, 0) { //$NON-NLS-1$