[RTL]
[reactos.git] / reactos / tools / rbuild / project.dtd
1 <!ENTITY % CIdentifier "CDATA">
2 <!-- a C identifier -->
3 <!ENTITY % Text "CDATA">
4 <!-- used for titles etc. -->
5
6 <!-- XInclude patch -->
7
8 <!ELEMENT xi:include (xi:fallback)*>
9 <!ATTLIST xi:include
10 href %Text; #REQUIRED
11 >
12
13 <!ELEMENT xi:fallback (xi:include)>
14
15 <!-- rbuild project DTD -->
16
17 <!ELEMENT autoregister EMPTY>
18 <!ATTLIST autoregister
19 infsection %Text; #FIXED "OleControlDlls"
20 type (DllRegisterServer|DllInstall|Both) #REQUIRED
21 >
22
23 <!ELEMENT bootstrap EMPTY>
24 <!ATTLIST bootstrap
25 installbase %Text; #IMPLIED
26 nameoncd %Text; #IMPLIED
27 >
28
29 <!ELEMENT cdfile (#PCDATA)>
30 <!ATTLIST cdfile
31 installbase %Text; #IMPLIED
32 nameoncd %Text; #IMPLIED
33 >
34
35 <!ELEMENT compilerflag (#PCDATA)>
36
37 <!ELEMENT define (#PCDATA)>
38 <!ATTLIST define
39 name %CIdentifier; #REQUIRED
40 overridable (true) #IMPLIED
41 >
42
43 <!ELEMENT directory (compilationunit*|directory*|group*|cdfile|file*|if*|ifnot*|module+|pch*|xi:include*)+>
44 <!ATTLIST directory
45 name %Text; #REQUIRED
46 root (intermediate|output) #IMPLIED
47 >
48
49 <!ELEMENT file (#PCDATA)>
50 <!ATTLIST file
51 first (true|false) "false"
52 switches %Text; #IMPLIED
53 >
54
55 <!ELEMENT installfile (#PCDATA)>
56 <!ATTLIST installfile
57 installbase %Text; #IMPLIED
58 root (intermediate|output) #IMPLIED
59 >
60
61 <!ELEMENT group (cdfile*|define*|directory*|file*|if*|ifnot*|include*|installfile*|property*|module*|group*|xi:include*)+>
62 <!ATTLIST group
63 xmlns:xi %Text; #FIXED "http://www.w3.org/2001/XInclude"
64 >
65
66 <!ELEMENT if (cdfile*|compilerflag*|define*|directory*|file*|if*|ifnot*|installfile*|group*|property*|module*)+>
67 <!ATTLIST if
68 property %CIdentifier; #REQUIRED
69 value %Text; #REQUIRED
70 >
71
72 <!ELEMENT ifnot (cdfile*|compilerflag*|define*|directory*|file*|if*|ifnot*|installfile*|group*|property*|module*)+>
73 <!ATTLIST ifnot
74 property %CIdentifier; #REQUIRED
75 value %Text; #REQUIRED
76 >
77
78 <!ELEMENT include (#PCDATA)>
79 <!ATTLIST include
80 base %Text; #IMPLIED
81 root (intermediate|output) #IMPLIED
82 >
83
84 <!ELEMENT importlibrary EMPTY>
85 <!ATTLIST importlibrary
86 definition %Text; #REQUIRED
87 basename %Text; #IMPLIED
88 dllname %Text; #IMPLIED
89 >
90
91 <!ELEMENT metadata EMPTY>
92 <!ATTLIST metadata
93 description %Text; #REQUIRED
94 version %Text; #IMPLIED
95 owner %Text; #IMPLIED
96 >
97
98 <!ELEMENT library (#PCDATA)>
99
100 <!ELEMENT linkerflag (#PCDATA)>
101
102 <!ELEMENT linkerscript (#PCDATA)>
103 <!ATTLIST linkerscript
104 base %Text; #IMPLIED
105 >
106
107 <!ELEMENT compilationunit (file*)>
108 <!ATTLIST compilationunit
109 name %Text; #IMPLIED
110 >
111
112 <!ELEMENT module (autoregister|bootstrap|compilerflag|importlibrary|metadata|if|ifnot|compilationunit|define|include|library|directory|file|linkerflag|linkerscript|pch)*>
113 <!ATTLIST module
114 if %Text; #IMPLIED
115 ifnot %Text; #IMPLIED
116 name %CIdentifier; #IMPLIED
117 type (buildtool|staticlibrary|objectlibrary|embeddedtypelib|kernel|kernelmodedll|kernelmodedriver|nativedll|nativecui|win32dll|win32ocx|win32cui|win32gui|win32scr|bootloader|bootsector|elfexecutable|idlheader|iso|isoregtest|liveiso|liveisoregtest|test|rpcserver|rpcclient|rpcproxy|alias) #REQUIRED
118 extension %CIdentifier; #IMPLIED
119 entrypoint %CIdentifier; #IMPLIED
120 baseaddress %CIdentifier; #IMPLIED
121 mangledsymbols %Text; #IMPLIED
122 underscoresymbols (true|yes|false|no) "no"
123 installbase %Text; #IMPLIED
124 installname %Text; #IMPLIED
125 allowwarnings (true|false) "false"
126 aliasof %Text; #IMPLIED
127 unicode (true|yes|false|no) "no"
128 isstartuplib (true) #IMPLIED
129 buildtype %Text; #FIXED "OFWLDR"
130 iscrt (true|yes|false|no) "no"
131 crt (libc|msvcrt|libcntpr|ntdll|static|dll|none|auto) "auto"
132 >
133
134 <!ELEMENT pch (#PCDATA)>
135
136 <!ELEMENT project (compilerflag*|define*|group*|if*|ifnot*|include*|linkerflag*|directory*|property*|xi:include*)+>
137 <!ATTLIST project
138 name (ReactOS|Project) #REQUIRED
139 makefile %Text; #REQUIRED
140 allowwarnings (true|false) "false"
141 xmlns:xi %Text; #FIXED "http://www.w3.org/2001/XInclude"
142 >
143
144 <!ELEMENT property EMPTY>
145 <!ATTLIST property
146 name %CIdentifier; #REQUIRED
147 value %Text; #REQUIRED
148 >
149
150 <!ELEMENT symbol (#PCDATA)>
151 <!ATTLIST symbol
152 newname %Text; #IMPLIED
153 >
154
155 <!-- EOF -->