source: rtems-eclipse-plug-in/org.rtems.cdt/plugin.xml @ 9e06e93

Last change on this file since 9e06e93 was 9e06e93, checked in by Sebastian Huber <sebastian.huber@…>, on Jul 15, 2009 at 10:00:49 AM

Added input type for assembler.

  • Property mode set to 100644
File size: 19.1 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      <!-- Toolchain (Standard) -->
159      <toolChain
160            archList="all"
161            configurationEnvironmentSupplier="org.rtems.cdt.build.EnvironmentSupplier"
162            id="org.rtems.cdt.toolchain"
163            name="RTEMS Toolchain"
164            osList="all"
165            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfile"
166            targetTool="org.rtems.cdt.linker.c;org.rtems.cdt.linker.cpp;org.rtems.cdt.archiver">
167         <targetPlatform
168            id="org.rtems.cdt.target"
169            name="RTEMS Target"
170            binaryParser="org.eclipse.cdt.core.ELF"
171            osList="all"
172            archList="all">
173         </targetPlatform>
174         <builder
175               id="org.rtems.cdt.builder"
176               superClass="cdt.managedbuild.target.gnu.builder"/>
177         <tool
178               id="org.rtems.cdt.assembler"
179               superClass="cdt.managedbuild.tool.gnu.assembler"
180               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
181            <inputType
182                  id="org.rtems.cdt.assembler.input"
183                  superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
184         </tool>
185         <tool
186               id="org.rtems.cdt.compiler.c"
187               superClass="cdt.managedbuild.tool.gnu.c.compiler"
188               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
189            <inputType
190                  id="org.rtems.cdt.compiler.input.c"
191                  superClass="cdt.managedbuild.tool.gnu.c.compiler.input"
192                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"/>
193         </tool>
194         <tool
195               id="org.rtems.cdt.compiler.cpp"
196               superClass="cdt.managedbuild.tool.gnu.cpp.compiler"
197               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
198            <inputType
199                  id="org.rtems.cdt.compiler.cpp.input"
200                  superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"
201                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileCPP"/>
202         </tool>
203         <tool
204               id="org.rtems.cdt.linker.c"
205               superClass="cdt.managedbuild.tool.gnu.c.linker"
206               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
207            <enablement type="ALL">
208               <not>
209                  <checkBuildProperty
210                     property="org.eclipse.cdt.build.core.buildArtefactType"
211                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
212               </not>
213            </enablement>
214         </tool>
215         <tool
216               id="org.rtems.cdt.linker.cpp"
217               superClass="cdt.managedbuild.tool.gnu.cpp.linker"
218               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
219            <enablement type="ALL">
220               <not>
221               <checkBuildProperty
222                     property="org.eclipse.cdt.build.core.buildArtefactType"
223                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
224               </not>
225            </enablement>
226         </tool>
227         <tool
228               id="org.rtems.cdt.archiver"
229               superClass="cdt.managedbuild.tool.gnu.archiver"
230               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
231            <enablement type="ALL">
232               <checkBuildProperty
233                     property="org.eclipse.cdt.build.core.buildArtefactType"
234                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
235            </enablement>
236         </tool>
237      </toolChain>
238
239      <!-- Toolchain (Cygwin) -->
240      <toolChain
241            id="org.rtems.cdt.toolchain.cygwin"
242            name="RTEMS Toolchain (Cygwin)"
243            archList="all"
244            osList="win32"
245            targetTool="org.rtems.cdt.linker.c.cygwin;org.rtems.cdt.linker.cpp.cygwin;org.rtems.cdt.archiver.cygwin"
246            configurationEnvironmentSupplier="org.rtems.cdt.build.CygwinEnvironmentSupplier"
247            isToolChainSupported="org.eclipse.cdt.managedbuilder.gnu.cygwin.IsGnuCygwinToolChainSupported"
248            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWin">
249         <targetPlatform
250            id="org.rtems.cdt.target.cygwin"
251            name="RTEMS Target"
252            binaryParser="org.eclipse.cdt.core.ELF"
253            osList="all"
254            archList="all">
255         </targetPlatform>
256         <builder
257               id="org.rtems.cdt.builder.cygwin"
258               superClass="cdt.managedbuild.target.gnu.builder"/>
259         <tool
260               id="org.rtems.cdt.assembler.cygwin"
261               superClass="cdt.managedbuild.tool.gnu.assembler"
262               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
263            <inputType
264                  id="org.rtems.cdt.assembler.cygwin.input"
265                  superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
266         </tool>
267         <tool
268               id="org.rtems.cdt.compiler.c.cygwin"
269               superClass="cdt.managedbuild.tool.gnu.c.compiler.cygwin"
270               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
271            <inputType
272                  id="org.rtems.cdt.compiler.input.c.cygwin"
273                  superClass="cdt.managedbuild.tool.gnu.c.compiler.input.cygwin"
274                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinC"/>
275         </tool>
276         <tool
277               id="org.rtems.cdt.compiler.cpp.cygwin"
278               superClass="cdt.managedbuild.tool.gnu.cpp.compiler.cygwin"
279               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
280            <inputType
281                  id="org.rtems.cdt.compiler.cpp.input.cygwin"
282                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinCPP"
283                  superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input.cygwin"/>
284         </tool>
285         <tool
286               id="org.rtems.cdt.linker.c.cygwin"
287               superClass="cdt.managedbuild.tool.gnu.c.linker.cygwin"
288               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
289            <enablement type="ALL">
290               <not>
291                  <checkBuildProperty
292                     property="org.eclipse.cdt.build.core.buildArtefactType"
293                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
294               </not>
295            </enablement>
296         </tool>
297         <tool
298               id="org.rtems.cdt.linker.cpp.cygwin"
299               superClass="cdt.managedbuild.tool.gnu.cpp.linker.cygwin"
300               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
301            <enablement type="ALL">
302               <not>
303               <checkBuildProperty
304                     property="org.eclipse.cdt.build.core.buildArtefactType"
305                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
306               </not>
307            </enablement>
308         </tool>
309         <tool
310               id="org.rtems.cdt.archiver.cygwin"
311               superClass="cdt.managedbuild.tool.gnu.archiver"
312               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
313            <enablement type="ALL">
314               <checkBuildProperty
315                     property="org.eclipse.cdt.build.core.buildArtefactType"
316                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
317            </enablement>
318         </tool>
319      </toolChain>
320
321      <!-- Project Types -->
322
323      <!-- The ID names in the executable project are not very good, but we have to keep them for backward compatibility. -->
324      <projectType
325            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe"
326            id="org.rtems.cdt.projectType"
327            name="RTEMS Executable">
328         <configuration
329               id="org.rtems.cdt.config"
330               name="RTEMS Executable Configuration"
331               parent="org.rtems.cdt.config.base">
332            <toolChain
333                  id="org.rtems.cdt.config.toolchain"
334                  superClass="org.rtems.cdt.toolchain">
335            </toolChain>
336         </configuration>
337         <configuration
338               id="org.rtems.cdt.config.cygwin"
339               name="RTEMS Executable Configuration"
340               parent="org.rtems.cdt.config.base">
341            <toolChain
342                  id="org.rtems.cdt.config.toolchain.cygwin"
343                  superClass="org.rtems.cdt.toolchain.cygwin">
344            </toolChain>
345         </configuration>
346      </projectType>
347      <projectType
348            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib"
349            id="org.rtems.cdt.lib.static.project"
350            name="RTEMS Static Library">
351         <configuration
352               id="org.rtems.cdt.lib.static.config"
353               name="RTEMS Library Configuration"
354               parent="org.rtems.cdt.config.base">
355            <toolChain
356                  id="org.rtems.cdt.lib.static.config.toolchain"
357                  superClass="org.rtems.cdt.toolchain">
358            </toolChain>
359         </configuration>
360         <configuration
361               id="org.rtems.cdt.lib.static.config.cygwin"
362               name="RTEMS Library Configuration"
363               parent="org.rtems.cdt.config.base">
364            <toolChain
365                  id="org.rtems.cdt.lib.static.config.toolchain.cygwin"
366                  superClass="org.rtems.cdt.toolchain.cygwin">
367            </toolChain>
368         </configuration>
369      </projectType>
370   </extension>
371
372   <!-- New Project Wizard -->
373   <extension
374         point="org.eclipse.cdt.managedbuilder.ui.newWizardPages">
375      <wizardPage
376            ID="org.rtems.cdt.wizards.BasicSetup"
377            operationClass="org.rtems.cdt.wizards.FinishSetup"
378            pageClass="org.rtems.cdt.wizards.BasicSetup"/>
379   </extension>
380
381   <!-- Preferences -->
382   <extension
383         point="org.eclipse.ui.preferencePages">
384      <page
385            category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
386            class="org.rtems.cdt.preferences.PreferencePage"
387            id="org.rtems.cdt.preferences.PreferencePage"
388            name="RTEMS">
389      </page>
390   </extension>
391   <extension
392         point="org.eclipse.core.runtime.preferences">
393      <initializer
394            class="org.rtems.cdt.preferences.PreferenceInitializer"/>
395   </extension>
396
397   <!-- Properties -->
398   <extension
399         point="org.eclipse.ui.propertyPages">
400      <page
401            category="org.eclipse.cdt.managedbuilder.ui.properties.Page_head_build"
402            class="org.rtems.cdt.properties.PropertyPage"
403            id="org.rtems.cdt.properties.PropertyPage"
404            name="RTEMS">
405         <filter
406               name="projectNature"
407               value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
408         <enabledWhen>
409            <or>
410               <instanceof value="org.eclipse.cdt.core.model.ICContainer"/>
411               <instanceof value="org.eclipse.cdt.core.model.ICProject"/>
412               <instanceof value="org.eclipse.cdt.core.model.ITranslationUnit"/>
413               <instanceof value="org.eclipse.core.resources.IFile"/>
414               <instanceof value="org.eclipse.core.resources.IFolder"/>
415               <instanceof value="org.eclipse.core.resources.IProject"/>
416            </or>
417         </enabledWhen>
418      </page>
419   </extension>
420   <extension
421         point="org.eclipse.cdt.core.templates">
422      <template
423            filterPattern=".*gcc"
424            id="org.rtems.cdt.template.hello"
425            location="$nl$/templates/hello/template.xml"
426            projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
427      </template>
428      <template
429            filterPattern=".*g\+\+"
430            id="org.rtems.cdt.template.cxx"
431            location="$nl$/templates/rtems++/template.xml"
432            projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
433      </template>
434   </extension>
435   <extension
436         point="org.eclipse.cdt.core.templateAssociations">
437      <template
438            id="org.rtems.cdt.template.hello">
439         <toolChain
440               id="org.rtems.cdt.toolchain">
441         </toolChain>
442         <toolChain
443               id="org.rtems.cdt.toolchain.cygwin">
444         </toolChain>
445      </template>
446      <template
447            id="org.rtems.cdt.template.cxx">
448         <toolChain
449               id="org.rtems.cdt.toolchain">
450         </toolChain>
451      </template>
452   </extension>
453</plugin>
Note: See TracBrowser for help on using the repository browser.