make/uwproj.xsd

changeset 987
53e22f112b11
parent 960
a8a5f3dd5c3d
equal deleted inserted replaced
986:38fa7e41194c 987:53e22f112b11
1 <?xml version="1.0" encoding="UTF-8"?> 1 <?xml version="1.0" encoding="UTF-8"?>
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" 2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3 xmlns="http://unixwork.de/uwproj" 3 xmlns="http://unixwork.de/uwproj"
4 targetNamespace="http://unixwork.de/uwproj" 4 targetNamespace="http://unixwork.de/uwproj"
5 elementFormDefault="qualified" 5 elementFormDefault="qualified"
6 version="0.2" 6 version="0.3"
7 > 7 >
8 <xs:element name="project" type="ProjectType"/> 8 <xs:element name="project" type="ProjectType"/>
9 9
10 <xs:complexType name="ProjectType"> 10 <xs:complexType name="ProjectType">
11 <xs:annotation> 11 <xs:annotation>
19 <xs:sequence> 19 <xs:sequence>
20 <xs:element name="config" type="ConfigType" minOccurs="0" maxOccurs="unbounded"/> 20 <xs:element name="config" type="ConfigType" minOccurs="0" maxOccurs="unbounded"/>
21 <xs:element name="dependency" type="DependencyType" minOccurs="0" maxOccurs="unbounded"/> 21 <xs:element name="dependency" type="DependencyType" minOccurs="0" maxOccurs="unbounded"/>
22 <xs:element name="target" type="TargetType" minOccurs="0" maxOccurs="unbounded"/> 22 <xs:element name="target" type="TargetType" minOccurs="0" maxOccurs="unbounded"/>
23 </xs:sequence> 23 </xs:sequence>
24 <xs:attribute name="version" type="xs:string" use="required" />
24 </xs:complexType> 25 </xs:complexType>
25 26
26 <xs:complexType name="ConfigType"> 27 <xs:complexType name="ConfigType">
27 <xs:annotation> 28 <xs:annotation>
28 <xs:documentation> 29 <xs:documentation>
193 <xs:documentation> 194 <xs:documentation>
194 Declares an optional feature, that can be enabled during configuration, if all 195 Declares an optional feature, that can be enabled during configuration, if all
195 <code>dependencies</code> are satisfied. 196 <code>dependencies</code> are satisfied.
196 If a feature is enabled, all <code>define</code> and <code>make</code> definitions are 197 If a feature is enabled, all <code>define</code> and <code>make</code> definitions are
197 supposed to be applied to the config file. 198 supposed to be applied to the config file.
199 If a feature is disabled, an optional <code>disabled</code> element may specify which
200 <code>define</code> and <code>make</code> definitions are supposed to be applied.
201 There might also be <code>dependencies</code> when the feature is disabled (e.g. specifying a fallback).
198 In case the optional <code>default</code> attribute is set to true, the feature is enabled by default 202 In case the optional <code>default</code> attribute is set to true, the feature is enabled by default
199 and is supposed to be automatically disabled (without error) when the dependencies are not satisfied. 203 and is supposed to be automatically disabled (without error) when the dependencies are not satisfied.
200 The name that is supposed to be used for the --enable and --disable arguments can be optionally 204 The name that is supposed to be used for the --enable and --disable arguments can be optionally
201 specified with the <code>arg</code> attribute. Otherwise, the <code>name</code> is used by default. 205 specified with the <code>arg</code> attribute. Otherwise, the <code>name</code> is used by default.
202 Optionally, a description for the help text of the resulting configure script can be specified by 206 Optionally, a description for the help text of the resulting configure script can be specified by
204 </xs:documentation> 208 </xs:documentation>
205 </xs:annotation> 209 </xs:annotation>
206 <xs:choice minOccurs="0" maxOccurs="unbounded"> 210 <xs:choice minOccurs="0" maxOccurs="unbounded">
207 <xs:group ref="TargetDataGroup"/> 211 <xs:group ref="TargetDataGroup"/>
208 <xs:element name="desc" type="xs:string"/> 212 <xs:element name="desc" type="xs:string"/>
213 <xs:element name="disabled">
214 <xs:complexType>
215 <xs:choice minOccurs="0" maxOccurs="unbounded">
216 <xs:group ref="TargetDataGroup"/>
217 </xs:choice>
218 </xs:complexType>
219 </xs:element>
209 </xs:choice> 220 </xs:choice>
210 <xs:attribute name="name" type="xs:string" use="required"/> 221 <xs:attribute name="name" type="xs:string" use="required"/>
211 <xs:attribute name="arg" type="xs:string"/> 222 <xs:attribute name="arg" type="xs:string"/>
212 <xs:attribute name="default" type="xs:boolean" default="false"/> 223 <xs:attribute name="default" type="xs:boolean" default="false"/>
213 </xs:complexType> 224 </xs:complexType>

mercurial