RBuild 'project' document DTD (rough draft).

svn path=/trunk/; revision=16958
This commit is contained in:
Emanuele Aliberti 2005-08-01 16:11:29 +00:00
parent 178f4d48e9
commit e466431f36

View file

@ -0,0 +1,107 @@
<!-- $Id$ -->
<!ENTITY % CIdentifier "CDATA">
<!-- a C identifier -->
<!ENTITY % Text "CDATA">
<!-- used for titles etc. -->
<!-- XInclude patch -->
<!ELEMENT xi:include (xi:fallback)*>
<!ATTLIST xi:include
href %Text; #REQUIRED
>
<!ELEMENT xi:fallback (xi:include)>
<!-- rbuild project DTD -->
<!ELEMENT bootstrap ANY>
<!ATTLIST bootstrap
base %Text; #IMPLIED
nameoncd %Text; #IMPLIED
>
<!ELEMENT cdfile ANY>
<!ATTLIST cdfile
base %Text; #IMPLIED
nameoncd %Text; #IMPLIED
>
<!ELEMENT compilerflag (#PCDATA)>
<!ELEMENT define EMPTY>
<!ATTLIST define
name %CIdentifier; #REQUIRED
value %Text; #IMPLIED
>
<!ELEMENT directory (directory*|group*|file*|if*|module+|pch*|xi:include*)+>
<!ATTLIST directory
name %Text; #REQUIRED
>
<!ELEMENT file (#PCDATA)>
<!ATTLIST file
first (true|false) "false"
>
<!ELEMENT group (cdfile+|directory+|file+|property+)+>
<!ELEMENT if (compilerflag*|define*|directory*|file*|if*|group*|property*)+>
<!ATTLIST if
property %CIdentifier; #REQUIRED
value %Text; #REQUIRED
>
<!ELEMENT include (#PCDATA)>
<!ATTLIST include
base %Text; #IMPLIED
>
<!ELEMENT importlibrary EMPTY>
<!ATTLIST importlibrary
definition %Text; #REQUIRED
>
<!ELEMENT library ANY>
<!ELEMENT linkerflag ANY>
<!ELEMENT module (bootstrap*|importlibrary*|define*|include*|library*|directory*|file*|linkerflag*)*>
<!ATTLIST module
if %Text; #IMPLIED
ifnot %Text; #IMPLIED
name %CIdentifier; #IMPLIED
type (buildtool|staticlibrary|objectlibrary|kernel|kernelmodedll|kernelmodedriver|nativedll|win32dll|win32cui|win32gui|bootloader|bootsector|iso|test|rpcserver|rpcclient|alias) #REQUIRED
extension %CIdentifier; #IMPLIED
entrypoint %CIdentifier; #IMPLIED
baseaddress %CIdentifier; #IMPLIED
mangledsymbols %Text; #IMPLIED
installbase %Text; #IMPLIED
installname %Text; #IMPLIED
usewrc %Text; #IMPLIED
warnings %Text; #IMPLIED
aliasof %Text; #IMPLIED
>
<!ELEMENT pch (#PCDATA)>
<!ELEMENT project (compilerflag*|define*|group*|if*|include*|directory*|xi:include*)+>
<!ATTLIST project
name %Text; #FIXED "ReactOS"
makefile %Text; #FIXED "makefile.auto"
xmlns:xi %Text; #FIXED "http://www.w3.org/2001/XInclude"
>
<!ELEMENT property EMPTY>
<!ATTLIST property
name %CIdentifier; #REQUIRED
value %Text; #REQUIRED
>
<!ELEMENT symbol (#PCDATA)>
<!ATTLIST symbol
newname %Text; #IMPLIED
>
<!-- EOF -->