File:  [LON-CAPA] / loncom / build / lpml.dtd
Revision 1.8: download - view: text, annotated - select for diffs
Wed Jun 20 12:32:54 2001 UTC (22 years, 10 months ago) by albertel
Branches: MAIN
CVS tags: HEAD
- started the parser

<!--
       Linux Packaging Markup Language version 1.0.
       Intended to be under General Public License,
       Second Version June 1991.

       Date: May 3, 2001
       Author: Scott Harrison

       Linux Packaging Markup Language aims to capture
       a source code development tree and effectively map
       that to a compilation and installation process for
       generating software packages and updating a run-time
       system.  This language helps handle dependency information,
       file globbing, file permissions, file ownerships,
       different targets for different linux distributions,
       preservation of configuration information, directory
       permissions, directory ownerships, compilation commands,
       and, ultimately, system software status reports.
-->
<!ENTITY % lpml.Version
        "-//TUX//DTD lpml 1.0 Final//EN"

        -- Typical usage:

            <!DOCTYPE lpml PUBLIC "-//TUX//DTD LPML 1.0 Final//EN">
            <lpml>

            </lpml>
        --
        >

<!ELEMENT categoryname (#PCDATA)>
<!ELEMENT targetroot (#PCDATA)>
<!ELEMENT sourceroot (#PCDATA)>

<!ELEMENT target (#PCDATA)>
<!ATTLIST target
    dist CDATA #REQUIRED
    >
<!ELEMENT source (#PCDATA)>
<!ELEMENT targetdir (#PCDATA)>
<!ATTLIST targetdir
    dist CDATA #REQUIRED
    >
<!ELEMENT sourcedir (#PCDATA)>
<!ELEMENT glob (#PCDATA)>
<!ELEMENT build (#PCDATA)>

<!-- 
The trigger attribute of the build element is meant
to only have one of two possible values:
  "always run", or
  "run if dependencies change"

Note that you must type this text exactly in for the
attribute value to be understood and processed correctly
by the lpml "make build" parser.
-->
<!ELEMENT lpml (file|category|fileglob|directory|rpm|link)+>
<!ATTLIST build>
   trigger CDATA #REQUIRED
>
<!ELEMENT dependencies (#PCDATA)>
<!ELEMENT note (#PCDATA)>

<!ELEMENT category (chmod,chown)>
<!ATTLIST category
    type CDATA #REQUIRED
    name CDATA #REQUIRED
    >
<!ELEMENT chown (#PCDATA)>
<!ATTLIST chown
    dist CDATA #REQUIRED
    >
<!ELEMENT chmod (#PCDATA)>
<!ATTLIST chmod
    dist CDATA #REQUIRED
    >

<!ELEMENT directory (targetdir,categoryname,description?)>
<!ATTLIST directory
    dist CDATA #REQUIRED
    >

<!ELEMENT file (source,target,categoryname,description?,
                note?,build?,status?,dependencies?)>
<!ELEMENT link (source,target,categoryname,description?,
                note?,build?,status?)>

<!ELEMENT fileglob (glob,sourcedir,targetdir,categoryname,
                    description?,filenames?)>
<!ELEMENT filenames (#PCDATA)>

<!ELEMENT rpm (rpmSummary,rpmName,rpmVersion,rpmRelease,rpmVendor,
               rpmBuildRoot,rpmCopyright,rpmGroup,rpmSource,rpmAutoReqProv,
               rpmdescription,rpmpre)>
<!ELEMENT rpmSummary (#PCDATA)>
<!ELEMENT rpmName (#PCDATA)>
<!ELEMENT rpmVersion (#PCDATA)>
<!ELEMENT rpmRelease (#PCDATA)>
<!ELEMENT rpmVendor (#PCDATA)>
<!ELEMENT rpmBuildRoot (#PCDATA)>
<!ELEMENT rpmCopyright (#PCDATA)>
<!ELEMENT rpmGroup (#PCDATA)>
<!ELEMENT rpmSource (#PCDATA)>
<!ELEMENT rpmAutoReqProv (#PCDATA)>
<!ELEMENT rpmdescription (#PCDATA)>
<!ELEMENT rpmpre (#PCDATA)>



FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>