source: rtems-eclipse-plug-in/org.rtems.cdt/plugin.xml @ 6740c53

Last change on this file since 6740c53 was 6740c53, checked in by Sebastian Huber <sebastian.huber@…>, on 12/04/08 at 14:53:45

Initial commit.

  • Property mode set to 100644
File size: 16.7 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         </tool>
182         <tool
183               id="org.rtems.cdt.compiler.c"
184               superClass="cdt.managedbuild.tool.gnu.c.compiler"
185               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
186            <inputType
187                  id="org.rtems.cdt.compiler.input.c"
188                  superClass="cdt.managedbuild.tool.gnu.c.compiler.input"
189                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileC"/>
190         </tool>
191         <tool
192               id="org.rtems.cdt.compiler.cpp"
193               superClass="cdt.managedbuild.tool.gnu.cpp.compiler"
194               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
195            <inputType
196                  id="org.rtems.cdt.compiler.cpp.input"
197                  superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"
198                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileCPP"/>
199         </tool>
200         <tool
201               id="org.rtems.cdt.linker.c"
202               superClass="cdt.managedbuild.tool.gnu.c.linker"
203               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
204            <enablement type="ALL">
205               <not>
206                  <checkBuildProperty
207                     property="org.eclipse.cdt.build.core.buildArtefactType"
208                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
209               </not>
210            </enablement>
211         </tool>
212         <tool
213               id="org.rtems.cdt.linker.cpp"
214               superClass="cdt.managedbuild.tool.gnu.cpp.linker"
215               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
216            <enablement type="ALL">
217               <not>
218               <checkBuildProperty
219                     property="org.eclipse.cdt.build.core.buildArtefactType"
220                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
221               </not>
222            </enablement>
223         </tool>
224         <tool
225               id="org.rtems.cdt.archiver"
226               superClass="cdt.managedbuild.tool.gnu.archiver"
227               commandLineGenerator="org.rtems.cdt.build.CommandLineGenerator">
228            <enablement type="ALL">
229               <checkBuildProperty
230                     property="org.eclipse.cdt.build.core.buildArtefactType"
231                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
232            </enablement>
233         </tool>
234      </toolChain>
235
236      <!-- Toolchain (Cygwin) -->
237      <toolChain
238            id="org.rtems.cdt.toolchain.cygwin"
239            name="RTEMS Toolchain (Cygwin)"
240            archList="all"
241            osList="win32"
242            targetTool="org.rtems.cdt.linker.c.cygwin;org.rtems.cdt.linker.cpp.cygwin;org.rtems.cdt.archiver.cygwin"
243            configurationEnvironmentSupplier="org.rtems.cdt.build.CygwinEnvironmentSupplier"
244            isToolChainSupported="org.eclipse.cdt.managedbuilder.gnu.cygwin.IsGnuCygwinToolChainSupported"
245            scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWin">
246         <targetPlatform
247            id="org.rtems.cdt.target.cygwin"
248            name="RTEMS Target"
249            binaryParser="org.eclipse.cdt.core.ELF"
250            osList="all"
251            archList="all">
252         </targetPlatform>
253         <builder
254               id="org.rtems.cdt.builder.cygwin"
255               superClass="cdt.managedbuild.target.gnu.builder"/>
256         <tool
257               id="org.rtems.cdt.assembler.cygwin"
258               superClass="cdt.managedbuild.tool.gnu.assembler"
259               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
260         </tool>
261         <tool
262               id="org.rtems.cdt.compiler.c.cygwin"
263               superClass="cdt.managedbuild.tool.gnu.c.compiler.cygwin"
264               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
265            <inputType
266                  id="org.rtems.cdt.compiler.input.c.cygwin"
267                  superClass="cdt.managedbuild.tool.gnu.c.compiler.input.cygwin"
268                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinC"/>
269         </tool>
270         <tool
271               id="org.rtems.cdt.compiler.cpp.cygwin"
272               superClass="cdt.managedbuild.tool.gnu.cpp.compiler.cygwin"
273               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
274            <inputType
275                  id="org.rtems.cdt.compiler.cpp.input.cygwin"
276                  scannerConfigDiscoveryProfileId="org.rtems.cdt.RtemsSCDProfileWinCPP"
277                  superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input.cygwin"/>
278         </tool>
279         <tool
280               id="org.rtems.cdt.linker.c.cygwin"
281               superClass="cdt.managedbuild.tool.gnu.c.linker.cygwin"
282               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
283            <enablement type="ALL">
284               <not>
285                  <checkBuildProperty
286                     property="org.eclipse.cdt.build.core.buildArtefactType"
287                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
288               </not>
289            </enablement>
290         </tool>
291         <tool
292               id="org.rtems.cdt.linker.cpp.cygwin"
293               superClass="cdt.managedbuild.tool.gnu.cpp.linker.cygwin"
294               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
295            <enablement type="ALL">
296               <not>
297               <checkBuildProperty
298                     property="org.eclipse.cdt.build.core.buildArtefactType"
299                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
300               </not>
301            </enablement>
302         </tool>
303         <tool
304               id="org.rtems.cdt.archiver.cygwin"
305               superClass="cdt.managedbuild.tool.gnu.archiver"
306               commandLineGenerator="org.rtems.cdt.build.CygwinCommandLineGenerator">
307            <enablement type="ALL">
308               <checkBuildProperty
309                     property="org.eclipse.cdt.build.core.buildArtefactType"
310                     value="org.eclipse.cdt.build.core.buildArtefactType.staticLib"/>
311            </enablement>
312         </tool>
313      </toolChain>
314
315      <!-- Project Type -->
316      <projectType
317            buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe"
318            id="org.rtems.cdt.projectType"
319            name="RTEMS Executable">
320         <configuration
321               id="org.rtems.cdt.config"
322               name="RTEMS Executable Configuration"
323               parent="org.rtems.cdt.config.base">
324            <toolChain
325                  id="org.rtems.cdt.config.toolchain"
326                  superClass="org.rtems.cdt.toolchain">
327            </toolChain>
328         </configuration>
329         <configuration
330               id="org.rtems.cdt.config.cygwin"
331               name="RTEMS Executable Configuration"
332               parent="org.rtems.cdt.config.base">
333            <toolChain
334                  id="org.rtems.cdt.config.toolchain.cygwin"
335                  superClass="org.rtems.cdt.toolchain.cygwin">
336            </toolChain>
337         </configuration>
338      </projectType>
339   </extension>
340
341   <!-- New Project Wizard -->
342   <extension
343         point="org.eclipse.cdt.managedbuilder.ui.newWizardPages">
344      <wizardPage
345            ID="org.rtems.cdt.wizards.BasicSetup"
346            operationClass="org.rtems.cdt.wizards.FinishSetup"
347            pageClass="org.rtems.cdt.wizards.BasicSetup"/>
348   </extension>
349
350   <!-- Preferences -->
351   <extension
352         point="org.eclipse.ui.preferencePages">
353      <page
354            category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
355            class="org.rtems.cdt.preferences.PreferencePage"
356            id="org.rtems.cdt.preferences.PreferencePage"
357            name="RTEMS">
358      </page>
359   </extension>
360   <extension
361         point="org.eclipse.core.runtime.preferences">
362      <initializer
363            class="org.rtems.cdt.preferences.PreferenceInitializer"/>
364   </extension>
365
366   <!-- Properties -->
367   <extension
368         point="org.eclipse.ui.propertyPages">
369      <page
370            category="org.eclipse.cdt.managedbuilder.ui.properties.Page_head_build"
371            class="org.rtems.cdt.properties.PropertyPage"
372            id="org.rtems.cdt.properties.PropertyPage"
373            name="RTEMS">
374         <filter
375               name="projectNature"
376               value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
377         <enabledWhen>
378            <or>
379               <instanceof value="org.eclipse.cdt.core.model.ICContainer"/>
380               <instanceof value="org.eclipse.cdt.core.model.ICProject"/>
381               <instanceof value="org.eclipse.cdt.core.model.ITranslationUnit"/>
382               <instanceof value="org.eclipse.core.resources.IFile"/>
383               <instanceof value="org.eclipse.core.resources.IFolder"/>
384               <instanceof value="org.eclipse.core.resources.IProject"/>
385            </or>
386         </enabledWhen>
387      </page>
388   </extension>
389</plugin>
Note: See TracBrowser for help on using the repository browser.