XML build infrastructure in www and doc tree
Hiroki Sato
hrs at FreeBSD.org
Sat Jul 16 16:06:29 UTC 2005
Hi all,
I would like to commit the attached patch to simplify XML build
infrastructure in the www and doc tree. Currently we do not have
a consistent way to use xsltproc for rendering HTML from XML and
XSLT document, so Makefile becomes complex and the localized
directories have to contain duplicate copy of the Makefile which
includes the build rules themselves unnecessarily.
Note that I do not intend to switch from using SGML to
using XML for our documents. We already use XML as
databases and so on, so I think some consistency is needed.
This patch allow to use the following make variables:
---
XMLDOCS= index
XSLT.index= index.xsl
XML.index= index.xml
TARGET.index= index.html
PARAMS.index= --params "title" "'Title of the document'"
SRCS.index= includes.xsl
----
this example is interpreted as:
|${TARGET.index}: ${XSLT.index} ${XML.index} ${SRCS.index}
| xsltproc -o ${TARGET.index} ${PARAMS.index} ${XSLT.index} ${XML.index}
The result document (${TARGET.index}) will be added to ${DATA} and
${CLEANFILES}. XMLDOCS can have multiple values and each value is
used as an ID for the result file.
Also, XMLDOCS can be specified in the following short form:
---
XMLDOCS= <id>:<xsl>:<xml>:<target>
---
for example:
---
XMLDOCS= index:index.xsl:index.xml:index.html
PARAMS.index= --params "title" "'Title of the document'"
SRCS.index= includes.xsl
---
is an equivalent of the previous example. When a parameter
not specified, the default value is used:
---
XMLDOCS= index:::index.html
---
is also equivalent because <id>.xsl and <id>.xml are used
by default.
For details, see comments in doc/share/mk/doc.xml.mk.
www/share/mk/doc.xml.mk is the same file because it is needed
in ${WEB_ONLY} case.
Comments? If you notice a problem with the attached patch,
please let me know. Thanks.
--
| Hiroki SATO
-------------- next part --------------
Index: www/share/mk/doc.xml.mk
===================================================================
RCS file: www/share/mk/doc.xml.mk
diff -N www/share/mk/doc.xml.mk
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ www/share/mk/doc.xml.mk 16 Jul 2005 15:18:40 -0000
@@ -0,0 +1,274 @@
+# doc.xml.mk
+# $FreeBSD$
+
+XML_CATALOG_FILES= file://${DOC_PREFIX}/${LANGCODE}/share/sgml/catalog.xml \
+ file://${DOC_PREFIX}/share/sgml/catalog.xml \
+ file://${DOC_PREFIX}/share/sgml/catalog-common.xml \
+ file://${WEB_PREFIX}/${WWW_LANGCODE}/share/sgml/catalog.xml \
+ file://${WEB_PREFIX}/share/sgml/catalog-common.xml \
+ file://${LOCALBASE}/share/xml/catalog
+
+XML_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/includes.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.header.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.misc.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.release.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.xsl
+
+# Variables used in DEPENDSET
+
+_DEPENDSET.all= transtable mirrors usergroups \
+ news press navigation advisories notices
+
+# DEPENDSET: transtable ......................................................
+_DEPENDSET.transtable= ${XML_TRANSTABLE} ${XSL_TRANSTABLE} \
+ ${XSL_TRANSTABLE_MASTER} ${XSL_TRANSTABLE_COMMON}
+_PARAMS.transtable= --param transtable.xml "'${XML_TRANSTABLE}'"
+XSL_TRANSTABLE_MASTER= ${DOC_PREFIX}/share/sgml/transtable-master.xsl
+XSL_TRANSTABLE_COMMON= ${DOC_PREFIX}/share/sgml/transtable-common.xsl
+
+.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl)
+XSL_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl
+.else
+XSL_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable-local.xsl
+.endif
+
+.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml)
+XML_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml
+.else
+XML_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable.xml
+.endif
+
+# DEPENDSET: mirrors .....................................................
+_DEPENDSET.mirrors= ${XSL_MIRRORS} ${XML_MIRRORS}
+_PARAMS.mirrors= --param mirrors.xml "'${XML_MIRRORS}'"
+XML_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors.xml
+XML_MIRRORS= ${.OBJDIR}/${DOC_PREFIX:S,^${.CURDIR}/,,}/${LANGCODE}/share/sgml/mirrors.xml
+XSL_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors-master.xsl
+.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl)
+XSL_MIRRORS= ${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl
+.else
+XSL_MIRRORS= ${DOC_PREFIX}/share/sgml/mirrors-local.xsl
+.endif
+${XSL_MIRRORS}: ${XSL_MIRRORS_MASTER} \
+ ${XSL_TRANSTABLE_COMMON}
+
+${XML_MIRRORS}: ${XML_MIRRORS_MASTER} \
+ ${XSL_TRANSTABLE} ${XSL_TRANSTABLE_MASTER} ${XSL_TRANSTABLE_COMMON}
+ ${MKDIR} -p ${@:H}
+ ${XSLTPROC} ${XSLTPROCOPTS} \
+ --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
+ --param 'transtable-target-element' "'country'" \
+ --param 'transtable-word-group' "'country'" \
+ --param 'transtable-mode' "'sortkey'" \
+ ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER} \
+ | env -i LANG="${LANGCODE}" ${SORT} -f > $@.sort.tmp
+ env -i ${GREP} "^<?xml" < $@.sort.tmp > $@.sort
+ ${ECHO} "<sortkeys>" >> $@.sort
+ env -i ${AWK} '/@sortkey@/ {sub(/@sortkey@/, ++line); print;}' < $@.sort.tmp >> $@.sort
+ ${ECHO} '</sortkeys>' >> $@.sort
+ ${XSLTPROC} ${XSLTPROCOPTS} -o $@ \
+ --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
+ --param 'transtable-target-element' "'country'" \
+ --param 'transtable-word-group' "'country'" \
+ --param 'transtable-sortkey.xml' "'$@.sort'" \
+ ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER}
+ ${RM} -f $@.sort $@.sort.tmp
+CLEANFILES+= ${XML_MIRRORS}
+CLEANFILES+= ${XML_MIRRORS}.sort
+CLEANFILES+= ${XML_MIRRORS}.sort.tmp
+
+# DEPENDSET: usergroups ......................................................
+_DEPENDSET.usergroups= ${XML_USERGROUPS} ${XSL_USERGROUPS}
+XML_USERGROUPS= ${WEB_PREFIX}/share/sgml/usergroups.xml
+XSL_USERGROUPS= ${WEB_PREFIX}/share/sgml/templates.usergroups.xsl
+
+# DEPENDSET: news ............................................................
+_DEPENDSET.news= ${XML_NEWS_NEWS_MASTER} ${XML_NEWS_NEWS} \
+ ${XML_NEWS_INCLUDES_MASTER} ${XML_NEWS_INCLUDES}
+_PARAMS.news= --param news.project.xml-master "'${XML_NEWS_NEWS_MASTER}'" \
+ --param news.project.xml "'${XML_NEWS_NEWS}'"
+XML_NEWS_INCLUDES_MASTER=${WEB_PREFIX}/en/news/includes.xsl
+XML_NEWS_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/news/includes.xsl
+XML_NEWS_NEWS_MASTER= ${WEB_PREFIX}/en/news/news.xml
+XML_NEWS_NEWS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/news.xml
+
+# DEPENDSET: press ..........................................................
+_DEPENDSET.press= ${XML_NEWS_PRESS_MASTER} ${XML_NEWS_PRESS} \
+ ${XML_NEWS_INCLUDES_MASTER} ${XML_NEWS_INCLUDES}
+_PARAMS.press= --param news.press.xml-master "'${XML_NEWS_PRESS_MASTER}'" \
+ --param news.press.xml "'${XML_NEWS_PRESS}'"
+XML_NEWS_INCLUDES_MASTER=${WEB_PREFIX}/en/news/includes.xsl
+XML_NEWS_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/news/includes.xsl
+XML_NEWS_PRESS_MASTER= ${WEB_PREFIX}/en/news/press.xml
+XML_NEWS_PRESS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/press.xml
+
+# DEPENDSET: navigation .....................................................
+_DEPENDSET.navigation= ${XML_NAVIGATION}
+_PARAMS.navigation= --param navigation.xml "'${XML_NAVIGATION}'"
+XML_NAVIGATION= ${WEB_PREFIX}/${WWW_LANGCODE}/navigation.xml
+
+# DEPENDSET: advisories .....................................................
+_DEPENDSET.advisories= ${XML_ADVISORIES}
+_PARAMS.advisories= --param advisories.xml "'${XML_ADVISORIES}'"
+XML_ADVISORIES= ${WEB_PREFIX}/share/sgml/advisories.xml
+
+# DEPENDSET: notices ........................................................
+_DEPENDSET.notices= ${XML_NOTICES}
+_PARAMS.notices= --param notices.xml "'${XML_NOTICES}'"
+XML_NOTICES= ${WEB_PREFIX}/share/sgml/notices.xml
+
+# ---
+# .xml -> .html rendering rule
+#
+# The following variables are available:
+#
+# XMLDOCS: (ex. XMLDOCS= doc1 doc2 doc3)
+# Target document identifier, which is usually the same as the
+# base part of the filenames. {XSLT,XML,TARGET}.<id> described below
+# can be specified in a short form like the following:
+# "docid:stylesheet:xml:target".
+#
+# TARGET.<id>: (ex. TARGET.doc1= doc1.html)
+# The target filename. This is optional and <id>.html is defined
+# by default.
+#
+# XSLT.<id>: (ex. XSLT.doc1= doc1.xsl)
+# Filename of the XSLT stylesheet. This is optional and <id>.xsl is
+# defined by default. The following keywords are interpreted specially:
+#
+# `xsl' - <id>.xsl
+#
+# XSLT.DEFAULT:
+# The default filename or keyword of XSLT stylesheet.
+# When XSLT.<id> and one in the quadruplet are not specified,
+# this value is used.
+#
+# XML.<id>: (ex. XML.doc1= doc1.xml data.xml)
+# Filename of the XML document. This is optional and /dev/null is
+# defined by default. XML.DEFAULT is XML document for all <id>s.
+#
+# SRCS.<id>: (ex. SRCS.doc1= includes.xsl)
+# Dependencies. SRCS.DEFAULT is dependencies for all <id>s.
+#
+# DEPENDSET.<id>: (ex. DEPENDSET.doc1= mirror)
+# Depencencies predefined as keywords listed in ${_DEPENDSET.all}.
+# DEPENDSET.DEFAULT is DEPENDSET for all <id>s.
+#
+# PARAMS.<id>: (ex. PARAMS.doc1= --params "foo" "'textproc/foo'")
+# Parameters passed to xsltproc(1).
+#
+# XSLTPROCOPTS.<id>: (ex. XSLTPROCOPTS.doc1= --nonet)
+# Parameters passed to xsltproc(1).
+#
+# NO_DATA.<id>
+# The ${TARGET.<id>} file will not be listed in $DATA if defined.
+# NO_DATA.DEFAULT is the setting for all <id>s.
+#
+# NO_TIDY.<id>
+# The ${TARGET.<id>} file will not be processed by tidy if defined.
+# NO_TIDY.DEFAULT is the setting for all <id>s.
+#
+XSLTPROC_ENV+= SGML_CATALOG_FILES=
+XSLTPROC_ENV+= XML_CATALOG_FILES="${XML_CATALOG_FILES}"
+
+XSLTPROCOPTS= ${XSLTPROC_ARGS}
+XSLTPROCOPTS+= --xinclude
+XSLTPROCOPTS+= --stringparam LOCALBASE ${LOCALBASE}
+XSLTPROCOPTS+= --stringparam WEB_PREFIX ${WEB_PREFIX}
+.if defined(XML_CATALOG_FILES) && !empty(XML_CATALOG_FILES)
+XSLTPROCOPTS+= --nonet --catalogs
+.endif
+XSLTPROC= env ${XSLTPROC_ENV} ${LOCALBASE}/bin/xsltproc
+
+.for D in ${XMLDOCS}
+# parse "docid:xslt:xml:target".
+# XXX: ${__ID} is used because ${A}=B does not work except
+# for the iterate variable in the .for statement.
+__ID=${D:C,:.*$,,}
+
+.for _ID in ${__ID}
+_tmpD= ${D:M*\:*}
+.if !empty(_tmpD)
+XSLT.${_ID}= ${D:C,^[^:]*,,:M*\:*:C,^:,,:C,:.*$,,}
+XML.${_ID}= ${D:C,^[^:]*,,:M*\:*:C,^:,,:C,^[^:]*,,:M*\:*:C,^:,,:C,:.*$,,}
+TARGET.${_ID}= ${D:C,^[^:]*,,:M*\:*:C,^:,,:C,^[^:]*,,:M*\:*:C,^:,,:C,^[^:]*,,:M*\:*:C,^:,,:C,:.*$,,}
+.endif
+
+# Use default value if parameter not specified.
+.if !defined(XSLT.${_ID}) || empty(XSLT.${_ID})
+.if defined(XSLT.DEFAULT)
+XSLT.${_ID}= ${XSLT.DEFAULT}
+.else
+XSLT.${_ID}= ${_ID}.xsl
+.endif
+.endif
+.if !defined(XML.${_ID}) || empty(XML.${_ID})
+.if defined(XML.DEFAULT)
+XML.${_ID}= ${XML.DEFAULT}
+.else
+XML.${_ID}= ${_ID}.xml
+.endif
+.endif
+.if !defined(TARGET.${_ID}) || empty(TARGET.${_ID})
+TARGET.${_ID}= ${_ID}.html
+.endif
+.if !defined(DEPENDSET.${_ID}) || empty(DEPENDSET.${_ID})
+.if defined(DEPENDSET.DEFAULT)
+DEPENDSET.${_ID}= ${DEPENDSET.DEFAULT}
+.else
+DEPENDSET.${_ID}=
+.endif
+.endif
+.if !defined(NO_TIDY.${_ID}) || empty(NO_TIDY.${_ID})
+.if defined(NO_TIDY.DEFAULT)
+NO_TIDY.${_ID}= ${NO_TIDY.DEFAULT}
+.else
+NO_TIDY.${_ID}=
+.endif
+.endif
+.if !defined(NO_DATA.${_ID}) || empty(NO_DATA.${_ID})
+.if defined(NO_DATA.DEFAULT)
+NO_DATA.${_ID}= ${NO_DATA.DEFAULT}
+.else
+NO_DATA.${_ID}=
+.endif
+.endif
+
+XSLTPROCOPTS.${_ID}?= ${XSLTPROCOPTS}
+GENDOCS+= ${TARGET.${_ID}}
+SRCS+= ${TARGET.${_ID}}
+.if !defined(NO_DATA.${_ID}) || empty(NO_DATA.${_ID})
+DATA+= ${TARGET.${_ID}}
+.endif
+CLEANFILES+= ${TARGET.${_ID}}
+
+.if ${XSLT.${_ID}} == xsl
+XSLT.${_ID}= ${_ID}.xsl
+DEPENDS.${_ID}+= ${XSLT.${_ID}}
+.elif ${XSLT.${_ID}:Mhttp\://*} != ""
+DEPENDS.${_ID}+= ${XSLT.${_ID}}
+.else
+DEPENDS.${_ID}+= ${XSLT.${_ID}}
+.endif
+
+.for S in ${_DEPENDSET.all}
+. if ${DEPENDSET.${_ID}:M${S}} != ""
+DEPENDS.${_ID}+=${_DEPENDSET.${S}}
+PARAMS.${_ID}+= ${_PARAMS.${S}}
+. endif
+.endfor
+
+.for S in ${SRCS.DEFAULT} ${SRCS.${_ID}}
+DEPENDS.${_ID}+= ${S}
+.endfor
+${TARGET.${_ID}}: ${XML_INCLUDES} ${XML.${_ID}} ${DEPENDS.${_ID}}
+ ${XSLTPROC} ${XSLTPROCOPTS.${_ID}} \
+ -o ${.TARGET} ${PARAMS.${_ID}} \
+ ${XSLT.${_ID}} ${XML.${_ID}}
+. if !defined(NO_TIDY) || empty(NO_TIDY)
+. if !defined(NO_TIDY.${_ID}) || empty(NO_TIDY.${_ID})
+ -${TIDY} ${TIDYOPTS} ${.TARGET}
+. endif
+. endif
+.endfor
+.endfor
Index: www/share/mk/web.site.mk
===================================================================
RCS file: /home/ncvs/www/share/mk/web.site.mk,v
retrieving revision 1.65
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.65 web.site.mk
--- www/share/mk/web.site.mk 1 Mar 2005 23:04:59 -0000 1.65
+++ www/share/mk/web.site.mk 16 Jul 2005 14:24:58 -0000
@@ -61,6 +61,9 @@
XSLTPROC?= ${PREFIX}/bin/xsltproc
XSLTPROCOPTS?= ${XSLTPROCFLAGS}
+XMLLINT?= ${PREFIX}/bin/xmllint
+XMLLINTOPTS?= ${XMLLINTFLAGS}
+
TIDY?= ${PREFIX}/bin/tidy
.if defined(TIDY_VERBOSE)
_TIDYLOGFILE= tidyerr.${.TARGET}
@@ -129,6 +132,7 @@
DOC_PREFIX?= ${WEB_PREFIX}/../doc
.if exists(${DOC_PREFIX}/share/mk/doc.common.mk)
.include "${DOC_PREFIX}/share/mk/doc.common.mk"
+.include "${DOC_PREFIX}/share/mk/doc.xml.mk"
.else
.error ${DOC_PREFIX}/share/mk/doc.common.mk not found.\
Define $$WITHOUT_DOC and $$WEB_ONLY for performing a partial\
@@ -142,28 +146,10 @@
_WEB_PREFIX!= realpath ${WEB_PREFIX}
WWW_LANGCODE:= ${.CURDIR:S,^${_WEB_PREFIX}/,,:C,^([^/]+)/.*,\1,}
.undef _WEB_PREFIX
+.include "${WEB_PREFIX}/share/mk/doc.xml.mk"
.endif
.endif # !defined(WITHOUT_DOC)
-XML_ADVISORIES?= ${WEB_PREFIX}/share/sgml/advisories.xml
-XML_NOTICES?= ${WEB_PREFIX}/share/sgml/notices.xml
-
-XML_NEWS_NEWS_MASTER= ${WEB_PREFIX}/en/news/news.xml
-XML_NEWS_NEWS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/news.xml
-XML_NEWS_PRESS_MASTER= ${WEB_PREFIX}/en/news/press.xml
-XML_NEWS_PRESS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/press.xml
-XML_NEWS_INCLUDES_MASTER= ${WEB_PREFIX}/en/news/includes.xsl
-XML_NEWS_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/news/includes.xsl
-
-XML_NAVIGATION= ${WEB_PREFIX}/${WWW_LANGCODE}/navigation.xml
-
-XML_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/includes.xsl
-XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.header.xsl
-XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.misc.xsl
-XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.release.xsl
-XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/transtable-common.xsl
-XML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.xsl
-
SGML_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/includes.sgml
SGML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.header.sgml
SGML_INCLUDES+= ${WEB_PREFIX}/share/sgml/includes.misc.sgml
Index: www/en/Makefile
===================================================================
RCS file: /home/ncvs/www/en/Makefile,v
retrieving revision 1.123
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.123 Makefile
--- www/en/Makefile 16 Jul 2005 09:58:16 -0000 1.123
+++ www/en/Makefile 16 Jul 2005 14:12:37 -0000
@@ -23,6 +23,14 @@
DOCS+= where.sgml
DOCS+= y2kbug.sgml
+XMLDOCS= index:xsl:${XML_NEWS_NEWS}:
+DEPENDSET.index=transtable mirrors news press \
+ navigation advisories notices
+
+XMLDOCS+= usergroups:${XSL_USERGROUPS}:${XML_USERGROUPS}:
+DEPENDSET.usergroups=transtable usergroups
+PARAMS.usergroups= --param pagename "'FreeBSD User Groups'"
+
# These will be directly installed.
DATA= favicon.ico
@@ -82,42 +90,4 @@
WEBDIR?= data
-# these files are generated by using separate rules.
-DATA+= index.html usergroups.html
-CLEANFILES+= index.html usergroups.html
-
.include "${WEB_PREFIX}/share/mk/web.site.mk"
-
-index.html: index.xsl ${XML_INCLUDES}\
- ${XML_NEWS_INCLUDES} \
- ${XML_NEWS_NEWS} ${XML_NEWS_NEWS_MASTER} \
- ${XML_NEWS_PRESS} ${XML_NEWS_PRESS_MASTER} \
- ${XML_MIRRORS} ${XML_TRANSTABLE} \
- ${XML_ADVISORIES} ${XML_NOTICES} \
- ${XML_NAVIGATION}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- -o $@ \
- --param advisories.xml "'${XML_ADVISORIES}'" \
- --param mirrors.xml "'${XML_MIRRORS}'" \
- --param navigation.xml "'${XML_NAVIGATION}'" \
- --param news.press.xml-master "'${XML_NEWS_PRESS_MASTER}'" \
- --param news.press.xml "'${XML_NEWS_PRESS}'" \
- --param news.project.xml-master "'${XML_NEWS_NEWS_MASTER}'" \
- --param news.project.xml "'${XML_NEWS_NEWS}'" \
- --param notices.xml "'${XML_NOTICES}'" \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/index.xsl ${XML_NEWS_NEWS}
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
-
-usergroups.html: ${XML_INCLUDES} ${XML_TRANSTABLE} \
- ${XSL_USERGROUPS} ${XML_USERGROUPS}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- -o $@ \
- --param pagename "'FreeBSD User Groups'" \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${XSL_USERGROUPS} ${XML_USERGROUPS}
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
Index: www/en/commercial/Makefile
===================================================================
RCS file: /home/ncvs/www/en/commercial/Makefile,v
retrieving revision 1.16
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.16 Makefile
--- www/en/commercial/Makefile 5 May 2004 07:56:31 -0000 1.16
+++ www/en/commercial/Makefile 16 Jul 2005 15:12:01 -0000
@@ -7,88 +7,37 @@
.include "../Makefile.inc"
.endif
-DOCS= commercial.sgml
-
-DATA= consult.html
-DATA+= consult_bycat.html
-DATA+= hardware.html
-DATA+= isp.html
-DATA+= misc.html
-DATA+= software.html
-DATA+= software_bycat.html
-
-CLEANFILES= commercial.html
-CLEANFILES+= consult.html
-CLEANFILES+= consult_bycat.html
-CLEANFILES+= hardware.html
-CLEANFILES+= isp.html
-CLEANFILES+= misc.html
-CLEANFILES+= software.html
-CLEANFILES+= software_bycat.html
+DOCS= commercial.sgml
-INDEXLINK= commercial.html
+INDEXLINK= commercial.html
-XMLLINT?= /usr/local/bin/xmllint # Part of textproc/libxml2.
+SRCS.DEFAULT= ../includes.xsl
+XSLT.DEFAULT= entries.xsl
-consult.html: entries.xsl consult.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param pagename "'Consulting Services'" \
- ${.CURDIR}/entries.xsl ${.CURDIR}/consult.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= consult
+PARAMS.consult= --param pagename "'Consulting Services'"
-consult_bycat.html: consult_bycat.xsl consult.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- ${.CURDIR}/consult_bycat.xsl ${.CURDIR}/consult.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= consult_bycat::consult.xml:
-hardware.html: entries.xsl hardware.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param pagename "'Hardware Vendors'" \
- ${.CURDIR}/entries.xsl ${.CURDIR}/hardware.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= hardware
+PARAMS.hardware= --param pagename "'Hardware Vendors'"
-isp.html: entries.xsl isp.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param pagename "'Internet Service Providers'" \
- ${.CURDIR}/entries.xsl ${.CURDIR}/isp.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= isp
+PARAMS.isp= --param pagename "'Internet Service Providers'"
-misc.html: entries.xsl misc.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param pagename "'Miscellaneous Vendors'" \
- ${.CURDIR}/entries.xsl ${.CURDIR}/misc.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= misc
+PARAMS.misc= --param pagename "'Miscellaneous Vendors'"
-software.html: entries.xsl software.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param pagename "'Software Vendors'" \
- ${.CURDIR}/entries.xsl ${.CURDIR}/software.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= software
+PARAMS.software=--param pagename "'Software Vendors'"
-software_bycat.html: soft_bycat.xsl software.xml ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- ${.CURDIR}/soft_bycat.xsl ${.CURDIR}/software.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= software_bycat:soft_bycat.xsl:software.xml:
lint:
- ${XMLLINT} --valid -o /dev/null ${.CURDIR}/consult.xml
- ${XMLLINT} --valid -o /dev/null ${.CURDIR}/hardware.xml
- ${XMLLINT} --valid -o /dev/null ${.CURDIR}/isp.xml
- ${XMLLINT} --valid -o /dev/null ${.CURDIR}/misc.xml
- ${XMLLINT} --valid -o /dev/null ${.CURDIR}/software.xml
+ ${XMLLINT} ${XMLLINTOPTS} --valid -o /dev/null ${.CURDIR}/consult.xml
+ ${XMLLINT} ${XMLLINTOPTS} --valid -o /dev/null ${.CURDIR}/hardware.xml
+ ${XMLLINT} ${XMLLINTOPTS} --valid -o /dev/null ${.CURDIR}/isp.xml
+ ${XMLLINT} ${XMLLINTOPTS} --valid -o /dev/null ${.CURDIR}/misc.xml
+ ${XMLLINT} ${XMLLINTOPTS} --valid -o /dev/null ${.CURDIR}/software.xml
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/events/Makefile
===================================================================
RCS file: /home/ncvs/www/en/events/Makefile,v
retrieving revision 1.7
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.7 Makefile
--- www/en/events/Makefile 6 Apr 2004 11:36:12 -0000 1.7
+++ www/en/events/Makefile 16 Jul 2005 14:26:54 -0000
@@ -11,9 +11,7 @@
SUBDIR+= 2003
DATA= events.css
-DATA+= events.html
-CLEANFILES+= events.html
CLEANFILES+= curdate.xml
INDEXLINK= events.html
@@ -22,15 +20,11 @@
TR?= /usr/bin/tr
XMLLINT?= /usr/local/bin/xmllint # Part of textproc/libxml2.
-events.html: events.xsl events.xml ../includes.xsl curdate.xml
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- ${.CURDIR}/events.xsl ${.CURDIR}/events.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= events
+SRCS.events= ../includes.xsl curdate.xml
lint:
- ${XMLLINT} --valid -o /dev/null ${.CURDIR}/events.xml
+ ${XMLLINT} ${XMLLINTOPTS} --valid -o /dev/null ${.CURDIR}/events.xml
.if !make(install)
.PHONY: curdate.xml
Index: www/en/gnome/Makefile
===================================================================
RCS file: /home/ncvs/www/en/gnome/Makefile,v
retrieving revision 1.20
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.20 Makefile
--- www/en/gnome/Makefile 25 Nov 2004 04:29:18 -0000 1.20
+++ www/en/gnome/Makefile 16 Jul 2005 15:14:06 -0000
@@ -13,31 +13,16 @@
DOCS= screenshots.sgml
DOCS+= contact.sgml
-DATA= index.html newsflash.html news.rdf gnome_upgrade.sh gnomelogalyzer.sh
-
-CLEANFILES= index.html
-CLEANFILES+= newsflash.html
-CLEANFILES+= news.rdf
+DATA= gnome_upgrade.sh
+DATA+= gnomelogalyzer.sh
-index.html! index.xsl news.xml includes.xsl ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS:N-nonet} -o index.html \
- ${.CURDIR}/index.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} index.html
-.endif
+SRCS.DEFAULT= includes.xsl
+XML.DEFAULT= news.xml
-news.rdf: rss.xsl news.xml includes.xsl ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o news.rdf \
- ${.CURDIR}/rss.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} -xml -wrap 0 ${TIDYOPTS} news.rdf
-.endif
+XMLDOCS= index
+XSLTPROCOPTS.index= ${XSLTPROCOPTS:N--nonet}
-newsflash.html: newsflash.xsl news.xml includes.xsl ../includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- ${.CURDIR}/newsflash.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= newsflash
+XMLDOCS+= news:rss.xsl::news.rdf
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/Makefile,v
retrieving revision 1.41
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.41 Makefile
--- www/en/news/Makefile 19 Apr 2005 21:19:03 -0000 1.41
+++ www/en/news/Makefile 16 Jul 2005 15:15:23 -0000
@@ -24,6 +24,13 @@
INDEXLINK= news.html
+SRCS.DEFAULT= includes.xsl
+DEPENDSET.DEFAULT= transtable news
+
+XMLDOCS= newsflash::news.xml:
+XMLDOCS+= news-rdf::news.xml:news.rdf
+XMLDOCS+= press
+
SUBDIR= 1993
SUBDIR+= 1996
SUBDIR+= 1997
@@ -35,35 +42,4 @@
SUBDIR+= 2003
SUBDIR+= status
-DATA= newsflash.html news.rdf press.html
-CLEANFILES+= newsflash.html news.rdf press.html
-
.include "${WEB_PREFIX}/share/mk/web.site.mk"
-
-newsflash.html: newsflash.xsl news.xml\
- includes.xsl ${XML_INCLUDES}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param "news.project.xml-master" "'${XML_NEWS_NEWS_MASTER}'" \
- --param "news.project.xml" "'${XML_NEWS_NEWS}'" \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/newsflash.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
-
-news.rdf: news-rdf.xsl news.xml\
- includes.xsl ${XML_INCLUDES}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/news-rdf.xsl ${.CURDIR}/news.xml
-
-press.html: press.xsl press.xml\
- includes.xsl ${XML_INCLUDES}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param "news.press.xml-master" "'${XML_NEWS_PRESS_MASTER}'" \
- --param "news.press.xml" "'${XML_NEWS_PRESS}'" \
- --param "transtable.xml" "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/press.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
Index: www/en/news/1998/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/1998/Makefile,v
retrieving revision 1.3
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.3 Makefile
--- www/en/news/1998/Makefile 7 Apr 2004 11:41:47 -0000 1.3
+++ www/en/news/1998/Makefile 16 Jul 2005 14:40:14 -0000
@@ -9,16 +9,8 @@
DOCS= index.sgml
-DATA= press.html
-CLEANFILES+= press.html
-
-press.html: ../oldpress.xsl press.xml\
- ../includes.xsl ../../includes.xsl ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldpress.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= press:../oldpress.xsl::
+SRCS.press= ../includes.xsl
+DEPENDSET.press= transtable
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/1999/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/1999/Makefile,v
retrieving revision 1.3
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.3 Makefile
--- www/en/news/1999/Makefile 7 Apr 2004 11:41:47 -0000 1.3
+++ www/en/news/1999/Makefile 16 Jul 2005 14:41:37 -0000
@@ -9,17 +9,8 @@
DOCS= index.sgml
-DATA= press.html
-CLEANFILES+= press.html
-
-press.html: ../oldpress.xsl press.xml\
- ../includes.xsl ../../includes.xsl ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldpress.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
-
+XMLDOCS= press:../oldpress.xsl::
+SRCS.press= ../includes.xsl
+DEPENDSET.press= transtable
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/2000/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/2000/Makefile,v
retrieving revision 1.3
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.3 Makefile
--- www/en/news/2000/Makefile 7 Apr 2004 11:41:47 -0000 1.3
+++ www/en/news/2000/Makefile 16 Jul 2005 14:41:53 -0000
@@ -9,16 +9,8 @@
DOCS= index.sgml
-DATA= press.html
-CLEANFILES+= press.html
-
-press.html: ../oldpress.xsl press.xml\
- ../includes.xsl ../../includes.xsl ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldpress.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= press:../oldpress.xsl::
+SRCS.press= ../includes.xsl
+DEPENDSET.press= transtable
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/2001/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/2001/Makefile,v
retrieving revision 1.4
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.4 Makefile
--- www/en/news/2001/Makefile 31 Dec 2004 07:24:04 -0000 1.4
+++ www/en/news/2001/Makefile 16 Jul 2005 14:43:06 -0000
@@ -7,25 +7,15 @@
.include "../Makefile.inc"
.endif
-DATA= index.html press.html
-CLEANFILES+= index.html press.html
+DATA= index.html
+CLEANFILES+= index.html
-index.html: ../oldnewsflash.xsl news.xml \
- ${XML_INCLUDES} ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldnewsflash.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= index:../oldpress.xsl:news.xml:
+SRCS.index= ../includes.xsl
+DEPENDSET.index= transtable
-press.html: ../oldpress.xsl press.xml\
- ../includes.xsl ../../includes.xsl ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldpress.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= press:../oldpress.xsl::
+SRCS.press= ../includes.xsl
+DEPENDSET.press= transtable
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/2002/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/2002/Makefile,v
retrieving revision 1.4
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.4 Makefile
--- www/en/news/2002/Makefile 31 Dec 2004 07:24:04 -0000 1.4
+++ www/en/news/2002/Makefile 16 Jul 2005 14:43:29 -0000
@@ -7,25 +7,12 @@
.include "../Makefile.inc"
.endif
-DATA= index.html press.html
-CLEANFILES+= index.html press.html
-
-index.html: ../oldnewsflash.xsl news.xml \
- ${XML_INCLUDES} ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldnewsflash.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= index:../oldpress.xsl:news.xml:
+SRCS.index= ../includes.xsl
+DEPENDSET.index= transtable
-press.html: ../oldpress.xsl press.xml \
- ${XML_INCLUDES} ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldpress.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= press:../oldpress.xsl::
+SRCS.press= ../includes.xsl
+DEPENDSET.press= transtable
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/2003/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/2003/Makefile,v
retrieving revision 1.1
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.1 Makefile
--- www/en/news/2003/Makefile 19 Apr 2005 21:19:03 -0000 1.1
+++ www/en/news/2003/Makefile 16 Jul 2005 14:43:43 -0000
@@ -7,25 +7,12 @@
.include "../Makefile.inc"
.endif
-DATA= index.html press.html
-CLEANFILES+= index.html press.html
-
-index.html: ../oldnewsflash.xsl news.xml \
- ${XML_INCLUDES} ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldnewsflash.xsl ${.CURDIR}/news.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= index:../oldpress.xsl:news.xml:
+SRCS.index= ../includes.xsl
+DEPENDSET.index= transtable
-press.html: ../oldpress.xsl press.xml \
- ${XML_INCLUDES} ${XML_TRANSTABLE}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param transtable.xml "'${XML_TRANSTABLE}'" \
- ${.CURDIR}/../oldpress.xsl ${.CURDIR}/press.xml
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS+= press:../oldpress.xsl::
+SRCS.press= ../includes.xsl
+DEPENDSET.press= transtable
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/news/status/Makefile
===================================================================
RCS file: /home/ncvs/www/en/news/status/Makefile,v
retrieving revision 1.27
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.27 Makefile
--- www/en/news/status/Makefile 21 Apr 2005 17:55:46 -0000 1.27
+++ www/en/news/status/Makefile 16 Jul 2005 14:47:28 -0000
@@ -7,41 +7,33 @@
.include "../Makefile.inc"
.endif
-.SUFFIXES: .xml .html
-
DOCS= status.sgml
-DATA= report-june-2001.html
-DATA+= report-july-2001.html
-DATA+= report-august-2001.html
-DATA+= report-september-2001.html
-DATA+= report-november-2001.html
-DATA+= report-dec-2001-jan-2002.html
-DATA+= report-feb-2002-apr-2002.html
-DATA+= report-may-2002-june-2002.html
-DATA+= report-july-2002-aug-2002.html
-DATA+= report-sept-2002-oct-2002.html
-DATA+= report-nov-2002-dec-2002.html
-DATA+= report-jan-2003-feb-2003.html
-DATA+= report-mar-2003-sep-2003.html
-DATA+= report-oct-2003-dec-2003.html
-DATA+= report-jan-2004-feb-2004.html
-DATA+= report-mar-2004-apr-2004.html
-DATA+= report-may-2004-june-2004.html
-DATA+= report-july-2004-dec-2004.html
-DATA+= report-jan-2005-mar-2005.html
-
-# Install a sample <project> entry.
-DATA+= report-sample.xml
+XMLDOCS= report-june-2001
+XMLDOCS+= report-july-2001
+XMLDOCS+= report-august-2001
+XMLDOCS+= report-september-2001
+XMLDOCS+= report-november-2001
+XMLDOCS+= report-dec-2001-jan-2002
+XMLDOCS+= report-feb-2002-apr-2002
+XMLDOCS+= report-may-2002-june-2002
+XMLDOCS+= report-july-2002-aug-2002
+XMLDOCS+= report-sept-2002-oct-2002
+XMLDOCS+= report-nov-2002-dec-2002
+XMLDOCS+= report-jan-2003-feb-2003
+XMLDOCS+= report-mar-2003-sep-2003
+XMLDOCS+= report-oct-2003-dec-2003
+XMLDOCS+= report-jan-2004-feb-2004
+XMLDOCS+= report-mar-2004-apr-2004
+XMLDOCS+= report-may-2004-june-2004
+XMLDOCS+= report-july-2004-dec-2004
+XMLDOCS+= report-jan-2005-mar-2005
-CLEANFILES+= ${DATA:M*.html}
+XSLT.DEFAULT= report.xsl
+SRCS.DEFAULT= includes.xsl
-.xml.html: report.xsl includes.xsl
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- ${.CURDIR}/report.xsl ${.IMPSRC}
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+# Install a sample <project> entry.
+DATA= report-sample.xml
INDEXLINK= status.html
Index: www/en/platforms/ia64/Makefile
===================================================================
RCS file: /home/ncvs/www/en/platforms/ia64/Makefile,v
retrieving revision 1.5
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.5 Makefile
--- www/en/platforms/ia64/Makefile 25 May 2005 03:33:45 -0000 1.5
+++ www/en/platforms/ia64/Makefile 16 Jul 2005 14:51:09 -0000
@@ -10,16 +10,7 @@
DOCS= machines.sgml refs.sgml
DATA= i2inside.png mckinley-die.png merced-die.png montecito-die.png
-_GEN= index.html todo.html
-
-DATA+= ${_GEN}
-CLEANFILES+= ${_GEN}
-
-.SUFFIXES: .xsl .html
-.xsl.html: news.xml
- ${XSLTPROC} ${XSLTPROCOPTS:N-nonet} -o ${.TARGET} ${.ALLSRC}
-.if !defined(NO_TIDY)
- -${TIDY} ${TIDYOPTS} ${.TARGET}
-.endif
+XMLDOCS= index::news.xml:
+XMLDOCS+= todo::news.xml:
.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: www/en/security/Makefile
===================================================================
RCS file: /home/ncvs/www/en/security/Makefile,v
retrieving revision 1.13
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.13 Makefile
--- www/en/security/Makefile 25 May 2004 01:19:50 -0000 1.13
+++ www/en/security/Makefile 16 Jul 2005 15:17:07 -0000
@@ -11,18 +11,16 @@
DOCS+= security.sgml
INDEXLINK= security.html
-DATA+= advisories.rdf
-CLEANFILES+= advisories.html.inc advisories.rdf
-
-.include "${WEB_PREFIX}/share/mk/web.site.mk"
security.html: advisories.html.inc advisories.rdf
-advisories.html.inc: mkindex.xsl ${XML_ADVISORIES} ${XML_INCLUDES}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param "advisories.xml" "'${XML_ADVISORIES}'" \
- ${.CURDIR}/mkindex.xsl ${XML_ADVISORIES}
-advisories.rdf: security-rdf.xsl ${XML_ADVISORIES} ${XML_INCLUDES}
- ${XSLTPROC} ${XSLTPROCOPTS} -o ${.TARGET} \
- --param "advisories.xml" "'${XML_ADVISORIES}'" \
- ${.CURDIR}/security-rdf.xsl ${XML_ADVISORIES}
+DEPENDSET.DEFAULT= advisories
+XML.DEFAULT= ${XML_ADVISORIES}
+
+XMLDOCS= advisories:mkindex.xsl::advisories.html.inc
+NO_DATA.advisories= yes
+NO_TIDY.advisories= yes
+
+XMLDOCS+= advisories-rdf:security-rdf.xsl::advisories.rdf
+
+.include "${WEB_PREFIX}/share/mk/web.site.mk"
Index: doc/share/mk/doc.common.mk
===================================================================
RCS file: /home/ncvs/doc/share/mk/doc.common.mk,v
retrieving revision 1.14
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.14 doc.common.mk
--- doc/share/mk/doc.common.mk 16 Jul 2005 09:58:33 -0000 1.14
+++ doc/share/mk/doc.common.mk 16 Jul 2005 10:47:36 -0000
@@ -113,67 +113,6 @@
URL_RELPREFIX_ENT= freebsd.urls.relprefix.${_URL_RELPREFIX_LEVEL}
.endif
-# ------------------------------------------------------------------------
-#
-# mirrors.xml dependency.
-#
-
-XML_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors.xml
-XML_MIRRORS= ${.OBJDIR}/${DOC_PREFIX:S,^${.CURDIR}/,,}/${LANGCODE}/share/sgml/mirrors.xml
-
-XSL_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors-master.xsl
-
-.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl)
-XSL_MIRRORS= ${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl
-.else
-XSL_MIRRORS= ${DOC_PREFIX}/share/sgml/mirrors-local.xsl
-.endif
-
-XSL_TRANSTABLE_MASTER= ${DOC_PREFIX}/share/sgml/transtable-master.xsl
-XSL_TRANSTABLE_COMMON= ${DOC_PREFIX}/share/sgml/transtable-common.xsl
-
-.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl)
-XSL_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl
-.else
-XSL_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable-local.xsl
-.endif
-
-.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml)
-XML_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml
-.else
-XML_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable.xml
-.endif
-
-${XSL_MIRRORS}: ${XSL_MIRRORS_MASTER} ${XSL_TRANSTABLE_COMMON}
-
-${XML_MIRRORS}: ${XML_MIRRORS_MASTER} ${XSL_TRANSTABLE} ${XSL_TRANSTABLE_MASTER} ${XSL_TRANSTABLE_COMMON}
- ${MKDIR} -p ${@:H}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
- --param 'transtable-target-element' "'country'" \
- --param 'transtable-word-group' "'country'" \
- --param 'transtable-mode' "'sortkey'" \
- ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER} \
- | env -i LANG="${LANGCODE}" ${SORT} -f > $@.sort.tmp
- env -i ${GREP} "^<?xml" < $@.sort.tmp > $@.sort
- ${ECHO} "<sortkeys>" >> $@.sort
- env -i ${AWK} '/@sortkey@/ {sub(/@sortkey@/, ++line); print;}' < $@.sort.tmp >> $@.sort
- ${ECHO} '</sortkeys>' >> $@.sort
- ${XSLTPROC} ${XSLTPROCOPTS} -o $@ \
- --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
- --param 'transtable-target-element' "'country'" \
- --param 'transtable-word-group' "'country'" \
- --param 'transtable-sortkey.xml' "'$@.sort'" \
- ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER}
- ${RM} -f $@.sort $@.sort.tmp
-
-CLEANFILES+= ${XML_MIRRORS}
-CLEANFILES+= ${XML_MIRRORS}.sort
-CLEANFILES+= ${XML_MIRRORS}.sort.tmp
-
-XML_USERGROUPS= ${WEB_PREFIX}/share/sgml/usergroups.xml
-XSL_USERGROUPS= ${WEB_PREFIX}/share/sgml/templates.usergroups.xsl
-
#
# when URLS_ABSOLUTE is specified, make
# %freebsd.urls.absolute; "INCLUDE".
Index: doc/share/mk/doc.project.mk
===================================================================
RCS file: /home/ncvs/doc/share/mk/doc.project.mk,v
retrieving revision 1.26
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.26 doc.project.mk
--- doc/share/mk/doc.project.mk 20 Feb 2005 17:14:25 -0000 1.26
+++ doc/share/mk/doc.project.mk 16 Jul 2005 10:53:19 -0000
@@ -130,6 +130,9 @@
# Ownership information.
.include "doc.install.mk"
+# XML specific configuration
+.include "doc.xml.mk"
+
# Format-specific configuration
.if defined(DOC)
.if ${DOCFORMAT} == "docbook"
Index: doc/share/mk/doc.xml.mk
===================================================================
RCS file: doc/share/mk/doc.xml.mk
diff -N doc/share/mk/doc.xml.mk
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ doc/share/mk/doc.xml.mk 16 Jul 2005 15:09:08 -0000
@@ -0,0 +1,274 @@
+# doc.xml.mk
+# $FreeBSD$
+
+XML_CATALOG_FILES= file://${DOC_PREFIX}/${LANGCODE}/share/sgml/catalog.xml \
+ file://${DOC_PREFIX}/share/sgml/catalog.xml \
+ file://${DOC_PREFIX}/share/sgml/catalog-common.xml \
+ file://${WEB_PREFIX}/${WWW_LANGCODE}/share/sgml/catalog.xml \
+ file://${WEB_PREFIX}/share/sgml/catalog-common.xml \
+ file://${LOCALBASE}/share/xml/catalog
+
+XML_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/includes.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.header.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.misc.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.release.xsl \
+ ${WEB_PREFIX}/share/sgml/includes.xsl
+
+# Variables used in DEPENDSET
+
+_DEPENDSET.all= transtable mirrors usergroups \
+ news press navigation advisories notices
+
+# DEPENDSET: transtable ......................................................
+_DEPENDSET.transtable= ${XML_TRANSTABLE} ${XSL_TRANSTABLE} \
+ ${XSL_TRANSTABLE_MASTER} ${XSL_TRANSTABLE_COMMON}
+_PARAMS.transtable= --param transtable.xml "'${XML_TRANSTABLE}'"
+XSL_TRANSTABLE_MASTER= ${DOC_PREFIX}/share/sgml/transtable-master.xsl
+XSL_TRANSTABLE_COMMON= ${DOC_PREFIX}/share/sgml/transtable-common.xsl
+
+.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl)
+XSL_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable-local.xsl
+.else
+XSL_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable-local.xsl
+.endif
+
+.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml)
+XML_TRANSTABLE= ${DOC_PREFIX}/${LANGCODE}/share/sgml/transtable.xml
+.else
+XML_TRANSTABLE= ${DOC_PREFIX}/share/sgml/transtable.xml
+.endif
+
+# DEPENDSET: mirrors .....................................................
+_DEPENDSET.mirrors= ${XSL_MIRRORS} ${XML_MIRRORS}
+_PARAMS.mirrors= --param mirrors.xml "'${XML_MIRRORS}'"
+XML_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors.xml
+XML_MIRRORS= ${.OBJDIR}/${DOC_PREFIX:S,^${.CURDIR}/,,}/${LANGCODE}/share/sgml/mirrors.xml
+XSL_MIRRORS_MASTER= ${DOC_PREFIX}/share/sgml/mirrors-master.xsl
+.if exists(${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl)
+XSL_MIRRORS= ${DOC_PREFIX}/${LANGCODE}/share/sgml/mirrors-local.xsl
+.else
+XSL_MIRRORS= ${DOC_PREFIX}/share/sgml/mirrors-local.xsl
+.endif
+${XSL_MIRRORS}: ${XSL_MIRRORS_MASTER} \
+ ${XSL_TRANSTABLE_COMMON}
+
+${XML_MIRRORS}: ${XML_MIRRORS_MASTER} \
+ ${XSL_TRANSTABLE} ${XSL_TRANSTABLE_MASTER} ${XSL_TRANSTABLE_COMMON}
+ ${MKDIR} -p ${@:H}
+ ${XSLTPROC} ${XSLTPROCOPTS} \
+ --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
+ --param 'transtable-target-element' "'country'" \
+ --param 'transtable-word-group' "'country'" \
+ --param 'transtable-mode' "'sortkey'" \
+ ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER} \
+ | env -i LANG="${LANGCODE}" ${SORT} -f > $@.sort.tmp
+ env -i ${GREP} "^<?xml" < $@.sort.tmp > $@.sort
+ ${ECHO} "<sortkeys>" >> $@.sort
+ env -i ${AWK} '/@sortkey@/ {sub(/@sortkey@/, ++line); print;}' < $@.sort.tmp >> $@.sort
+ ${ECHO} '</sortkeys>' >> $@.sort
+ ${XSLTPROC} ${XSLTPROCOPTS} -o $@ \
+ --param 'transtable.xml' "'${XML_TRANSTABLE}'" \
+ --param 'transtable-target-element' "'country'" \
+ --param 'transtable-word-group' "'country'" \
+ --param 'transtable-sortkey.xml' "'$@.sort'" \
+ ${XSL_TRANSTABLE} ${XML_MIRRORS_MASTER}
+ ${RM} -f $@.sort $@.sort.tmp
+CLEANFILES+= ${XML_MIRRORS}
+CLEANFILES+= ${XML_MIRRORS}.sort
+CLEANFILES+= ${XML_MIRRORS}.sort.tmp
+
+# DEPENDSET: usergroups ......................................................
+_DEPENDSET.usergroups= ${XML_USERGROUPS} ${XSL_USERGROUPS}
+XML_USERGROUPS= ${WEB_PREFIX}/share/sgml/usergroups.xml
+XSL_USERGROUPS= ${WEB_PREFIX}/share/sgml/templates.usergroups.xsl
+
+# DEPENDSET: news ............................................................
+_DEPENDSET.news= ${XML_NEWS_NEWS_MASTER} ${XML_NEWS_NEWS} \
+ ${XML_NEWS_INCLUDES_MASTER} ${XML_NEWS_INCLUDES}
+_PARAMS.news= --param news.project.xml-master "'${XML_NEWS_NEWS_MASTER}'" \
+ --param news.project.xml "'${XML_NEWS_NEWS}'"
+XML_NEWS_INCLUDES_MASTER=${WEB_PREFIX}/en/news/includes.xsl
+XML_NEWS_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/news/includes.xsl
+XML_NEWS_NEWS_MASTER= ${WEB_PREFIX}/en/news/news.xml
+XML_NEWS_NEWS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/news.xml
+
+# DEPENDSET: press ..........................................................
+_DEPENDSET.press= ${XML_NEWS_PRESS_MASTER} ${XML_NEWS_PRESS} \
+ ${XML_NEWS_INCLUDES_MASTER} ${XML_NEWS_INCLUDES}
+_PARAMS.press= --param news.press.xml-master "'${XML_NEWS_PRESS_MASTER}'" \
+ --param news.press.xml "'${XML_NEWS_PRESS}'"
+XML_NEWS_INCLUDES_MASTER=${WEB_PREFIX}/en/news/includes.xsl
+XML_NEWS_INCLUDES= ${WEB_PREFIX}/${WWW_LANGCODE}/news/includes.xsl
+XML_NEWS_PRESS_MASTER= ${WEB_PREFIX}/en/news/press.xml
+XML_NEWS_PRESS= ${WEB_PREFIX}/${WWW_LANGCODE}/news/press.xml
+
+# DEPENDSET: navigation .....................................................
+_DEPENDSET.navigation= ${XML_NAVIGATION}
+_PARAMS.navigation= --param navigation.xml "'${XML_NAVIGATION}'"
+XML_NAVIGATION= ${WEB_PREFIX}/${WWW_LANGCODE}/navigation.xml
+
+# DEPENDSET: advisories .....................................................
+_DEPENDSET.advisories= ${XML_ADVISORIES}
+_PARAMS.advisories= --param advisories.xml "'${XML_ADVISORIES}'"
+XML_ADVISORIES= ${WEB_PREFIX}/share/sgml/advisories.xml
+
+# DEPENDSET: notices ........................................................
+_DEPENDSET.notices= ${XML_NOTICES}
+_PARAMS.notices= --param notices.xml "'${XML_NOTICES}'"
+XML_NOTICES= ${WEB_PREFIX}/share/sgml/notices.xml
+
+# ---
+# .xml -> .html rendering rule
+#
+# The following variables are available:
+#
+# XMLDOCS: (ex. XMLDOCS= doc1 doc2 doc3)
+# Target document identifier, which is usually the same as the
+# base part of the filenames. {XSLT,XML,TARGET}.<id> described below
+# can be specified in a short form like the following:
+# "docid:stylesheet:xml:target".
+#
+# TARGET.<id>: (ex. TARGET.doc1= doc1.html)
+# The target filename. This is optional and <id>.html is defined
+# by default.
+#
+# XSLT.<id>: (ex. XSLT.doc1= doc1.xsl)
+# Filename of the XSLT stylesheet. This is optional and <id>.xsl is
+# defined by default. The following keywords are interpreted specially:
+#
+# `xsl' - <id>.xsl
+#
+# XSLT.DEFAULT:
+# The default filename or keyword of XSLT stylesheet.
+# When XSLT.<id> and one in the quadruplet are not specified,
+# this value is used.
+#
+# XML.<id>: (ex. XML.doc1= doc1.xml data.xml)
+# Filename of the XML document. This is optional and /dev/null is
+# defined by default. XML.DEFAULT is XML document for all <id>s.
+#
+# SRCS.<id>: (ex. SRCS.doc1= includes.xsl)
+# Dependencies. SRCS.DEFAULT is dependencies for all <id>s.
+#
+# DEPENDSET.<id>: (ex. DEPENDSET.doc1= mirror)
+# Depencencies predefined as keywords listed in ${_DEPENDSET.all}.
+# DEPENDSET.DEFAULT is DEPENDSET for all <id>s.
+#
+# PARAMS.<id>: (ex. PARAMS.doc1= --params "foo" "'textproc/foo'")
+# Parameters passed to xsltproc(1).
+#
+# XSLTPROCOPTS.<id>: (ex. XSLTPROCOPTS.doc1= --nonet)
+# Parameters passed to xsltproc(1).
+#
+# NO_DATA.<id>
+# The ${TARGET.<id>} file will not be listed in $DATA if defined.
+# NO_DATA.DEFAULT is the setting for all <id>s.
+#
+# NO_TIDY.<id>
+# The ${TARGET.<id>} file will not be processed by tidy if defined.
+# NO_TIDY.DEFAULT is the setting for all <id>s.
+#
+XSLTPROC_ENV+= SGML_CATALOG_FILES=
+XSLTPROC_ENV+= XML_CATALOG_FILES="${XML_CATALOG_FILES}"
+
+XSLTPROCOPTS= ${XSLTPROC_ARGS}
+XSLTPROCOPTS+= --xinclude
+XSLTPROCOPTS+= --stringparam LOCALBASE ${LOCALBASE}
+XSLTPROCOPTS+= --stringparam WEB_PREFIX ${WEB_PREFIX}
+.if defined(XML_CATALOG_FILES) && !empty(XML_CATALOG_FILES)
+XSLTPROCOPTS+= --nonet --catalogs
+.endif
+XSLTPROC= env ${XSLTPROC_ENV} ${LOCALBASE}/bin/xsltproc
+
+.for D in ${XMLDOCS}
+# parse "docid:xslt:xml:target".
+# XXX: ${__ID} is used because ${A}=B does not work except
+# for the iterate variable in the .for statement.
+__ID=${D:C,:.*$,,}
+
+.for _ID in ${__ID}
+_tmpD= ${D:M*\:*}
+.if !empty(_tmpD)
+XSLT.${_ID}= ${D:C,^[^:]*,,:M*\:*:C,^:,,:C,:.*$,,}
+XML.${_ID}= ${D:C,^[^:]*,,:M*\:*:C,^:,,:C,^[^:]*,,:M*\:*:C,^:,,:C,:.*$,,}
+TARGET.${_ID}= ${D:C,^[^:]*,,:M*\:*:C,^:,,:C,^[^:]*,,:M*\:*:C,^:,,:C,^[^:]*,,:M*\:*:C,^:,,:C,:.*$,,}
+.endif
+
+# Use default value if parameter not specified.
+.if !defined(XSLT.${_ID}) || empty(XSLT.${_ID})
+.if defined(XSLT.DEFAULT)
+XSLT.${_ID}= ${XSLT.DEFAULT}
+.else
+XSLT.${_ID}= ${_ID}.xsl
+.endif
+.endif
+.if !defined(XML.${_ID}) || empty(XML.${_ID})
+.if defined(XML.DEFAULT)
+XML.${_ID}= ${XML.DEFAULT}
+.else
+XML.${_ID}= ${_ID}.xml
+.endif
+.endif
+.if !defined(TARGET.${_ID}) || empty(TARGET.${_ID})
+TARGET.${_ID}= ${_ID}.html
+.endif
+.if !defined(DEPENDSET.${_ID}) || empty(DEPENDSET.${_ID})
+.if defined(DEPENDSET.DEFAULT)
+DEPENDSET.${_ID}= ${DEPENDSET.DEFAULT}
+.else
+DEPENDSET.${_ID}=
+.endif
+.endif
+.if !defined(NO_TIDY.${_ID}) || empty(NO_TIDY.${_ID})
+.if defined(NO_TIDY.DEFAULT)
+NO_TIDY.${_ID}= ${NO_TIDY.DEFAULT}
+.else
+NO_TIDY.${_ID}=
+.endif
+.endif
+.if !defined(NO_DATA.${_ID}) || empty(NO_DATA.${_ID})
+.if defined(NO_DATA.DEFAULT)
+NO_DATA.${_ID}= ${NO_DATA.DEFAULT}
+.else
+NO_DATA.${_ID}=
+.endif
+.endif
+
+XSLTPROCOPTS.${_ID}?= ${XSLTPROCOPTS}
+GENDOCS+= ${TARGET.${_ID}}
+SRCS+= ${TARGET.${_ID}}
+.if !defined(NO_DATA.${_ID}) || empty(NO_DATA.${_ID})
+DATA+= ${TARGET.${_ID}}
+.endif
+CLEANFILES+= ${TARGET.${_ID}}
+
+.if ${XSLT.${_ID}} == xsl
+XSLT.${_ID}= ${_ID}.xsl
+DEPENDS.${_ID}+= ${XSLT.${_ID}}
+.elif ${XSLT.${_ID}:Mhttp\://*} != ""
+DEPENDS.${_ID}+= ${XSLT.${_ID}}
+.else
+DEPENDS.${_ID}+= ${XSLT.${_ID}}
+.endif
+
+.for S in ${_DEPENDSET.all}
+. if ${DEPENDSET.${_ID}:M${S}} != ""
+DEPENDS.${_ID}+=${_DEPENDSET.${S}}
+PARAMS.${_ID}+= ${_PARAMS.${S}}
+. endif
+.endfor
+
+.for S in ${SRCS.DEFAULT} ${SRCS.${_ID}}
+DEPENDS.${_ID}+= ${S}
+.endfor
+${TARGET.${_ID}}: ${XML_INCLUDES} ${XML.${_ID}} ${DEPENDS.${_ID}}
+ ${XSLTPROC} ${XSLTPROCOPTS.${_ID}} \
+ -o ${.TARGET} ${PARAMS.${_ID}} \
+ ${XSLT.${_ID}} ${XML.${_ID}}
+. if !defined(NO_TIDY) || empty(NO_TIDY)
+. if !defined(NO_TIDY.${_ID}) || empty(NO_TIDY.${_ID})
+ -${TIDY} ${TIDYOPTS} ${.TARGET}
+. endif
+. endif
+.endfor
+.endfor
Index: doc/en_US.ISO8859-1/books/handbook/Makefile
===================================================================
RCS file: /home/ncvs/doc/en_US.ISO8859-1/books/handbook/Makefile,v
retrieving revision 1.91
diff -d -u -I\$FreeBSD:.*\$ -I\$NetBSD:.*\$ -I\$OpenBSD:.*\$ -I\$DragonFly:.*\$ -I\$Id:.*\$ -I\$Translation:.*\$ -I\$hrs:.*\$ -r1.91 Makefile
--- doc/en_US.ISO8859-1/books/handbook/Makefile 5 Dec 2004 00:14:18 -0000 1.91
+++ doc/en_US.ISO8859-1/books/handbook/Makefile 16 Jul 2005 15:05:53 -0000
@@ -217,41 +217,47 @@
JADEFLAGS+= -V withpgpkeys
.endif
-.for p in ftp cvsup
-SRCS+= mirrors.sgml.${p}.inc
-CLEANFILES+= mirrors.sgml.${p}.inc
-CLEANFILES+= mirrors.sgml.${p}.inc.tmp
-.endfor
-
-SRCS+= eresources.sgml.www.inc
-CLEANFILES+= eresources.sgml.www.inc
-CLEANFILES+= eresources.sgml.www.inc.tmp
-
URL_RELPREFIX?= ../../../..
DOC_PREFIX?= ${.CURDIR}/../../..
+#
+# rules generating lists of mirror site from XML database.
+#
+XMLDOCS= mirrors-ftp:::mirrors.sgml.ftp.inc.tmp \
+ mirrors-cvsup:::mirrors.sgml.cvsup.inc.tmp \
+ eresources:::eresources.sgml.www.inc.tmp
+DEPENDSET.DEFAULT= transtable mirror
+XSLT.DEFAULT= ${XSL_MIRRORS}
+XML.DEFAULT= ${XML_MIRRORS}
+NO_TIDY.DEFAULT= yes
+
+PARAMS.mirrors-ftp+= --param 'type' "'ftp'" \
+ --param 'proto' "'ftp'" \
+ --param 'target' "'handbook/mirrors/chapter.sgml'"
+PARAMS.mirrors-cvsup+= --param 'type' "'cvsup'" \
+ --param 'proto' "'cvsup'" \
+ --param 'target' "'handbook/mirrors/chapter.sgml'"
+PARAMS.eresources+= --param 'type' "'www'" \
+ --param 'proto' "'http'" \
+ --param 'target' "'handbook/eresources/chapter.sgml'"
+
+SRCS+= mirrors.sgml.ftp.inc \
+ mirrors.sgml.cvsup.inc \
+ eresources.sgml.www.inc
+CLEANFILES+= mirrors.sgml.ftp.inc \
+ mirrors.sgml.cvsup.inc \
+ eresources.sgml.www.inc
+
.include "${DOC_PREFIX}/share/mk/doc.project.mk"
.for p in ftp cvsup
-mirrors.sgml.${p}.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- -o $@.tmp \
- --param 'type' "'$p'" \
- --param 'proto' "'$p'" \
- --param 'target' "'handbook/mirrors/chapter.sgml'" \
- ${XSL_MIRRORS} ${XML_MIRRORS}
+mirrors.sgml.${p}.inc: mirrors.sgml.${p}.inc.tmp
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2></\1>,;s,</anchor>,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
${RM} -f $@.tmp
.endfor
-eresources.sgml.www.inc: ${XML_MIRRORS} ${XSL_MIRRORS}
- ${XSLTPROC} ${XSLTPROCOPTS} \
- -o $@.tmp \
- --param 'type' "'www'" \
- --param 'proto' "'http'" \
- --param 'target' "'handbook/eresources/chapter.sgml'" \
- ${XSL_MIRRORS} ${XML_MIRRORS}
+eresources.sgml.www.inc: eresources.sgml.www.inc.tmp
${SED} -e 's,<\([^ >]*\)\([^>]*\)/>,<\1\2></\1>,;s,</anchor>,,'\
< $@.tmp > $@ || (${RM} -f $@ && false)
${RM} -f $@.tmp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-doc/attachments/20050717/a12369ed/attachment.sig>
More information about the freebsd-doc
mailing list