File: kdesrc-buildrc.xml

package info (click to toggle)
kdesrc-build 1.15.1-1.1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 704 kB
  • ctags: 344
  • sloc: perl: 5,915; xml: 180; makefile: 10; sh: 9
file content (220 lines) | stat: -rw-r--r-- 9,292 bytes parent folder | download | duplicates (2)
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!-- This goes into $KDEDIR/share/apps/katepart/syntax, or
     it can go to $KDEHOME/share/apps/katepart/syntax
 -->
<language name = "kdesrc-buildrc"
       version = "0.5.3"
   kateversion = "3.5"
       section = "Configuration"
    extensions = ".kdesrc-buildrc;kdesrc-buildrc;.kdesvn-buildrc;kdesvn-buildrc"
        author = "Michael Pyne &lt;mpyne@kde.org&gt;"
       license = "LGPLv3">

  <highlighting>
    <list name="bools">
      <item>true</item>
      <item>false</item>
      <item>TRUE</item>
      <item>FALSE</item>
      <item>0</item>
      <item>1</item>
    </list>

    <list name="setEnvOptions">
      <item>set-env</item> <!-- Handled separately for special syntax highlighting. -->
    </list>

    <!-- List of options that can be present in a module-set -->
    <list name="moduleSetOptions">
      <item>use-modules</item>
    </list>

    <!-- These options should only have a boolean value passed to them. -->
    <list name="globalBoolOptions">
      <item>async</item>
      <item>colorful-output</item>
      <item>disable-agent-check</item>
      <item>disable-snapshot</item>
      <item>pretend</item>
      <item>purge-old-logs</item>
      <item>stop-on-failure</item>
      <item>use-idle-io-priority</item>
    </list>

    <list name="boolOptions">
      <item>build-system-only</item>
      <item>build-when-unchanged</item>
      <item>install-after-build</item>
      <item>manual-build</item>
      <item>manual-update</item>
      <item>no-src</item>
      <item>reconfigure</item>
      <item>recreate-configure</item>
      <item>refresh-build</item>
      <item>remove-after-install</item>
      <item>run-tests</item>
    </list>

    <list name="globalOptions">
      <item>email-address</item>
      <item>email-on-compile-error</item>
      <item>git-repository-base</item>
      <item>kde-languages</item>
      <item>niceness</item>
      <item>debug-level</item>
    </list>

    <list name="options">
      <item>binpath</item>
      <item>branch</item>
      <item>build-dir</item>
      <item>checkout-only</item>
      <item>cmake-options</item>
      <item>configure-flags</item>
      <item>cxxflags</item>
      <item>dest-dir</item>
      <item>do-not-compile</item>
      <item>kdedir</item>
      <item>libpath</item>
      <item>log-dir</item>
      <item>make-install-prefix</item>
      <item>make-options</item>
      <item>module-base-path</item>
      <item>override-url</item>
      <item>prefix</item>
      <item>qtdir</item>
      <item>repository</item>
      <item>revision</item>
      <item>source-dir</item>
      <item>svn-server</item>
      <item>tag</item>
    </list>

    <contexts>
      <context name="Root Level" attribute="Normal Text" lineEndContext="#stay">
        <DetectSpaces/>
        <StringDetect attribute="Global Declaration" context="Global Options" String="global" beginRegion="Global Options" firstNonSpace="true" />
        <StringDetect attribute="Module Declaration" context="ModuleSet Options" String="module-set" beginRegion="ModuleSet Options" firstNonSpace="true" />

        <!-- Only match if a module name is given -->
        <StringDetect attribute="Module Declaration" context="Module Decl" String="module" firstNonSpace="true" beginRegion="Module Options"/>
        <DetectChar context="Comment" char="#"/>
      </context>

      <context name="Comment" attribute="Comment" lineEndContext="#pop">
      </context>

      <context name="Module Decl" attribute="Module Name" lineEndContext="Module Options">
        <DetectSpaces/>
        <RegExpr attribute="Module Name" String="[a-zA-Z0-9/-]+"/>
        <DetectChar context="Comment" char="#"/>
      </context>

      <context name="Common Module Options" attribute="Normal Text">
        <DetectSpaces/>
        <StringDetect String="cmake-options" context="CMake Option" attribute="Option Name" />
        <keyword attribute="Option Name" context="Environment Name" String="setEnvOptions" />
        <keyword attribute="Option Name" context="Option Value" String="options"/>
        <keyword attribute="Option Name" context="Bool Option Value" String="boolOptions"/>

        <!-- No kdesrc-build options start with digits or a dash. -->
        <RegExpr attribute="Possible Error" context="Option Value" String="[0-9-][a-zA-Z0-9_-]+" />
        <RegExpr attribute="Unknown Option Name" context="Option Value" String="[a-zA-Z0-9_-]+" />
        <DetectChar context="Comment" char="#"/>
      </context>

      <context attribute="Normal Text" name="CMake Option" lineEndContext="#pop">
        <DetectSpaces/>
        <RegExpr attribute="Option Name" String="-D[A-Za-z0-9_]+"/>
        <DetectChar char="="/>
        <RegExpr attribute="Option Value" String="[^\s]+"/>
      </context>

      <context name="Global Options" attribute="Normal Text" lineEndContext="#stay">
        <RegExpr attribute="Module Declaration" context="Root Level" endRegion="Global Options" String="end global" firstNonSpace="true"/>
        <keyword attribute="Possible Error" String="moduleSetOptions"/>

        <!-- Specific to global section -->
        <keyword attribute="Option Name" context="Option Value" String="globalOptions"/>
        <keyword attribute="Option Name" context="Bool Option Value" String="globalBoolOptions"/>

        <IncludeRules context="Common Module Options"/>
      </context>

      <context name="Module Options" attribute="Normal Text" lineEndContext="#stay">
        <DetectSpaces/>
        <RegExpr attribute="Module Declaration" context="Root Level" endRegion="Module Options" String="end module" firstNonSpace="true"/>
        <keyword attribute="Possible Error" String="moduleSetOptions"/>

        <!-- Specific to global section -->
        <keyword attribute="Possible Error" context="Option Value" String="globalOptions"/>
        <keyword attribute="Possible Error" context="Bool Option Value" String="globalBoolOptions"/>

        <IncludeRules context="Common Module Options"/>
      </context>

      <context name="ModuleSet Options" attribute="Normal Text" lineEndContext="#stay">
        <DetectSpaces/>
        <RegExpr attribute="Module Declaration" context="Root Level" endRegion="ModuleSet Options" String="end module(-?set)?$" firstNonSpace="true"/>
        <StringDetect String="use-modules" context="ModuleSet use-module" attribute="Option Name"/>
        <keyword attribute="Option Name" context="Option Value" String="moduleSetOptions"/>

        <!-- Specific to global section -->
        <keyword attribute="Possible Error" context="Option Value" String="globalOptions"/>
        <keyword attribute="Possible Error" context="Bool Option Value" String="globalBoolOptions"/>

        <IncludeRules context="Common Module Options"/>
      </context>

      <context name="ModuleSet use-module" attribute="Module Name" lineEndContext="#pop">
        <DetectChar context="Comment" char="#"/>
        <LineContinue attribute="Possible Error" context="#stay"/>
      </context>

      <context name="Option Value" attribute="Normal Text" lineEndContext="#pop">
        <DetectSpaces/>
        <RegExpr attribute="Variable" String="\$\{[a-zA-Z0-9_-]+\}"/>
        <RegExpr attribute="Option Value" String="[a-zA-Z:0-9,./+!=@_-]*" context="#stay" />
        <DetectChar context="Comment" char="#"/>
        <LineContinue attribute="Option Value" context="#stay"/>
      </context>

      <context name="Bool Option Value" attribute="Possible Error" lineEndContext="#pop">
        <DetectSpaces attribute="Normal Text"/>
        <keyword attribute="Option Value" context="#stay" String="bools"/>
        <DetectChar context="Comment" char="#"/>
        <LineContinue attribute="Possible Error" context="#stay"/>
      </context>

      <context name="Environment Name" attribute="Environment Variable Name" lineEndContext="#pop">
        <DetectSpaces/>
        <RegExpr attribute="Environment Variable Name" context="Option Value" String="[a-zA-Z0-9_-]+" />
        <DetectChar context="Comment" char="#"/>
      </context>
    </contexts>

    <itemDatas>
      <itemData name="Normal Text"         defStyleNum="dsNormal" />
      <itemData name="Comment"             defStyleNum="dsComment"/>
      <itemData name="Boolean"             defStyleNum="dsDecVal" bold="true" color="purple"/>
      <itemData name="Option Name"         defStyleNum="dsKeyword" bold="false" />
      <itemData name="Unknown Option Name" defStyleNum="dsKeyword" bold="false" color="#7D4C0B" />
      <itemData name="Environment Variable Name" defStyleNum="dsString" color="#EE6A50" />
      <itemData name="Option Value"        defStyleNum="dsDecVal" />
      <itemData name="Variable"            defStyleNum="dsOthers" />
      <itemData name="Module Declaration"  defStyleNum="dsKeyword" bold="false"/>
      <itemData name="Module Name"         defStyleNum="dsOthers" bold="true" />
      <itemData name="Global Declaration"  defStyleNum="dsKeyword" bold="true" />
      <itemData name="Possible Error"      defStyleNum="dsError" />
    </itemDatas>
  </highlighting>

  <general>
    <comments>
      <comment name="singleLine" start="#"/>
    </comments>
    <keywords weakDeliminator="-"/>
  </general>

</language>