Annotation of loncom/build/lpml.dtd, revision 1.16
1.1 harris41 1: <!--
2: Linux Packaging Markup Language version 1.0.
3:
4: Date: May 3, 2001
5: Author: Scott Harrison
6:
7: Linux Packaging Markup Language aims to capture
8: a source code development tree and effectively map
9: that to a compilation and installation process for
10: generating software packages and updating a run-time
11: system. This language helps handle dependency information,
12: file globbing, file permissions, file ownerships,
13: different targets for different linux distributions,
14: preservation of configuration information, directory
15: permissions, directory ownerships, compilation commands,
16: and, ultimately, system software status reports.
17: -->
1.12 harris41 18: <!--
19:
20: Copyright Michigan State University Board of Trustees
21:
22: This file is part of the LearningOnline Network with CAPA (LON-CAPA).
23:
24: LON-CAPA is free software; you can redistribute it and/or modify
25: it under the terms of the GNU General Public License as published by
26: the Free Software Foundation; either version 2 of the License, or
27: (at your option) any later version.
28:
29: LON-CAPA is distributed in the hope that it will be useful,
30: but WITHOUT ANY WARRANTY; without even the implied warranty of
31: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
32: GNU General Public License for more details.
33:
34: You should have received a copy of the GNU General Public License
35: along with LON-CAPA; if not, write to the Free Software
36: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
37:
38: /home/httpd/html/adm/gpl.txt
39:
40: http://www.lon-capa.org/
41:
42: -->
43:
1.1 harris41 44: <!ENTITY % lpml.Version
45: "-//TUX//DTD lpml 1.0 Final//EN"
46: >
1.15 harris41 47: <!-- Typical usage: -->
48: <!-- <!DOCTYPE lpml PUBLIC "-//TUX/DTD LPML 1.0 Final//EN"
49: "http://lpml.sourceforge.net/DTD/lpml.dtd"> -->
50: <!-- <lpml> -->
51: <!-- ... -->
52: <!-- </lpml> -->
1.1 harris41 53:
1.6 harris41 54: <!ELEMENT categoryname (#PCDATA)>
1.1 harris41 55: <!ELEMENT targetroot (#PCDATA)>
56: <!ELEMENT sourceroot (#PCDATA)>
57:
58: <!ELEMENT target (#PCDATA)>
1.6 harris41 59: <!ATTLIST target
60: dist CDATA #REQUIRED
61: >
1.1 harris41 62: <!ELEMENT source (#PCDATA)>
63: <!ELEMENT targetdir (#PCDATA)>
1.6 harris41 64: <!ATTLIST targetdir
65: dist CDATA #REQUIRED
66: >
1.1 harris41 67: <!ELEMENT sourcedir (#PCDATA)>
68: <!ELEMENT glob (#PCDATA)>
69: <!ELEMENT build (#PCDATA)>
1.10 harris41 70: <!ELEMENT buildlink (#PCDATA)>
1.7 harris41 71:
72: <!--
73: The trigger attribute of the build element is meant
74: to only have one of two possible values:
75: "always run", or
76: "run if dependencies change"
77:
1.16 ! harris41 78: Note that you must type the trigger text values exactly for the
1.7 harris41 79: attribute value to be understood and processed correctly
80: by the lpml "make build" parser.
81: -->
1.15 harris41 82: <!ELEMENT lpml
83: (targetroot|sourceroot|specialnotices|files|categories|directories|rpm)+>
84: <!ATTLIST build
1.7 harris41 85: trigger CDATA #REQUIRED
86: >
1.15 harris41 87: <!ELEMENT specialnotices (specialnotice)+>
88: <!ELEMENT categories (category)+>
89: <!ELEMENT directories (directory)+>
1.9 harris41 90: <!ELEMENT files (file|fileglob|link)+>
1.1 harris41 91: <!ELEMENT dependencies (#PCDATA)>
1.15 harris41 92: <!ELEMENT note (#PCDATA|table|b|br)*>
93: <!ELEMENT b (#PCDATA)>
1.1 harris41 94:
1.13 harris41 95: <!ELEMENT specialnotice (#PCDATA)>
1.15 harris41 96: <!ATTLIST specialnotice
97: dist CDATA #REQUIRED
98: >
1.11 harris41 99: <!ELEMENT category (chmod,chown,abbreviation)>
1.1 harris41 100: <!ATTLIST category
101: type CDATA #REQUIRED
102: name CDATA #REQUIRED
103: >
104: <!ELEMENT chown (#PCDATA)>
1.4 harris41 105: <!ATTLIST chown
106: dist CDATA #REQUIRED
107: >
1.1 harris41 108: <!ELEMENT chmod (#PCDATA)>
1.4 harris41 109: <!ATTLIST chmod
110: dist CDATA #REQUIRED
111: >
1.15 harris41 112:
1.11 harris41 113: <!ELEMENT abbreviation (#PCDATA)>
1.15 harris41 114: <!ELEMENT br EMPTY>
115: <!ELEMENT nobr EMPTY>
116: <!ELEMENT table (#PCDATA|tr)*>
117: <!ATTLIST table
118: cellpadding CDATA #IMPLIED
119: cellspacing CDATA #IMPLIED
120: border CDATA #IMPLIED
121: >
122: <!ELEMENT tr (#PCDATA|td)*>
123: <!ELEMENT td (#PCDATA|br|ul|tt|nobr)*>
124: <!ELEMENT description (#PCDATA|br|tt|u)*>
125: <!ELEMENT ul (#PCDATA|li)*>
126: <!ELEMENT li (#PCDATA)>
127: <!ELEMENT tt (#PCDATA)>
128: <!ELEMENT u (#PCDATA)>
129: <!ELEMENT status (#PCDATA)>
130: <!ELEMENT linkto (#PCDATA)>
1.1 harris41 131:
1.16 ! harris41 132: <!ELEMENT directory (protectionlevel,targetdir+,categoryname,description?)>
1.4 harris41 133: <!ATTLIST directory
1.3 harris41 134: dist CDATA #REQUIRED
135: >
136:
1.16 ! harris41 137: <!ELEMENT protectionlevel (#PCDATA)>
! 138: <!-- correct PCDATA values are:
! 139: "never_delete"
! 140: "weak_delete"
! 141: "modest_delete"
! 142: "strong_delete"
! 143: "absolute_delete"
! 144: -->
1.15 harris41 145: <!ELEMENT file (source,target+,categoryname,description?,buildlink?,
1.7 harris41 146: note?,build?,status?,dependencies?)>
1.15 harris41 147: <!ELEMENT link (linkto,target,categoryname,description?,
1.9 harris41 148: note?,build?,status?,dependencies?)>
1.1 harris41 149:
150: <!ELEMENT fileglob (glob,sourcedir,targetdir,categoryname,
1.10 harris41 151: description?,note?,build?,buildlink?,status?,dependencies?,filenames?)>
1.7 harris41 152: <!ELEMENT filenames (#PCDATA)>
1.2 harris41 153:
154: <!ELEMENT rpm (rpmSummary,rpmName,rpmVersion,rpmRelease,rpmVendor,
155: rpmBuildRoot,rpmCopyright,rpmGroup,rpmSource,rpmAutoReqProv,
1.15 harris41 156: rpmdescription,rpmpre,rpmRequires)>
1.2 harris41 157: <!ELEMENT rpmSummary (#PCDATA)>
158: <!ELEMENT rpmName (#PCDATA)>
159: <!ELEMENT rpmVersion (#PCDATA)>
160: <!ELEMENT rpmRelease (#PCDATA)>
161: <!ELEMENT rpmVendor (#PCDATA)>
162: <!ELEMENT rpmBuildRoot (#PCDATA)>
163: <!ELEMENT rpmCopyright (#PCDATA)>
164: <!ELEMENT rpmGroup (#PCDATA)>
165: <!ELEMENT rpmSource (#PCDATA)>
166: <!ELEMENT rpmAutoReqProv (#PCDATA)>
167: <!ELEMENT rpmdescription (#PCDATA)>
168: <!ELEMENT rpmpre (#PCDATA)>
1.15 harris41 169: <!ELEMENT rpmRequires (item)+>
170: <!ELEMENT item (#PCDATA)>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>