1: <!--
2: Linux Packaging Markup Language version 1.0.
3: Intended to be under General Public License,
4: Second Version June 1991.
5:
6: Date: May 3, 2001
7: Author: Scott Harrison
8:
9: Linux Packaging Markup Language aims to capture
10: a source code development tree and effectively map
11: that to a compilation and installation process for
12: generating software packages and updating a run-time
13: system. This language helps handle dependency information,
14: file globbing, file permissions, file ownerships,
15: different targets for different linux distributions,
16: preservation of configuration information, directory
17: permissions, directory ownerships, compilation commands,
18: and, ultimately, system software status reports.
19: -->
20: <!ENTITY % lpml.Version
21: "-//TUX//DTD lpml 1.0 Final//EN"
22:
23: -- Typical usage:
24:
25: <!DOCTYPE lpml PUBLIC "-//TUX//DTD LPML 1.0 Final//EN">
26: <lpml>
27:
28: </lpml>
29: --
30: >
31:
32: <!ELEMENT categoryname (#PCDATA)>
33: <!ELEMENT targetroot (#PCDATA)>
34: <!ELEMENT sourceroot (#PCDATA)>
35:
36: <!ELEMENT target (#PCDATA)>
37: <!ATTLIST target
38: dist CDATA #REQUIRED
39: >
40: <!ELEMENT source (#PCDATA)>
41: <!ELEMENT targetdir (#PCDATA)>
42: <!ATTLIST targetdir
43: dist CDATA #REQUIRED
44: >
45: <!ELEMENT sourcedir (#PCDATA)>
46: <!ELEMENT glob (#PCDATA)>
47: <!ELEMENT build (#PCDATA)>
48:
49: <!--
50: The trigger attribute of the build element is meant
51: to only have one of two possible values:
52: "always run", or
53: "run if dependencies change"
54:
55: Note that you must type this text exactly in for the
56: attribute value to be understood and processed correctly
57: by the lpml "make build" parser.
58: -->
59: <!ELEMENT lpml (files|categories|directories|rpm)+>
60: <!ATTLIST build>
61: trigger CDATA #REQUIRED
62: >
63: <!ELEMENT categories category+>
64: <!ELEMENT directories directory+>
65: <!ELEMENT files (file|fileglob|link)+>
66: <!ELEMENT dependencies (#PCDATA)>
67: <!ELEMENT note (#PCDATA)>
68:
69: <!ELEMENT category (chmod,chown)>
70: <!ATTLIST category
71: type CDATA #REQUIRED
72: name CDATA #REQUIRED
73: >
74: <!ELEMENT chown (#PCDATA)>
75: <!ATTLIST chown
76: dist CDATA #REQUIRED
77: >
78: <!ELEMENT chmod (#PCDATA)>
79: <!ATTLIST chmod
80: dist CDATA #REQUIRED
81: >
82:
83: <!ELEMENT directory (targetdir,categoryname,description?)>
84: <!ATTLIST directory
85: dist CDATA #REQUIRED
86: >
87:
88: <!ELEMENT file (source,target,categoryname,description?,
89: note?,build?,status?,dependencies?)>
90: <!ELEMENT link (source,target,categoryname,description?,
91: note?,build?,status?,dependencies?)>
92:
93: <!ELEMENT fileglob (glob,sourcedir,targetdir,categoryname,
94: description?,note?,build?,status?,dependencies?,filenames?)>
95: <!ELEMENT filenames (#PCDATA)>
96:
97: <!ELEMENT rpm (rpmSummary,rpmName,rpmVersion,rpmRelease,rpmVendor,
98: rpmBuildRoot,rpmCopyright,rpmGroup,rpmSource,rpmAutoReqProv,
99: rpmdescription,rpmpre)>
100: <!ELEMENT rpmSummary (#PCDATA)>
101: <!ELEMENT rpmName (#PCDATA)>
102: <!ELEMENT rpmVersion (#PCDATA)>
103: <!ELEMENT rpmRelease (#PCDATA)>
104: <!ELEMENT rpmVendor (#PCDATA)>
105: <!ELEMENT rpmBuildRoot (#PCDATA)>
106: <!ELEMENT rpmCopyright (#PCDATA)>
107: <!ELEMENT rpmGroup (#PCDATA)>
108: <!ELEMENT rpmSource (#PCDATA)>
109: <!ELEMENT rpmAutoReqProv (#PCDATA)>
110: <!ELEMENT rpmdescription (#PCDATA)>
111: <!ELEMENT rpmpre (#PCDATA)>
112:
113:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>