summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2009-11-26 16:29:45 +0000
committerSebastian Huber <sebastian.huber@embedded-brains.de>2009-11-26 16:29:45 +0000
commit6c026388d30ca8fd36f9112bb76aa2af4f568fe3 (patch)
tree2e118655df892f25560c29a2e371473c936389de
parentAdded GCC assembler tool. (diff)
downloadrtems-eclipse-plug-in-6c026388d30ca8fd36f9112bb76aa2af4f568fe3.tar.bz2
Derive GCC based tools from new super class.
Fixed option filter. Discard pipe option.
-rw-r--r--org.rtems.cdt/plugin.xml49
-rw-r--r--org.rtems.cdt/src/org/rtems/cdt/Storage.java2
2 files changed, 34 insertions, 17 deletions
diff --git a/org.rtems.cdt/plugin.xml b/org.rtems.cdt/plugin.xml
index b0ad870..6d05511 100644
--- a/org.rtems.cdt/plugin.xml
+++ b/org.rtems.cdt/plugin.xml
@@ -430,24 +430,32 @@
id="org.rtems.cdt.builder"
superClass="cdt.managedbuild.target.gnu.builder"/>
<tool
- commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
id="org.rtems.cdt.compiler.c"
name="RTEMS C Compiler"
- superClass="cdt.managedbuild.tool.gnu.c.compiler">
+ superClass="org.rtems.cdt.tool.gcc">
<inputType
id="org.rtems.cdt.compiler.input.c"
+ dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
+ dependencyContentType="org.eclipse.cdt.core.cHeader"
+ dependencyExtensions="h"
+ languageId="org.eclipse.cdt.core.gcc"
scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
- superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+ sourceContentType="org.eclipse.cdt.core.cSource"
+ sources="c"/>
</tool>
<tool
- commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
id="org.rtems.cdt.compiler.cpp"
name="RTEMS C++ Compiler"
- superClass="cdt.managedbuild.tool.gnu.cpp.compiler">
+ superClass="org.rtems.cdt.tool.gcc">
<inputType
id="org.rtems.cdt.compiler.cpp.input"
- superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"
- scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileCPP"/>
+ dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
+ dependencyContentType="org.eclipse.cdt.core.cxxHeader"
+ dependencyExtensions="h,H,hpp"
+ languageId="org.eclipse.cdt.core.g++"
+ scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileCPP"
+ sourceContentType="org.eclipse.cdt.core.cxxSource"
+ sources="c,C,cc,cxx,cpp"/>
</tool>
<tool
commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
@@ -474,8 +482,7 @@
languageId="org.eclipse.cdt.core.gcc"
scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
sourceContentType="org.eclipse.cdt.core.asmSource"
- sources="s,S">
- </inputType>
+ sources="s,S"/>
</tool>
<tool
commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
@@ -533,24 +540,34 @@
id="org.rtems.cdt.builder.cygwin"
superClass="cdt.managedbuild.target.gnu.builder"/>
<tool
- commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
id="org.rtems.cdt.compiler.c.cygwin"
name="RTEMS C Compiler (Cygwin)"
- superClass="cdt.managedbuild.tool.gnu.c.compiler.cygwin">
+ superClass="org.rtems.cdt.tool.gcc"
+ commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
<inputType
id="org.rtems.cdt.compiler.input.c.cygwin"
- superClass="cdt.managedbuild.tool.gnu.c.compiler.input.cygwin"
- scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinC"/>
+ dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
+ dependencyContentType="org.eclipse.cdt.core.cHeader"
+ dependencyExtensions="h"
+ languageId="org.eclipse.cdt.core.gcc"
+ scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinC"
+ sourceContentType="org.eclipse.cdt.core.cSource"
+ sources="c"/>
</tool>
<tool
- commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
id="org.rtems.cdt.compiler.cpp.cygwin"
name="RTEMS C++ Compiler (Cygwin)"
- superClass="cdt.managedbuild.tool.gnu.cpp.compiler.cygwin">
+ superClass="org.rtems.cdt.tool.gcc"
+ commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
<inputType
id="org.rtems.cdt.compiler.cpp.input.cygwin"
+ dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
+ dependencyContentType="org.eclipse.cdt.core.cxxHeader"
+ dependencyExtensions="h,H,hpp"
+ languageId="org.eclipse.cdt.core.g++"
scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinCPP"
- superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input.cygwin"/>
+ sourceContentType="org.eclipse.cdt.core.cxxSource"
+ sources="c,C,cc,cxx,cpp"/>
</tool>
<tool
commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
diff --git a/org.rtems.cdt/src/org/rtems/cdt/Storage.java b/org.rtems.cdt/src/org/rtems/cdt/Storage.java
index 8e66571..6f55cd0 100644
--- a/org.rtems.cdt/src/org/rtems/cdt/Storage.java
+++ b/org.rtems.cdt/src/org/rtems/cdt/Storage.java
@@ -366,7 +366,7 @@ public class Storage {
// Filter options
if (toolKey.startsWith( Constants.COMPILER_KEY_PREFIX) || toolKey.startsWith( Constants.LINKER_KEY_PREFIX)) {
for (String option : options) {
- if (!(option.length() == 0 || option.trim().matches( "^-c|-O[0123s]|-g|-W[\\w-]*$"))) {
+ if (!(option.length() == 0 || option.trim().matches( "^(-c|-O[0123s]|-g.*|-W[\\w-]*|[-]*pipe)$"))) {
filteredOptions.add( option);
}
}