Eclipse SDK Version: 3.3.2
CDT Version: 4.0.3
Hello,
I am currently trying to setup a tool chain for a
Scons based build process. Now I have several questions that I can’t
figure out from the documentation or FAQ. First of all I suppose that for such
an external build process the “Standard Make” model is more
suitable than the “Managed Make”, isn’t it?
What I’ve tried so far is that I added a
projectType to the extension point org.eclipse.cdt.managedbuilder.core.buildDefinitions
like the one below:
<extension
point="org.eclipse.cdt.managedbuilder.core.buildDefinitions">
<projectType
buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe"
id="mytoolchain.executable"
isAbstract="false"
isTest="false">
<configuration
buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe"
errorParsers="org.eclipse.cdt.myerrorparser"
id="mytoolchain.configuration.debug"
name=" Debug">
<toolChain
id="org.eclipse.cdt.mytoolchain.toolChain3"
superClass="org.eclipse.cdt.mytoolchain.toolChain1">
</toolChain>
</configuration>
</projectType>
<toolChain
id="org.eclipse.cdt.mytoolchain.toolChain1"
isAbstract="true"
name="My Tool Chain"
osList="win32"
supportsManagedBuild="false">
<builder
command="Build.bat"
id="org.eclipse.cdt.mytoolchain.builder1"
name="My Builder"
supportsManagedBuild="false">
</builder>
<tool
command="Build.bat"
id="mytoolchain.compiler"
name="My Compiler"
natureFilter="both"
supportsManagedBuild="false">
<inputType
dependencyContentType="org.eclipse.cdt.core.cHeader"
id="mytoolchain.compiler.input"
name="My Compiler Input"
primaryInput="true"
sourceContentType="org.eclipse.cdt.core.cSource">
</inputType>
<outputType
buildVariable="OBJS"
id="mytoolchain.compiler.output"
name="My Compiler Output"
outputs="obj"
primaryOutput="true">
</outputType>
<optionCategory
id="mytoolchain.compiler.optionCategory.general"
name="General"
owner="mytoolchain.compiler">
</optionCategory>
<option
browseType="directory"
category="mytoolchain.compiler.optionCategory.general"
command="-i"
id="mytoolchain.compiler.general.incpath"
name="Include paths"
valueType="includePath">
</option>
<option
category="mytoolchain.compiler.optionCategory.general"
command="-D"
id="mytoolchain.general.defines"
name="Defines"
valueType="definedSymbols">
<listOptionValue
builtIn="false"
value="SCONS">
</listOptionValue>
</option>
</tool>
</toolChain>
</extension>
Additionally I added a new template here:
<extension
point="org.eclipse.cdt.core.templates">
<template
id="org.eclipse.cdt.mytoolchain.template1"
location="templates/MyPrjTemplate.xml"
projectType="org.eclipse.cdt.build.core.buildArtefactType.exe">
<toolChain
id="org.eclipse.cdt.mytoolchain.toolChain3">
</toolChain>
</template>
</extension>
What I now would expect is that I see my new Template
under the Executable folder in the new Project Wizard and that I can select my
own defined tool chain after selecting my new template. What I really get is
that my tool chain can only be selected if I select the “Makefile project”
folder. My template however is not available at all. If I then insert a name
for the projectType in the buildDefinitions extension above I can see my
template in parallel to the existing folders and can also select my tool chain,
however my template isn’t executed. Can somebody tell me how to fix this
issue?
Another question I have is how can I add a template
to the folder “Makefile project”? I’ve only seen IDs to add
templates to the exe, shared and static lib folder but not to the Makefile
project folder.
Any help is greatly appreciated.
Thanks,
Thomas Merx