make/uwproj.xsd

Fri, 17 Apr 2026 12:00:18 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 17 Apr 2026 12:00:18 +0200
changeset 102
463c648e6a9b
parent 86
f187e97f845e
permissions
-rw-r--r--

change return type of write_pgn to void

The return value was always unused and zero.
Then intention apparently was to return the number
of written bytes, but that never happened.

71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 <?xml version="1.0" encoding="UTF-8"?>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3 xmlns="http://unixwork.de/uwproj"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
4 targetNamespace="http://unixwork.de/uwproj"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
5 elementFormDefault="qualified"
85
b1577ea008e5 update uwproj
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
6 version="0.4"
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
7 >
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 <xs:element name="project" type="ProjectType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 <xs:complexType name="ProjectType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
11 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
12 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
13 The root element of an uwproj project.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
14 Consists of an optional <code>config</code> element
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
15 and an arbitrary number of <code>dependency</code>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
16 and <code>target</code> elements.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
17 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
18 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 <xs:sequence>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
20 <xs:element name="config" type="ConfigType" minOccurs="0" maxOccurs="unbounded"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 <xs:element name="dependency" type="DependencyType" minOccurs="0" maxOccurs="unbounded"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22 <xs:element name="target" type="TargetType" minOccurs="0" maxOccurs="unbounded"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23 </xs:sequence>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
24 <xs:attribute name="version" type="xs:string" use="required" />
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
25 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
26
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
27 <xs:complexType name="ConfigType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
28 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
29 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
30 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
31 The configuration section.
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
32 Consists of an arbitrary number of <code>var</code> elements and pre-defined elements for
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
33 standard installation directories. If you want to use standard installation directories, you
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
34 must list the wanted variables here.
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
35 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
36 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
37 The optional <code>platform</code> attribute may specify a <em>single</em> platform identifier and
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
38 the optional <code>not</code> attribute may specify a comma-separated list of platform identifiers.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
39 The configure script shall skip this config declaration if the detected platform is not matching
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
40 the filter specification of these attributes.
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
41 When multiple config sections have a matching filter, and declare the same variables, the settings
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
42 of the first matching config section will be used for the affected variables.
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
43 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
44 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
45 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
46 <xs:sequence>
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
47 <xs:element name="prefix" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
48 <xs:element name="exec-prefix" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
49 <xs:element name="bindir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
50 <xs:element name="sbindir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
51 <xs:element name="libdir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
52 <xs:element name="libexecdir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
53 <xs:element name="datarootdir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
54 <xs:element name="datadir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
55 <xs:element name="sysconfdir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
56 <xs:element name="sharedstatedir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
57 <xs:element name="localstatedir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
58 <xs:element name="runstatedir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
59 <xs:element name="includedir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
60 <xs:element name="infodir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
61 <xs:element name="localedir" type="StandardConfigVarType" minOccurs="0"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
62 <xs:element name="mandir" type="StandardConfigVarType" minOccurs="0"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
63 <xs:element name="var" type="ConfigVarType" minOccurs="0" maxOccurs="unbounded"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
64 </xs:sequence>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
65 <xs:attribute name="platform" type="xs:string"/>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
66 <xs:attribute name="not" type="xs:string"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
67 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
68
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
69 <xs:complexType name="StandardConfigVarType">
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
70 <xs:annotation>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
71 <xs:documentation>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
72 The definition of a standard configuration variable.
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
73 <p>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
74 You may customize the value and the help text,
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
75 but the variable name and the option name are pre-defined.
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
76 </p>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
77 </xs:documentation>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
78 </xs:annotation>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
79 <xs:simpleContent>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
80 <xs:extension base="xs:string">
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
81 <xs:attribute name="option-help" type="xs:string"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
82 <xs:attribute name="exec" type="xs:boolean" default="false"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
83 </xs:extension>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
84 </xs:simpleContent>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
85 </xs:complexType>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
86
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
87 <xs:complexType name="ConfigVarType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
88 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
89 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
90 The definition of a configuration variable.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
91 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
92 Configuration variables are supposed to be used in the configure script and are also
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
93 written to the resulting config file (in contrast to make variables, which are only
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
94 written to the config file).
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
95 The <code>name</code> attribute is mandatory, the value is defined by the text body of the element.
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
96 The optional Boolean <code>exec</code> attribute (false by default) controls, whether value denotes
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
97 a command which shall be executed at configuration time to produce the value.
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
98 With <code>option</code> and <code>option-help</code> you can control how the variable can be
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
99 overridden on the command line. When you don't specify either of those attributes, no command
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
100 line option will be generated. When you provide a <code>option-help</code>, but do not specify the
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
101 <code>option</code> name, a name is generated.
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
102 You can use the string <code>%default</code> in your help text when you want to show the default
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
103 value in the text. When <code>exec</code> is used, the default will not be resolved in the help
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
104 text and instead the command is shown (to avoid breaking the formatting).
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
105 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
106 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
107 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
108 <xs:simpleContent>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
109 <xs:extension base="xs:string">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
110 <xs:attribute name="name" type="xs:string" use="required"/>
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
111 <xs:attribute name="option" type="xs:string"/>
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
112 <xs:attribute name="option-help" type="xs:string"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
113 <xs:attribute name="exec" type="xs:boolean" default="false"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
114 </xs:extension>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
115 </xs:simpleContent>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
116 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
117
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
118 <xs:complexType name="PkgConfigType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
119 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
120 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
121 Instructs configure to invoke <code>pkg-config</code>, if present on the system, to determine
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
122 compiler and linker flags. The text body of this element defines the package name to search.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
123 To constrain the allowed versions, use the attributes <code>atleast, exact, max</code>.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
124 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
125 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126 <xs:simpleContent>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127 <xs:extension base="xs:string">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
128 <xs:attribute name="atleast" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
129 <xs:attribute name="exact" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
130 <xs:attribute name="max" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
131 </xs:extension>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
132 </xs:simpleContent>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
133 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
134
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
135 <xs:simpleType name="LangType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
136 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
137 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
138 Requests a compiler for the specified language. Allowed values are
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
139 c, cpp.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
140 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
141 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
142 <xs:restriction base="xs:string">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
143 <xs:enumeration value="c"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
144 <xs:enumeration value="cpp"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
145 </xs:restriction>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
146 </xs:simpleType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
147
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
148 <xs:complexType name="DependencyType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
149 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
150 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
151 Declares a dependency.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
152 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
153 If the optional <code>name</code> attribute is omitted, the dependency is global
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
154 and must be satisfied, otherwise configuration shall fail.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
155 A <em>named dependency</em> can be referenced by a target (or is implicitly referenced
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
156 by the default target, if no targets are specified).
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
157 Multiple declarations for the same named dependency may exist, in which case each declaration
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
158 is checked one after another, until one block is satisfied. The result of the first satisfied
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
159 dependency declaration is supposed to be applied to the config file.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
160 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
161 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
162 The optional <code>platform</code> attribute may specify a <em>single</em> platform identifier and
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
163 the optional <code>toolchain</code> attribute may specify a <em>single</em> toolchain.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
164 The optional <code>not</code> attribute may specify a comma-separated list of platform and/or
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
165 toolchain identifiers.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
166 The configure script shall skip this dependency declaration if the detected platform and toolchain
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
167 is not matching the filter specification of these attributes.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
168 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
169 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
170 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
171 <xs:choice minOccurs="0" maxOccurs="unbounded">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
172 <xs:element name="lang" type="LangType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
173 <xs:element name="cflags" type="FlagsType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
174 <xs:element name="cxxflags" type="FlagsType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
175 <xs:element name="ldflags" type="FlagsType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
176 <xs:element name="pkgconfig" type="PkgConfigType"/>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
177 <xs:element name="test" type="xs:string">
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
178 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
179 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
180 Specifies a custom command that shall be executed to test whether this dependency is satisfied.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
181 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
182 </xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
183 </xs:element>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
184 <xs:element name="make" type="MakeVarType"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
185 </xs:choice>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
186 <xs:attribute name="name" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
187 <xs:attribute name="platform" type="xs:string"/>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
188 <xs:attribute name="toolchain" type="xs:string"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
189 <xs:attribute name="not" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
190 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
191
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
192 <xs:complexType name="FlagsType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
193 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
194 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
195 Instructs configure to append the contents of the element's body to the respective flags variable.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
196 If the optional <code>exec</code> flag is set to <code>true</code>, the contents are supposed to be
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
197 executed under command substitution <em>at configuration time</em> before they are applied.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
198 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
199 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
200 <xs:simpleContent>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
201 <xs:extension base="xs:string">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
202 <xs:attribute name="exec" type="xs:boolean" default="false"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
203 </xs:extension>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
204 </xs:simpleContent>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
205 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
206
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
207 <xs:complexType name="TargetType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
208 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
209 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
210 Declares a build target that is supposed to be configured.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
211 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
212 If no build target is declared explicitly, an implicit default
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
213 target is generated, which has the <code>alldependencies</code>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
214 flag set.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
215 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
216 <p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
217 The optional <code>name</code> attribute is also used to generate a prefix
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
218 for the compiler and linker flags variables.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
219 Furthermore, a target may consist of an arbitrary number of <code>feature</code>,
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
220 <code>option</code>, and <code>define</code> elements.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
221 Named dependencies can be listed (separated by comma) in the <code>dependencies</code>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
222 element. If this target shall use <em>all</em> available named dependencies, the empty
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
223 element <code>alldependencies</code> can be used as a shortcut.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
224 </p>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
225 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
226 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
227 <xs:choice minOccurs="0" maxOccurs="unbounded">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
228 <xs:element name="feature" type="FeatureType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
229 <xs:element name="option" type="OptionType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
230 <xs:element name="define" type="DefineType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
231 <xs:element name="dependencies" type="DependenciesType"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
232 <xs:element name="alldependencies">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
233 <xs:complexType/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
234 </xs:element>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
235 </xs:choice>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
236 <xs:attribute name="name" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
237 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
238
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
239 <xs:complexType name="FeatureType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
240 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
241 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
242 Declares an optional feature, that can be enabled during configuration, if all
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
243 <code>dependencies</code> are satisfied.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
244 If a feature is enabled, all <code>define</code> and <code>make</code> definitions are
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
245 supposed to be applied to the config file.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
246 If a feature is disabled, an optional <code>disabled</code> element may specify which
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
247 <code>define</code> and <code>make</code> definitions are supposed to be applied.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
248 There might also be <code>dependencies</code> when the feature is disabled (e.g. specifying a fallback).
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
249 In case the optional <code>default</code> attribute is set to true, the feature is enabled by default
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
250 and is supposed to be automatically disabled (without error) when the dependencies are not satisfied.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
251 The name that is supposed to be used for the --enable and --disable arguments can be optionally
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
252 specified with the <code>arg</code> attribute. Otherwise, the <code>name</code> is used by default.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
253 Optionally, a description for the help text of the resulting configure script can be specified by
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
254 adding a <code>desc</code> element.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
255 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
256 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
257 <xs:choice minOccurs="0" maxOccurs="unbounded">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
258 <xs:group ref="TargetDataGroup"/>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
259 <xs:element name="desc" type="xs:string"/>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
260 <xs:element name="disabled">
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
261 <xs:complexType>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
262 <xs:choice minOccurs="0" maxOccurs="unbounded">
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
263 <xs:group ref="TargetDataGroup"/>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
264 </xs:choice>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
265 </xs:complexType>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
266 </xs:element>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
267 </xs:choice>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
268 <xs:attribute name="name" type="xs:string" use="required"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
269 <xs:attribute name="arg" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
270 <xs:attribute name="default" type="xs:boolean" default="false"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
271 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
272
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
273 <xs:complexType name="OptionType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
274 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
275 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
276 Declares a configuration option.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
277 The option argument name is specified with the <code>arg</code> attribute.
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
278 Optionally, a description for the help text of the resulting configure script can be specified by
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
279 a <code>desc</code> element.
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
280 Then, the next children of this element specify possible <code>values</code> by defining the conditions
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
281 (in terms of dependencies) and effects (in terms of defines and make variables) of each value.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
282 Finally, a set of <code>default</code>s is specified which supposed to automagically select the most
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
283 appropriate value for a specific platform under the available dependencies (in case the option is not
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
284 explicitly specified by using the command line argument).
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
285 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
286 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
287 <xs:sequence>
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
288 <xs:element name="desc" type="xs:string" minOccurs="0"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
289 <xs:element name="value" type="OptionValueType" minOccurs="0" maxOccurs="unbounded"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
290 <xs:element name="default" type="OptionDefaultType" minOccurs="0" maxOccurs="unbounded"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
291 </xs:sequence>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
292 <xs:attribute name="arg" type="xs:string" use="required"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
293 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
294
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
295 <xs:complexType name="OptionValueType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
296 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
297 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
298 Declares a possible value for the option (in the <code>str</code> attribute) and
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
299 the conditions (<code>dependencies</code>) and effects, the value has.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
300 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
301 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
302 <xs:choice minOccurs="0" maxOccurs="unbounded">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
303 <xs:group ref="TargetDataGroup"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
304 </xs:choice>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
305 <xs:attribute name="str" type="xs:string" use="required"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
306 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
307
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
308 <xs:complexType name="OptionDefaultType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
309 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
310 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
311 Specifies a default value for this option. Multiple default values can be specified, in which case
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
312 they are checked one after another for availability. With the optional <code>platform</code> attribute,
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
313 the default value can be constrained to a <em>single</em> specific platform and is supposed to be
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
314 skipped by configure, when this platform is not detected.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
315 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
316 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
317 <xs:attribute name="value" type="xs:string" use="required"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
318 <xs:attribute name="platform" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
319 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
320
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
321 <xs:group name="TargetDataGroup">
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
322 <xs:choice>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
323 <xs:element name="define" type="DefineType" minOccurs="0" maxOccurs="unbounded"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
324 <xs:element name="dependencies" type="DependenciesType" minOccurs="0" maxOccurs="unbounded"/>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
325 <xs:element name="make" type="MakeVarType" minOccurs="0" maxOccurs="unbounded"/>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
326 </xs:choice>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
327 </xs:group>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
328
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
329 <xs:complexType name="DefineType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
330 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
331 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
332 Specifies C/C++ pre-processor definitions that are supposed to
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
333 be appended to the compiler flags, if supported.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
334 (Note: for example, Fortran also supports C/C++ style pre-processor definitions under
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
335 certain circumstances)
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
336 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
337 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
338 <xs:attribute name="name" type="xs:string" use="required"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
339 <xs:attribute name="value" type="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
340 </xs:complexType>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
341
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
342 <xs:simpleType name="DependenciesType">
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
343 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
344 <xs:documentation>A comma-separated list of named dependencies.</xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
345 </xs:annotation>
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
346 <xs:restriction base="xs:string"/>
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
347 </xs:simpleType>
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
348
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
349 <xs:simpleType name="MakeVarType">
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
350 <xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
351 <xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
352 The text contents in the body of this element are supposed to be appended literally
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
353 to the config file without prior processing.
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
354 </xs:documentation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
355 </xs:annotation>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
356 <xs:restriction base="xs:string"/>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
357 </xs:simpleType>
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 71
diff changeset
358 </xs:schema>

mercurial