summaryrefslogtreecommitdiffstats
path: root/org.rtems.cdt/templates/rtems++/template.xml
blob: 73766b64763d7349db395f9167a212b42dcfd01f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?xml version="1.0" encoding="ISO-8859-1"?>
<template type="ProjTempl" version="1.0" 
          supplier="www.rtems.com" revision="1.0" 
          author="chabotd"
          copyright=""
          id="RTEMSCxxProject"  
          label="%RTEMS.Cxx.Template.Label" 
          description="%RTEMS.Cxx.Template.Label.Description"
          help="help.html">

    <property-group id="directories" label="Project Directories" description="Generated files will be copied to specified directories under project root." type="PAGES-ONLY" help="help.html">
        <property id="sourceDir"
                label="Source"
                description="Directory for project source files"
                type="input"
                default="src"
                pattern="[a-zA-Z0-9]+"
                mandatory="false"
                persist="true">
        </property>
        <property id="includeDir"
                label="Include"
                description="Directory for project header files"
                type="input"
                default="include"
                pattern="[a-zA-Z0-9]+"
                mandatory="false"
                persist="true">
        </property>
    </property-group>

    <process type="org.eclipse.cdt.managedbuilder.core.NewManagedProject">
        <simple name="name" value="$(projectName)" /> 
        <simple name="artifactExtension" value="exe" /> 
        <simple name="isCProject" value="false" /> 
    </process>

    <process type="org.eclipse.cdt.core.CreateSourceFolder">
        <simple name="projectName" value="$(projectName)"/>
        <simple name="path" value="$(sourceDir)"/>
    </process>
    
    <process type="org.eclipse.cdt.managedbuilder.core.CreateIncludeFolder">
        <simple name="projectName" value="$(projectName)"/>
        <simple name="path" value="$(includeDir)"/>
    </process>

    <process type="org.eclipse.cdt.core.AddFiles">
        <simple name="projectName" value="$(projectName)"/>
        <complex-array name="files">
            <element>
                <simple name="source" value="src/Init.cc"/>
                <simple name="target" value="$(sourceDir)/$(projectName).cc"/>
                <simple name="replaceable" value="true"/>
            </element>
            <element>
                <simple name="source" value="src/System.h"/>
                <simple name="target" value="$(sourceDir)/System.h"/>
                <simple name="replaceable" value="true"/>
            </element>
            <element>
                <simple name="source" value="src/Task1.cc"/>
                <simple name="target" value="$(sourceDir)/Task1.cc"/>
                <simple name="replaceable" value="true"/>
            </element>
            <element>
                <simple name="source" value="src/Task2.cc"/>
                <simple name="target" value="$(sourceDir)/Task2.cc"/>
                <simple name="replaceable" value="true"/>
            </element>
            <element>
                <simple name="source" value="src/Task3.cc"/>
                <simple name="target" value="$(sourceDir)/Task3.cc"/>
                <simple name="replaceable" value="true"/>
            </element>
            <element>
                <simple name="source" value="include/tmacros.h"/>
                <simple name="target" value="$(includeDir)/tmacros.h"/>
                <simple name="replaceable" value="true"/>
            </element>
            <element>
                <simple name="source" value="include/buffer_test_io.h"/>
                <simple name="target" value="$(includeDir)/buffer_test_io.h"/>
                <simple name="replaceable" value="true"/>
            </element>
        </complex-array>
    </process>

</template>