source: rtems-eclipse-plug-in/org.rtems.cdt/plugin.xml @ 20244e1

Last change on this file since 20244e1 was 20244e1, checked in by Sebastian Huber <sebastian.huber@…>, on Nov 27, 2009 at 8:31:46 AM

Fixed nature filter for C++ compiler.
Added "envVarBuildPath" to GCC derived tools.

  • Property mode set to 100644
File size: 33.9 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<?eclipse version="3.2"?>
3
4<!--
5  Copyright (c) 2008 Embedded Brains GmbH and others.
6
7    Embedded Brains GmbH
8    Obere Lagerstr. 30
9    D-82178 Puchheim
10    Germany
11    rtems@embedded-brains.de
12
13  All rights reserved.  This program and the accompanying materials are made
14  available under the terms of the Eclipse Public License Version 1.0 ("EPL")
15  which accompanies this distribution and is available at
16
17    http://www.eclipse.org/legal/epl-v10.html
18
19  For purposes of the EPL, "Program" will mean the Content.
20
21  Contributors:
22
23    Sebastian Huber (Embedded Brains GmbH) - Initial API and implementation.
24-->
25
26<plugin>
27   <!-- Scanner Configuration Discovery Profiles -->
28   <extension
29         id="RtemsSCDProfile"
30         name="RTEMS Scanner Configuration Discovery Profile"
31         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
32      <scannerInfoCollector
33            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
34            scope="project"/>
35      <buildOutputProvider>
36         <open/>
37         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
38      </buildOutputProvider>
39      <scannerInfoProvider providerId="specsFile">
40         <run
41               arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"
42               class="org.rtems.cdt.build.RunScannerInfoProvider"/>
43         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
44      </scannerInfoProvider>
45   </extension>
46   <extension
47         id="RtemsSCDProfileC"
48         name="RTEMS Scanner Configuration Discovery Profile"
49         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
50      <scannerInfoCollector
51            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
52            scope="project"/>
53      <buildOutputProvider>
54         <open/>
55         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
56      </buildOutputProvider>
57      <scannerInfoProvider providerId="specsFile">
58         <run
59               arguments="-E -P -v -dD ${plugin_state_location}/specs.c"
60               class="org.rtems.cdt.build.RunScannerInfoProvider"/>
61         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
62      </scannerInfoProvider>
63   </extension>
64   <extension
65         id="RtemsSCDProfileCPP"
66         name="RTEMS Scanner Configuration Discovery Profile"
67         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
68      <scannerInfoCollector
69            class="org.eclipse.cdt.make.internal.core.scannerconfig2.PerProjectSICollector"
70            scope="project"/>
71      <buildOutputProvider>
72         <open/>
73         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
74      </buildOutputProvider>
75      <scannerInfoProvider providerId="specsFile">
76         <run
77               arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp"
78               class="org.rtems.cdt.build.RunScannerInfoProvider"/>
79         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
80      </scannerInfoProvider>
81   </extension>
82   <extension
83         id="RtemsSCDProfileWin"
84         name="RTEMS Scanner Configuration Discovery Profile (Windows)"
85         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
86      <scannerInfoCollector
87            class="org.rtems.cdt.build.CygwinScannerInfoCollector"
88            scope="project"/>
89      <buildOutputProvider>
90         <open/>
91         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
92      </buildOutputProvider>
93      <scannerInfoProvider providerId="specsFile">
94         <run
95               arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}"
96               class="org.rtems.cdt.build.CygwinRunScannerInfoProvider"/>
97         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
98      </scannerInfoProvider>
99   </extension>
100   <extension
101         id="RtemsSCDProfileWinC"
102         name="RTEMS Scanner Configuration Discovery Profile (Windows)"
103         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
104      <scannerInfoCollector
105            class="org.rtems.cdt.build.CygwinScannerInfoCollector"
106            scope="project"/>
107      <buildOutputProvider>
108         <open/>
109         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
110      </buildOutputProvider>
111      <scannerInfoProvider providerId="specsFile">
112         <run
113               arguments="-E -P -v -dD ${plugin_state_location}/specs.c"
114               class="org.rtems.cdt.build.CygwinRunScannerInfoProvider"/>
115         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
116      </scannerInfoProvider>
117   </extension>
118   <extension
119         id="RtemsSCDProfileWinCPP"
120         name="RTEMS Scanner Configuration Discovery Profile (Windows)"
121         point="org.eclipse.cdt.make.core.ScannerConfigurationDiscoveryProfile">
122      <scannerInfoCollector
123            class="org.rtems.cdt.build.CygwinScannerInfoCollector"
124            scope="project"/>
125      <buildOutputProvider>
126         <open/>
127         <scannerInfoConsoleParser class="org.eclipse.cdt.managedbuilder.internal.scannerconfig.ManagedGCCScannerInfoConsoleParser"/>
128      </buildOutputProvider>
129      <scannerInfoProvider providerId="specsFile">
130         <run
131               arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp"
132               class="org.rtems.cdt.build.CygwinRunScannerInfoProvider"/>
133         <scannerInfoConsoleParser class="org.eclipse.cdt.make.internal.core.scannerconfig.gnu.GCCSpecsConsoleParser"/>
134      </scannerInfoProvider>
135   </extension>
136
137   <!-- Build Definitions -->
138   <extension
139         id="org.rtems.cdt.build"
140         point="org.eclipse.cdt.managedbuilder.core.buildDefinitions">
141
142      <!-- Configuration -->
143      <configuration
144            id="org.rtems.cdt.config.base"
145            name="RTEMS Configuration"
146            cleanCommand="rm -rf"
147            artifactExtension="exe">
148         <enablement type="CONTAINER_ATTRIBUTE"
149               attribute="artifactExtension"
150               value="a"
151               extensionAdjustment="false">
152            <checkBuildProperty
153                  property="org.eclipse.cdt.build.core.buildArtefactType"
154                  value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
155         </enablement>
156      </configuration>
157
158      <!-- Tools -->
159      <tool
160            id="org.rtems.cdt.tool.gcc"
161            isAbstract="true"
162            commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
163            errorParsers="org.eclipse.cdt.core.GCCErrorParser"
164            name="RTEMS GCC"
165            natureFilter="both"
166            outputFlag="-o">
167         <supportedProperties>
168            <property id="org.eclipse.cdt.build.core.buildType">
169               <value id="org.eclipse.cdt.build.core.buildType.debug"/>
170               <value id="org.eclipse.cdt.build.core.buildType.release"/>
171            </property>
172         </supportedProperties>
173         <outputType
174               buildVariable="OBJS"
175               id="org.rtems.tool.gcc.output"
176               outputs="o"/>
177         <optionCategory
178               name="Preprocessor"
179               id="org.rtems.cdt.tool.gcc.category.preprocessor"/>
180         <option
181               id="org.rtems.cdt.tool.gcc.option.preprocessorflags"
182               name="Preprocessor flags"
183               category="org.rtems.cdt.tool.gcc.category.preprocessor"
184               valueType="string"/>
185         <option
186               id="org.rtems.cdt.tool.gcc.option.nostdinc"
187               name="Do not search standard system include directories (-nostdinc)"
188               category="org.rtems.cdt.tool.gcc.category.preprocessor"
189               command="-nostdinc"
190               valueType="boolean"
191               defaultValue="false"/>
192         <option
193               id="org.rtems.cdt.tool.gcc.option.i"
194               name="Include paths (-I)"
195               category="org.rtems.cdt.tool.gcc.category.preprocessor"
196               command="-I"
197               valueType="includePath"
198               browseType="directory"/>
199         <option
200               id="org.rtems.cdt.tool.gcc.option.d"
201               name="Defined symbols (-D)"
202               category="org.rtems.cdt.tool.gcc.category.preprocessor"
203               command="-D"
204               valueType="definedSymbols"/>
205         <option
206               id="org.rtems.cdt.tool.gcc.option.u"
207               name="Undefined symbols (-U)"
208               category="org.rtems.cdt.tool.gcc.category.preprocessor"
209               command="-U"
210               valueType="undefDefinedSymbols"/>
211         <optionCategory
212               id="org.rtems.cdt.tool.gcc.category.optimization"
213               name="Optimization"/>
214         <option
215               id="org.rtems.cdt.tool.gcc.option.optimizationflags"
216               name="Optimization flags"
217               category="org.rtems.cdt.tool.gcc.category.optimization"
218               valueType="string"/>
219         <option
220               id="org.rtems.cdt.tool.gcc.option.olevel"
221               name="Optimization level"
222               category="org.rtems.cdt.tool.gcc.category.optimization"
223               valueType="enumerated">
224            <enumeratedOptionValue
225                  id="org.rtems.cdt.tool.gcc.option.os"
226                  name="Optimize space (-Os)"
227                  command="-Os"
228                  isDefault="true"/>
229            <enumeratedOptionValue
230                  id="org.rtems.cdt.tool.gcc.option.o0"
231                  name="None (-O0)"
232                  command="-O0"/>
233            <enumeratedOptionValue
234                  id="org.rtems.cdt.tool.gcc.option.o1"
235                  name="Optimize (-O1)"
236                  command="-O1"/>
237            <enumeratedOptionValue
238                  id="org.rtems.cdt.tool.gcc.option.o2"
239                  name="Optimize more (-O2)"
240                  command="-O2"/>
241            <enumeratedOptionValue
242                  id="org.rtems.cdt.tool.gcc.option.o3"
243                  name="Optimize most (-O3)"
244                  command="-O3"/>
245            <enablement 
246                  type="CONTAINER_ATTRIBUTE" 
247                  attribute="defaultValue" 
248                  value="org.rtems.cdt.tool.gcc.option.os"
249                  extensionAdjustment="false">
250               <checkBuildProperty 
251                     property="org.eclipse.cdt.build.core.buildType"
252                     value="org.eclipse.cdt.build.core.buildType.release"/>
253            </enablement>
254            <enablement 
255                  type="CONTAINER_ATTRIBUTE" 
256                  attribute="defaultValue" 
257                  value="org.rtems.cdt.tool.gcc.option.o0"
258                  extensionAdjustment="false">
259               <checkBuildProperty 
260                     property="org.eclipse.cdt.build.core.buildType"
261                     value="org.eclipse.cdt.build.core.buildType.debug"/>
262            </enablement>
263         </option>
264         <option
265               id="org.rtems.cdt.tool.gcc.option.fnoinline"
266               name="Disable function inlining (-fno-inline)"
267               category="org.rtems.cdt.tool.gcc.category.optimization"
268               command="-fno-inline"
269               valueType="boolean"/>
270         <optionCategory
271               id="org.rtems.cdt.tool.gcc.category.debugging"
272               name="Debugging"/>
273         <option
274               id="org.rtems.cdt.tool.gcc.option.debuggingflags"
275               name="Debugging flags"
276               category="org.rtems.cdt.tool.gcc.category.debugging"
277               valueType="string"/>
278         <option
279               id="org.rtems.cdt.tool.gcc.option.glevel"
280               name="Debug level"
281               category="org.rtems.cdt.tool.gcc.category.debugging"
282               valueType="enumerated">
283            <enumeratedOptionValue
284                     id="org.rtems.cdt.tool.gcc.option.gnone"
285                     name="None"/>
286            <enumeratedOptionValue
287                     id="org.rtems.cdt.tool.gcc.option.g1"
288                     name="Minimal (-g1)"
289                     command="-g1"/>
290            <enumeratedOptionValue
291                     id="org.rtems.cdt.tool.gcc.option.g"
292                     name="Default (-g)"
293                     command="-g"
294                     isDefault="true"/>
295            <enumeratedOptionValue
296                     id="org.rtems.cdt.tool.gcc.option.g3"
297                     name="Maximal (-g3)"
298                     command="-g3"/>
299         </option>
300         <option
301               id="org.rtems.cdt.tool.gcc.option.finstrumentfunctions"
302               name="Instrument function entry and exit with profiling calls (-finstrument-functions)"
303               category="org.rtems.cdt.tool.gcc.category.debugging"
304               command="-finstrument-functions"
305               valueType="boolean"/>
306         <option
307               id="org.rtems.cdt.tool.gcc.option.p"
308               name="Enable function profiling (-p)"
309               category="org.rtems.cdt.tool.gcc.category.debugging"
310               command="-p"
311               valueType="boolean"/>
312         <optionCategory
313               id="org.rtems.cdt.tool.gcc.category.warnings"
314               name="Warnings"/>
315         <option
316               id="org.rtems.cdt.tool.gcc.option.warningflags"
317               name="Warning flags"
318               category="org.rtems.cdt.tool.gcc.category.warnings"
319               valueType="string"/>
320         <option
321               id="org.rtems.cdt.tool.gcc.option.wall"
322               name="Print default warnings (-Wall)"
323               category="org.rtems.cdt.tool.gcc.category.warnings"
324               command="-Wall"
325               valueType="boolean"
326               defaultValue="true"/>
327         <option
328               id="org.rtems.cdt.tool.gcc.option.wextra"
329               name="Print extra (possibly unwanted) warnings (-Wextra)"
330               category="org.rtems.cdt.tool.gcc.category.warnings"
331               command="-Wextra"
332               valueType="boolean"/>
333         <option
334               id="org.rtems.cdt.tool.gcc.option.werror"
335               name="Warnings are errors (-Werror)"
336               category="org.rtems.cdt.tool.gcc.category.warnings"
337               command="-Werror"
338               valueType="boolean"/>
339         <option
340               id="org.rtems.cdt.tool.gcc.option.pedantic"
341               name="Issue warnings needed for strict compliance to the standard (-pedantic)"
342               category="org.rtems.cdt.tool.gcc.category.warnings"
343               command="-pedantic"
344               valueType="boolean"/>
345         <option
346               id="org.rtems.cdt.tool.gcc.option.pedanticerrors"
347               name="Like -pedantic but issue them as errors (-pedantic-errors)"
348               category="org.rtems.cdt.tool.gcc.category.warnings"
349               command="-pedantic-errors"
350               valueType="boolean"/>
351         <option
352               id="org.rtems.cdt.tool.gcc.option.fsyntaxonly"
353               name="Check for syntax errors, then stop (-fsyntax-only)"
354               category="org.rtems.cdt.tool.gcc.category.warnings"
355               command="-fsyntax-only"
356               valueType="boolean"/>
357         <option
358               id="org.rtems.cdt.tool.gcc.option.w"
359               name="Suppress warnings (-w)"
360               category="org.rtems.cdt.tool.gcc.category.warnings"
361               command="-w"
362               valueType="boolean"/>
363         <optionCategory
364               id="org.rtems.cdt.tool.gcc.category.misc"
365               name="Miscellaneous"/>
366         <option
367               id="org.rtems.cdt.tool.gcc.option.otherflags"
368               name="Other flags"
369               category="org.rtems.cdt.tool.gcc.category.misc"
370               valueType="string"/>
371         <option
372               id="org.rtems.cdt.tool.gcc.option.c"
373               name="Compile and assemble, but do not link (-c)"
374               category="org.rtems.cdt.tool.gcc.category.misc"
375               command="-c"
376               valueType="boolean"
377               defaultValue="true"/>
378         <option
379               id="org.rtems.cdt.tool.gcc.option.messagelength0"
380               name="Suppress line-wrapping (-fmessage-length=0)"
381               category="org.rtems.cdt.tool.gcc.category.misc"
382               command="-fmessage-length=0"
383               valueType="boolean"
384               defaultValue="true"/>
385         <option
386               id="org.rtems.cdt.tool.gcc.option.pipe"
387               name="Use pipes rather than intermediate files (-pipe)"
388               category="org.rtems.cdt.tool.gcc.category.misc"
389               command="-pipe"
390               valueType="boolean"
391               defaultValue="true"/>
392         <option
393               id="org.rtems.cdt.tool.gcc.option.savetemps"
394               name="Do not delete intermediate files (-save-temps)"
395               category="org.rtems.cdt.tool.gcc.category.misc"
396               command="-save-temps"
397               valueType="boolean"/>
398         <option
399               id="org.rtems.cdt.tool.gcc.option.v"
400               name="Verbose (-v)"
401               category="org.rtems.cdt.tool.gcc.category.misc"
402               command="-v"
403               valueType="boolean"/>
404         <option
405               id="org.rtems.cdt.tool.gcc.option.b"
406               name="Search paths (-B)"
407               category="org.rtems.cdt.tool.gcc.category.misc"
408               command="-B"
409               valueType="includePath"
410               browseType="directory"/>
411      </tool>
412
413      <!-- Toolchain (Standard) -->
414      <toolChain
415            archList="all"
416            configurationEnvironmentSupplier="org.rtems.cdt.build.EnvironmentSupplier"
417            id="org.rtems.cdt.toolchain"
418            name="RTEMS Toolchain"
419            osList="all"
420            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfile"
421            targetTool="org.rtems.cdt.linker.c;org.rtems.cdt.linker.cpp;org.rtems.cdt.archiver">
422         <targetPlatform
423            id="org.rtems.cdt.target"
424            name="RTEMS Target"
425            binaryParser="org.eclipse.cdt.core.ELF"
426            osList="all"
427            archList="all">
428         </targetPlatform>
429         <builder
430               id="org.rtems.cdt.builder"
431               superClass="cdt.managedbuild.target.gnu.builder"/>
432         <tool
433               id="org.rtems.cdt.compiler.c"
434               name="RTEMS C Compiler"
435               superClass="org.rtems.cdt.tool.gcc">
436            <inputType
437                  id="org.rtems.cdt.compiler.input.c"
438                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
439                  dependencyContentType="org.eclipse.cdt.core.cHeader"
440                  dependencyExtensions="h"
441                  languageId="org.eclipse.cdt.core.gcc"
442                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
443                  sourceContentType="org.eclipse.cdt.core.cSource"
444                  sources="c"/>
445            <envVarBuildPath 
446                  pathType="buildpathInclude"
447                  variableList="CPATH,C_INCLUDE_PATH"/>
448         </tool>
449         <tool
450               id="org.rtems.cdt.compiler.cpp"
451               name="RTEMS C++ Compiler"
452               superClass="org.rtems.cdt.tool.gcc"
453               natureFilter="ccnature">
454            <inputType
455                  id="org.rtems.cdt.compiler.cpp.input"
456                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
457                  dependencyContentType="org.eclipse.cdt.core.cxxHeader"
458                  dependencyExtensions="h,H,hpp"
459                  languageId="org.eclipse.cdt.core.g++"
460                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileCPP"
461                  sourceContentType="org.eclipse.cdt.core.cxxSource"
462                  sources="c,C,cc,cxx,cpp"/>
463            <envVarBuildPath 
464                  pathType="buildpathInclude"
465                  variableList="CPATH,CPLUS_INCLUDE_PATH"/>
466         </tool>
467         <tool
468               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
469               id="org.rtems.cdt.linker.c"
470               name="RTEMS Linker"
471               superClass="cdt.managedbuild.tool.gnu.c.linker">
472            <enablement type="ALL">
473               <not>
474                  <checkBuildProperty
475                     property="org.eclipse.cdt.build.core.buildArtefactType"
476                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
477               </not>
478            </enablement>
479         </tool>
480         <tool
481               id="org.rtems.cdt.assembler.gcc"
482               name="RTEMS Assembler"
483               superClass="org.rtems.cdt.tool.gcc">
484            <inputType
485                  id="org.rtems.cdt.assembler.gcc.input"
486                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
487                  dependencyContentType="org.eclipse.cdt.core.cHeader"
488                  dependencyExtensions="h"
489                  languageId="org.eclipse.cdt.core.gcc"
490                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
491                  sourceContentType="org.eclipse.cdt.core.asmSource"
492                  sources="s,S"/>
493         </tool>
494         <tool
495               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
496               id="org.rtems.cdt.assembler"
497               name="RTEMS Bare Assembler"
498               superClass="cdt.managedbuild.tool.gnu.assembler">
499            <inputType
500                  id="org.rtems.cdt.assembler.input"
501                  superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
502         </tool>
503         <tool
504               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator"
505               id="org.rtems.cdt.archiver"
506               name="RTEMS Archiver"
507               superClass="cdt.managedbuild.tool.gnu.archiver">
508            <enablement type="ALL">
509               <checkBuildProperty
510                     property="org.eclipse.cdt.build.core.buildArtefactType"
511                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
512            </enablement>
513         </tool>
514         <tool
515               id="org.rtems.cdt.linker.cpp"
516               name="RTEMS C++ Linker"
517               superClass="cdt.managedbuild.tool.gnu.cpp.linker"
518               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
519            <enablement type="ALL">
520               <not>
521               <checkBuildProperty
522                     property="org.eclipse.cdt.build.core.buildArtefactType"
523                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
524               </not>
525            </enablement>
526         </tool>
527      </toolChain>
528
529      <!-- Toolchain (Cygwin) -->
530      <toolChain
531            id="org.rtems.cdt.toolchain.cygwin"
532            name="RTEMS Toolchain (Cygwin)"
533            archList="all"
534            osList="win32"
535            targetTool="org.rtems.cdt.linker.c.cygwin;org.rtems.cdt.linker.cpp.cygwin;org.rtems.cdt.archiver.cygwin"
536            configurationEnvironmentSupplier="org.rtems.cdt.build.CygwinEnvironmentSupplier"
537            isToolChainSupported="org.eclipse.cdt.managedbuilder.gnu.cygwin.IsGnuCygwinToolChainSupported"
538            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWin">
539         <targetPlatform
540            id="org.rtems.cdt.target.cygwin"
541            name="RTEMS Target"
542            binaryParser="org.eclipse.cdt.core.ELF"
543            osList="all"
544            archList="all">
545         </targetPlatform>
546         <builder
547               id="org.rtems.cdt.builder.cygwin"
548               superClass="cdt.managedbuild.target.gnu.builder"/>
549         <tool
550               id="org.rtems.cdt.compiler.c.cygwin"
551               name="RTEMS C Compiler (Cygwin)"
552               superClass="org.rtems.cdt.tool.gcc"
553               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
554            <inputType
555                  id="org.rtems.cdt.compiler.input.c.cygwin"
556                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
557                  dependencyContentType="org.eclipse.cdt.core.cHeader"
558                  dependencyExtensions="h"
559                  languageId="org.eclipse.cdt.core.gcc"
560                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinC"
561                  sourceContentType="org.eclipse.cdt.core.cSource"
562                  sources="c"/>
563            <envVarBuildPath 
564                  pathType="buildpathInclude"
565                  variableList="CPATH,C_INCLUDE_PATH"
566                  buildPathResolver="org.eclipse.cdt.managedbuilder.gnu.cygwin.CygwinPathResolver"/>
567         </tool>
568         <tool
569               id="org.rtems.cdt.compiler.cpp.cygwin"
570               name="RTEMS C++ Compiler (Cygwin)"
571               superClass="org.rtems.cdt.tool.gcc"
572               natureFilter="ccnature"
573               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
574            <inputType
575                  id="org.rtems.cdt.compiler.cpp.input.cygwin"
576                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
577                  dependencyContentType="org.eclipse.cdt.core.cxxHeader"
578                  dependencyExtensions="h,H,hpp"
579                  languageId="org.eclipse.cdt.core.g++"
580                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinCPP"
581                  sourceContentType="org.eclipse.cdt.core.cxxSource"
582                  sources="c,C,cc,cxx,cpp"/>
583            <envVarBuildPath 
584                  pathType="buildpathInclude"
585                  variableList="CPATH,CPLUS_INCLUDE_PATH"
586                  buildPathResolver="org.eclipse.cdt.managedbuilder.gnu.cygwin.CygwinPathResolver"/>
587         </tool>
588         <tool
589               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
590               id="org.rtems.cdt.linker.c.cygwin"
591               name="RTEMS Linker (Cygwin)"
592               superClass="cdt.managedbuild.tool.gnu.c.linker.cygwin">
593            <enablement type="ALL">
594               <not>
595                  <checkBuildProperty
596                     property="org.eclipse.cdt.build.core.buildArtefactType"
597                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
598               </not>
599            </enablement>
600         </tool>
601         <tool
602               id="org.rtems.cdt.linker.cpp.cygwin"
603               name="RTEMS C++ Linker (Cygwin)"
604               superClass="cdt.managedbuild.tool.gnu.cpp.linker.cygwin"
605               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
606            <enablement type="ALL">
607               <not>
608               <checkBuildProperty
609                     property="org.eclipse.cdt.build.core.buildArtefactType"
610                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
611               </not>
612            </enablement>
613         </tool>
614         <tool
615               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
616               id="org.rtems.cdt.assembler.cygwin"
617               name="RTEMS Bare Assembler (Cygwin)"
618               superClass="cdt.managedbuild.tool.gnu.assembler">
619            <inputType
620                  id="org.rtems.cdt.assembler.cygwin.input"
621                  superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
622         </tool>
623         <tool
624               id="org.rtems.cdt.assembler.gcc.cygwin"
625               name="RTEMS Assembler (Cygwin)"
626               superClass="org.rtems.cdt.tool.gcc"
627               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
628            <inputType
629                  id="org.rtems.cdt.assembler.gcc.input.cygwin"
630                  dependencyCalculator="org.eclipse.cdt.managedbuilder.makegen.gnu.DefaultGCCDependencyCalculator2"
631                  dependencyContentType="org.eclipse.cdt.core.cHeader"
632                  dependencyExtensions="h"
633                  languageId="org.eclipse.cdt.core.gcc"
634                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"
635                  sourceContentType="org.eclipse.cdt.core.asmSource"
636                  sources="s,S">
637            </inputType>
638         </tool>
639         <tool
640               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator"
641               id="org.rtems.cdt.archiver.cygwin"
642               name="RTEMS Archiver (Cygwin)"
643               superClass="cdt.managedbuild.tool.gnu.archiver">
644            <enablement type="ALL">
645               <checkBuildProperty
646                     property="org.eclipse.cdt.build.core.buildArtefactType"
647                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
648            </enablement>
649         </tool>
650      </toolChain>
651
652      <!-- Project Types -->
653
654      <!-- The ID names in the executable project are not very good, but we have to keep them for backward compatibility. -->
655      <projectType
656            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe"
657            id="org.rtems.cdt.projectType"
658            name="RTEMS Executable">
659         <configuration
660               id="org.rtems.cdt.config"
661               name="RTEMS Executable Configuration"
662               parent="org.rtems.cdt.config.base">
663            <toolChain
664                  id="org.rtems.cdt.config.toolchain"
665                  superClass="org.rtems.cdt.toolchain">
666            </toolChain>
667         </configuration>
668         <configuration
669               id="org.rtems.cdt.config.cygwin"
670               name="RTEMS Executable Configuration"
671               parent="org.rtems.cdt.config.base">
672            <toolChain
673                  id="org.rtems.cdt.config.toolchain.cygwin"
674                  superClass="org.rtems.cdt.toolchain.cygwin">
675            </toolChain>
676         </configuration>
677      </projectType>
678      <projectType
679            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib"
680            id="org.rtems.cdt.lib.static.project"
681            name="RTEMS Static Library">
682         <configuration
683               id="org.rtems.cdt.lib.static.config"
684               name="RTEMS Library Configuration"
685               parent="org.rtems.cdt.config.base">
686            <toolChain
687                  id="org.rtems.cdt.lib.static.config.toolchain"
688                  superClass="org.rtems.cdt.toolchain">
689            </toolChain>
690         </configuration>
691         <configuration
692               id="org.rtems.cdt.lib.static.config.cygwin"
693               name="RTEMS Library Configuration"
694               parent="org.rtems.cdt.config.base">
695            <toolChain
696                  id="org.rtems.cdt.lib.static.config.toolchain.cygwin"
697                  superClass="org.rtems.cdt.toolchain.cygwin">
698            </toolChain>
699         </configuration>
700      </projectType>
701   </extension>
702
703   <!-- New Project Wizard -->
704   <extension
705         point="org.eclipse.cdt.managedbuilder.ui.newWizardPages">
706      <wizardPage
707            ID="org.rtems.cdt.wizards.BasicSetup"
708            operationClass="org.rtems.cdt.wizards.FinishSetup"
709            pageClass="org.rtems.cdt.wizards.BasicSetup"/>
710   </extension>
711
712   <!-- Preferences -->
713   <extension
714         point="org.eclipse.ui.preferencePages">
715      <page
716            category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
717            class="org.rtems.cdt.preferences.PreferencePage"
718            id="org.rtems.cdt.preferences.PreferencePage"
719            name="RTEMS">
720      </page>
721   </extension>
722   <extension
723         point="org.eclipse.core.runtime.preferences">
724      <initializer
725            class="org.rtems.cdt.preferences.PreferenceInitializer"/>
726   </extension>
727
728   <!-- Properties -->
729   <extension
730         point="org.eclipse.ui.propertyPages">
731      <page
732            category="org.eclipse.cdt.managedbuilder.ui.properties.Page_head_build"
733            class="org.rtems.cdt.properties.PropertyPage"
734            id="org.rtems.cdt.properties.PropertyPage"
735            name="RTEMS">
736         <filter
737               name="projectNature"
738               value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
739         <enabledWhen>
740            <or>
741               <instanceof value="org.eclipse.cdt.core.model.ICContainer"/>
742               <instanceof value="org.eclipse.cdt.core.model.ICProject"/>
743               <instanceof value="org.eclipse.cdt.core.model.ITranslationUnit"/>
744               <instanceof value="org.eclipse.core.resources.IFile"/>
745               <instanceof value="org.eclipse.core.resources.IFolder"/>
746               <instanceof value="org.eclipse.core.resources.IProject"/>
747            </or>
748         </enabledWhen>
749      </page>
750   </extension>
751   <extension
752         point="org.eclipse.cdt.core.templates">
753      <template
754            filterPattern=".*gcc"
755            id="org.rtems.cdt.template.hello"
756            location="$nl$/templates/hello/template.xml"
757            projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
758      </template>
759      <template
760            filterPattern=".*g\+\+"
761            id="org.rtems.cdt.template.cxx"
762            location="$nl$/templates/rtems++/template.xml"
763            projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
764      </template>
765   </extension>
766   <extension
767         point="org.eclipse.cdt.core.templateAssociations">
768      <template
769            id="org.rtems.cdt.template.hello">
770         <toolChain
771               id="org.rtems.cdt.toolchain">
772         </toolChain>
773         <toolChain
774               id="org.rtems.cdt.toolchain.cygwin">
775         </toolChain>
776      </template>
777      <template
778            id="org.rtems.cdt.template.cxx">
779         <toolChain
780               id="org.rtems.cdt.toolchain">
781         </toolChain>
782      </template>
783   </extension>
784</plugin>
Note: See TracBrowser for help on using the repository browser.