Bug 31131 - build/install doc isn't /usr/obj prefix clean
Summary: build/install doc isn't /usr/obj prefix clean
Status: Closed FIXED
Alias: None
Product: Documentation
Classification: Unclassified
Component: Books & Articles (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-doc (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2001-10-08 12:20 UTC by clefevre
Modified: 2001-10-29 09:25 UTC (History)
0 users

See Also:


Attachments
file.diff (31.42 KB, patch)
2001-10-08 12:20 UTC, clefevre
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description clefevre 2001-10-08 12:20:06 UTC
	build/install doc isn't /usr/obj prefix clean.

	this set of patches fix this problem.

	also, all commands have been replaced by variables, long
	lines have been wrapped, unneeded subshells have been deleted,
	shell for loops have been replaced by make for loops, etc.

How-To-Repeat: 	cd /usr/doc; make obj; make; make install
Comment 1 clefevre 2001-10-08 21:12:39 UTC
also, this PR supersede PR #28306 which is wrong in the sense where
docbook.css should be created in OBJDIR and not in CURDIR.

Cyrille.
-- 
Cyrille Lefevre                 mailto:clefevre@citeweb.net
Comment 2 clefevre 2001-10-09 04:54:22 UTC
well, when I tested this patch, the FORMATS variable contains only
a subset of the KNOWN_FORMATS varaible. so, I made some new corrections
to the doc Makefiles to be more objdir clean than ever. here is a
complement to the previous patch set.

PS : I have to make a new test using INSTALL_COMPRESSED=gz since I
default it to nothing, but since this take a very long time on my
computer (I've only a P166), I'll post more corrections later if any.

Common subdirectories: /tmp/doc/share/mk/CVS and doc/share/mk/CVS
diff -u /tmp/doc/share/mk/doc.docbook.mk doc/share/mk/doc.docbook.mk
--- /tmp/doc/share/mk/doc.docbook.mk	Tue Oct  9 05:41:17 2001
+++ doc/share/mk/doc.docbook.mk	Tue Oct  9 05:35:32 2001
@@ -323,6 +323,7 @@
 CLEANFILES+= 		${HTML_SPLIT_INDEX} ${HTML_INDEX} ${PRINT_INDEX}
 .endif
 
+LOCAL_IMAGES_LIB ?=
 .for _curimage in ${IMAGES_LIB} 
 LOCAL_IMAGES_LIB += ${LOCAL_IMAGES_LIB_DIR}/${_curimage} 
 .endfor 
@@ -359,14 +360,22 @@
 
 ${DOC}.html-split.tar: HTML.manifest
 	${TAR} cf ${.TARGET} $$(${XARGS} < HTML.manifest)
+.if !empty(IMAGES_LIB)
 	${TAR} uf ${.TARGET} ${IMAGES_LIB}
+.endif
+.if !empty(IMAGES_PNG)
 	${TAR} uf ${.TARGET} ${IMAGES_PNG}
+.endif
 	${TAR} uf ${.TARGET} docbook.css
 
 ${DOC}.html.tar: ${DOC}.html
 	${TAR} cf ${.TARGET} ${DOC}.html
+.if !empty(LOCAL_IMAGES_LIB)
 	${TAR} uf ${.TARGET} ${LOCAL_IMAGES_LIB}
+.endif
+.if !empty(IMAGES_PNG)
 	${TAR} uf ${.TARGET} ${IMAGES_PNG}
+.endif
 	${TAR} uf ${.TARGET} docbook.css
 
 ${DOC}.txt: ${DOC}.html-text
@@ -376,7 +385,7 @@
 	${HTML2PDB} ${HTML2PDBFLAGS} ${.ALLSRC} ${.TARGET}
 
 ${.CURDIR:T}.pdb: ${DOC}.pdb
-	${LN} -f ${DOC}.pdb ${.CURDIR}.pdb
+	${LN} -f ${DOC}.pdb ${.CURDIR:T}.pdb
 
 ${DOC}.rtf: ${SRCS}
 	${JADE} -V rtf-backend ${PRINTOPTS} ${JADEOPTS} \
@@ -418,7 +427,7 @@
 	${DVIPS} -o ${.TARGET} ${.ALLSRC}
 
 ${DOC}.tar: ${SRCS}
-	${TAR} cf ${.TARGET} ${.ALLSRC}
+	${TAR} cf ${.TARGET} -C ${.CURDIR} ${.ALLSRC:S|${.CURDIR}/||}
 
 # ------------------------------------------------------------------------
 #
diff -u /tmp/doc/share/mk/doc.html.mk doc/share/mk/doc.html.mk
--- /tmp/doc/share/mk/doc.html.mk	Tue Oct  9 05:41:17 2001
+++ doc/share/mk/doc.html.mk	Tue Oct  9 05:34:35 2001
@@ -145,10 +145,10 @@
 	${HTML2PDB} ${HTML2PDBFLAGS} ${.ALLSRC} ${.TARGET}
 
 ${.CURDIR:T}.pdb: ${DOC}.pdb
-	${LN} -f ${DOC}.pdb ${.CURDIR}.pdb
+	${LN} -f ${DOC}.pdb ${.CURDIR:T}.pdb
 
 ${DOC}.tar: ${SRCS}
-	${TAR} cf ${.TARGET} ${.ALLSRC}
+	${TAR} cf ${.TARGET} -C ${.CURDIR} ${.ALLSRC:S|${.CURDIR}/||}
 
 #
 # Build targets for any formats we've missed that we don't handle.
diff -u /tmp/doc/share/mk/doc.images.mk doc/share/mk/doc.images.mk
--- /tmp/doc/share/mk/doc.images.mk	Tue Oct  9 05:41:17 2001
+++ doc/share/mk/doc.images.mk	Tue Oct  9 05:38:15 2001
@@ -73,7 +73,7 @@
 PNGTOPNM?=	${PREFIX}/bin/pngtopnm
 PNMTOPS?=	${PREFIX}/bin/pnmtops
 PNMTOPSFLAGS?=	-noturn
-EPS2PDF?=	${PREFIX}/bin/epstopdf
+EPSTOPDF?=	${PREFIX}/bin/epstopdf
 
 # Use suffix rules to convert .scr files to .png files
 .SUFFIXES:	.scr .png .eps

Cyrille.
-- 
Cyrille Lefevre                 mailto:clefevre@citeweb.net
Comment 3 clefevre 2001-10-18 15:45:28 UTC
this patch set is a complement to both posted before.

from /usr/doc, the first patch set should be applyed using patch,
the second one using patch -p1 and this one using patch -p2.
sorry for the convenient. if you prefer, I could submit one
containing all all of them.

many thing have been factorized (no need to repeat things) such as
JADE calls (using HTMLOPTS var), install-* and packages-* targets.
generated packages are more complete (w/ images and/or style sheet
when needed).  a PLIST file is generated for each one which avoid
rebuilding all of them.

they are still some work to do such as getting rid of those .if tests
in install-* and packages-* targets. much better would be to use
SOME_VARIABLE_${curformat} which contains all the needed files.

.ps and .pdf files aren't well tested since I'm missing some space
to generate all off them... do you see what I mean ;^)

diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/en_US.ISO8859-1/books/handbook/Makefile new/doc/en_US.ISO8859-1/books/handbook/Makefile
--- old/doc/en_US.ISO8859-1/books/handbook/Makefile	Thu Oct 18 16:32:47 2001
+++ new/doc/en_US.ISO8859-1/books/handbook/Makefile	Thu Oct 18 16:18:28 2001
@@ -96,6 +96,13 @@
 IMAGES+= install/disk-layout.eps
 IMAGES+= install/edit-inetd-conf.scr
 
+# Images from the cross-document image library
+IMAGES_LIB=  callouts/1.png
+IMAGES_LIB+= callouts/2.png
+IMAGES_LIB+= callouts/3.png
+IMAGES_LIB+= callouts/4.png
+IMAGES_LIB+= callouts/5.png
+
 # 
 # SRCS lists the individual SGML files that make up the document. Changes
 # to any of these files will force a rebuild
diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/share/mk/doc.docbook.mk new/doc/share/mk/doc.docbook.mk
--- old/doc/share/mk/doc.docbook.mk	Thu Oct 18 16:32:51 2001
+++ new/doc/share/mk/doc.docbook.mk	Thu Oct 18 16:32:24 2001
@@ -132,8 +132,11 @@
 		txt rtf ps pdf tex dvi tar pdb
 
 CSS_SHEET?=	${DOC_PREFIX}/share/misc/docbook.css
+PDFTEX_DEF?=	${DOC_PREFIX}/share/web2c/pdftex.def
 
-PRINTOPTS?=    -ioutput.print
+HTMLOPTS?=	-ioutput.html -d ${DSLHTML} ${HTMLFLAGS}
+
+PRINTOPTS?=	-ioutput.print -d ${DSLPRINT} ${PRINTFLAGS}
 
 .if defined(BOOK_OUTPUT)
 NICE_HEADERS=1
@@ -163,6 +166,7 @@
 
 PERL?=		/usr/bin/perl
 PKG_CREATE?=	/usr/sbin/pkg_create
+SORT?=		/usr/bin/sort
 TAR?=		/usr/bin/tar
 TOUCH?=		/usr/bin/touch
 XARGS?=		/usr/bin/xargs
@@ -236,56 +240,48 @@
 _docs+= index.html HTML.manifest ln*.html
 CLEANFILES+= $$([ -f HTML.manifest ] && ${XARGS} < HTML.manifest) \
 		HTML.manifest ln*.html
-CLEANFILES+= docbook.css
+CLEANFILES+= PLIST.${_curformat}
+CLEANFILES+= ${LOCAL_CSS_SHEET}
+
+.else
+_docs+= ${DOC}.${_curformat}
+CLEANFILES+= ${DOC}.${_curformat}
+CLEANFILES+= PLIST.${_curformat}
 
-.elif ${_cf} == "html-split.tar"
-_docs+= ${DOC}.html-split.tar
+.if ${_cf} == "html-split.tar"
 CLEANFILES+= $$([ -f HTML.manifest ] && ${XARGS} < HTML.manifest) \
 		HTML.manifest ln*.html
-CLEANFILES+= ${DOC}.html-split.tar
-CLEANFILES+= docbook.css
+CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .elif ${_cf} == "html"
-_docs+= ${DOC}.html
-CLEANFILES+= ${DOC}.html
-CLEANFILES+= docbook.css
+CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .elif ${_cf} == "html.tar"
-_docs+= ${DOC}.html.tar
-CLEANFILES+= ${DOC}.html ${DOC}.html.tar
-CLEANFILES+= docbook.css
+CLEANFILES+= ${DOC}.html
+CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .elif ${_cf} == "txt"
-_docs+= ${DOC}.txt
-CLEANFILES+= ${DOC}.html ${DOC}.txt ${DOC}.html-text
-CLEANFILES+= docbook.css
+CLEANFILES+= ${DOC}.html ${DOC}.html-text
+CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .elif ${_cf} == "dvi"
-_docs+= ${DOC}.dvi
-CLEANFILES+= ${DOC}.aux ${DOC}.dvi ${DOC}.log ${DOC}.tex
+CLEANFILES+= ${DOC}.aux ${DOC}.log ${DOC}.tex
+
+.elif ${_cf} == "tex"
+CLEANFILES+= ${DOC}.aux ${DOC}.log
 
 .elif ${_cf} == "ps"
-_docs+= ${DOC}.ps
-CLEANFILES+= ${DOC}.aux ${DOC}.dvi ${DOC}.log ${DOC}.tex-ps ${DOC}.ps
+CLEANFILES+= ${DOC}.aux ${DOC}.dvi ${DOC}.log ${DOC}.tex-ps
 
 .elif ${_cf} == "pdf"
-_docs+= ${DOC}.pdf
-CLEANFILES+= ${DOC}.aux ${DOC}.dvi ${DOC}.log ${DOC}.out \
-		${DOC}.tex-pdf ${DOC}.pdf
-
-.elif ${_cf} == "rtf"
-_docs+= ${DOC}.rtf
-CLEANFILES+= ${DOC}.rtf
-
-.elif ${_cf} == "tar"
-_docs+= ${DOC}.tar
-CLEANFILES+= ${DOC}.tar
+CLEANFILES+= ${DOC}.aux ${DOC}.dvi ${DOC}.log ${DOC}.out ${DOC}.tex-pdf
 
 .elif ${_cf} == "pdb"
-_docs+= ${DOC}.pdb ${.CURDIR:T}.pdb
-CLEANFILES+= ${DOC}.pdb ${.CURDIR:T}.pdb
+_docs+= ${.CURDIR:T}.pdb
+CLEANFILES+= ${.CURDIR:T}.pdb
 
 .endif
+.endif
 .endfor
 
 
@@ -300,10 +296,17 @@
 .for _curformat in ${FORMATS}
 _cf=${_curformat}
 .for _curcomp in ${INSTALL_COMPRESSED}
+
 .if ${_cf} != "html-split" && ${_cf} != "html"
 _curinst+= install-${_curformat}.${_curcomp}
 _docs+= ${DOC}.${_curformat}.${_curcomp}
 CLEANFILES+= ${DOC}.${_curformat}.${_curcomp}
+
+.if  ${_cf} == "pdb"
+_docs+= ${.CURDIR:T}.${_curformat}.${_curcomp}
+CLEANFILES+= ${.CURDIR:T}.${_curformat}.${_curcomp}
+
+.endif
 .endif
 .endfor
 .endfor
@@ -324,29 +327,28 @@
 CLEANFILES+= 		${HTML_SPLIT_INDEX} ${HTML_INDEX} ${PRINT_INDEX}
 .endif
 
-LOCAL_IMAGES_LIB ?=
-.for _curimage in ${IMAGES_LIB} 
-LOCAL_IMAGES_LIB += ${LOCAL_IMAGES_LIB_DIR}/${_curimage} 
-.endfor 
+.if ${.OBJDIR} != ${.CURDIR}
+LOCAL_CSS_SHEET= ${.OBJDIR}/${CSS_SHEET:T}
+.else
+LOCAL_CSS_SHEET= ${CSS_SHEET:T}
+.endif
 
 .MAIN: all
 
 all: ${_docs}
 
-index.html HTML.manifest: ${SRCS} ${LOCAL_IMAGES_LIB} ${IMAGES_PNG} \
-			  ${INDEX_SGML} ${HTML_SPLIT_INDEX} docbook.css
-	${JADE} -V html-manifest \
-		-ioutput.html -ioutput.html.images ${JADEOPTS} \
-		-d ${DSLHTML} -t sgml ${MASTERDOC}
+index.html HTML.manifest: ${SRCS} ${LOCAL_IMAGES_LIB} ${LOCAL_IMAGES_PNG} \
+			  ${INDEX_SGML} ${HTML_SPLIT_INDEX} ${LOCAL_CSS_SHEET}
+	${JADE} -V html-manifest ${HTMLOPTS} -ioutput.html.images \
+		${JADEOPTS} -t sgml ${MASTERDOC}
 .if !defined(NO_TIDY)
 	-${TIDY} ${TIDYFLAGS} $$(${XARGS} < HTML.manifest)
 .endif
 
-${DOC}.html: ${SRCS} ${LOCAL_IMAGES_LIB} ${IMAGES_PNG} \
-	     ${INDEX_SGML} ${HTML_INDEX} docbook.css
-	${JADE} -V nochunks \
-		-ioutput.html -ioutput.html.images ${JADEOPTS} \
-		-d ${DSLHTML} -t sgml ${MASTERDOC} > ${.TARGET} || \
+${DOC}.html: ${SRCS} ${LOCAL_IMAGES_LIB} ${LOCAL_IMAGES_PNG} \
+	     ${INDEX_SGML} ${HTML_INDEX} ${LOCAL_CSS_SHEET}
+	${JADE} -V nochunks ${HTMLOPTS} -ioutput.html.images \
+		${JADEOPTS} -t sgml ${MASTERDOC} > ${.TARGET} || \
 		(${RM} -f ${.TARGET} && false)
 .if !defined(NO_TIDY)
 	-${TIDY} ${TIDYFLAGS} ${.TARGET}
@@ -354,43 +356,39 @@
 
 # Special target to produce HTML with no images in it.
 ${DOC}.html-text: ${SRCS} ${INDEX_SGML} ${HTML_INDEX}
-	${JADE} -V nochunks \
-		-ioutput.html ${JADEOPTS} \
-		-d ${DSLHTML} -t sgml ${MASTERDOC} > ${.TARGET} || \
+	${JADE} -V nochunks ${HTMLOPTS} \
+		${JADEOPTS} -t sgml ${MASTERDOC} > ${.TARGET} || \
 		(${RM} -f ${.TARGET} && false)
 
-${DOC}.html-split.tar: HTML.manifest
-	${TAR} cf ${.TARGET} $$(${XARGS} < HTML.manifest)
-.if !empty(IMAGES_LIB)
-	${TAR} uf ${.TARGET} ${IMAGES_LIB}
-.endif
-.if !empty(IMAGES_PNG)
-	${TAR} uf ${.TARGET} ${IMAGES_PNG}
-.endif
-	${TAR} uf ${.TARGET} docbook.css
-
-${DOC}.html.tar: ${DOC}.html
-	${TAR} cf ${.TARGET} ${DOC}.html
-.if !empty(LOCAL_IMAGES_LIB)
-	${TAR} uf ${.TARGET} ${LOCAL_IMAGES_LIB}
-.endif
-.if !empty(IMAGES_PNG)
-	${TAR} uf ${.TARGET} ${IMAGES_PNG}
-.endif
-	${TAR} uf ${.TARGET} docbook.css
+${DOC}.html-split.tar: HTML.manifest ${LOCAL_IMAGES_LIB} \
+		       ${LOCAL_IMAGES_PNG} ${LOCAL_CSS_SHEET}
+	${TAR} cf ${.TARGET} $$(${XARGS} < HTML.manifest) \
+		${LOCAL_IMAGES_LIB} ${IMAGES_PNG} ${CSS_SHEET:T}
+
+${DOC}.html.tar: ${DOC}.html ${LOCAL_IMAGES_LIB} \
+		 ${LOCAL_IMAGES_PNG} ${LOCAL_CSS_SHEET}
+	${TAR} cf ${.TARGET} ${DOC}.html \
+		${LOCAL_IMAGES_LIB} ${IMAGES_PNG} ${CSS_SHEET:T}
 
 ${DOC}.txt: ${DOC}.html-text
 	${HTML2TXT} ${HTML2TXTFLAGS} ${.ALLSRC} > ${.TARGET}
 
-${DOC}.pdb: ${DOC}.html
-	${HTML2PDB} ${HTML2PDBFLAGS} ${.ALLSRC} ${.TARGET}
+${DOC}.pdb: ${DOC}.html ${LOCAL_IMAGES_LIB} ${LOCAL_IMAGES_PNG}
+	${HTML2PDB} ${HTML2PDBFLAGS} ${DOC}.html ${.TARGET}
 
 ${.CURDIR:T}.pdb: ${DOC}.pdb
-	${LN} -f ${DOC}.pdb ${.CURDIR:T}.pdb
+	${LN} -f ${.ALLSRC} ${.TARGET}
+
+.if defined(INSTALL_COMPRESSED) && !empty(INSTALL_COMPRESSED)
+.for _curcomp in ${INSTALL_COMPRESSED}
+${.CURDIR:T}.pdb.${_curcomp}: ${DOC}.pdb.${_curcomp}
+	${LN} -f ${.ALLSRC} ${.TARGET}
+.endfor
+.endif
 
-${DOC}.rtf: ${SRCS}
-	${JADE} -V rtf-backend ${PRINTOPTS} ${JADEOPTS} \
-		-d ${DSLPRINT} -t rtf -o ${.TARGET} ${MASTERDOC}
+${DOC}.rtf: ${SRCS} ${LOCAL_IMAGES_EPS}
+	${JADE} -V rtf-backend ${PRINTOPTS} \
+		${JADEOPTS} -t rtf -o ${.TARGET} ${MASTERDOC}
 
 #
 # This sucks, but there's no way round it.  The PS and PDF formats need
@@ -399,36 +397,51 @@
 # format, which will then lead on to a different .dvi file as well.
 #
 
-${DOC}.tex-ps: ${SRCS} ${IMAGES_EPS} ${INDEX_SGML} ${PRINT_INDEX}
-	${JADE} -V tex-backend ${PRINTOPTS} ${JADEOPTS} \
-		-d ${DSLPRINT} -t tex -o ${.TARGET} ${MASTERDOC}
+${DOC}.tex: ${SRCS} ${LOCAL_IMAGES_EPS} ${INDEX_SGML} ${PRINT_INDEX}
+	${JADE} -V tex-backend ${PRINTOPTS} \
+		${JADEOPTS} -t tex -o ${.TARGET} ${MASTERDOC}
+
+${DOC}.tex-ps: ${DOC}.tex
+	${LN} -f ${.ALLSRC} ${.TARGET}
 
 ${DOC}.tex-pdf: ${SRCS} ${IMAGES_PDF} ${INDEX_SGML} ${PRINT_INDEX}
-	${CP} ${DOC_PREFIX}/share/web2c/pdftex.def ${.TARGET}
-	${JADE} -V tex-backend ${PRINTOPTS} -ioutput.print.pdf ${JADEOPTS} \
-		-d ${DSLPRINT} -t tex -o /dev/stdout ${MASTERDOC} >> ${.TARGET}
+	${CP} -p ${PDFTEX_DEF} ${.TARGET}
+	${JADE} -V tex-backend ${PRINTOPTS} -ioutput.print.pdf \
+		${JADEOPTS} -t tex -o /dev/stdout ${MASTERDOC} >> ${.TARGET}
 
-${DOC}.dvi: ${DOC}.tex-ps
+${DOC}.dvi: ${DOC}.tex ${LOCAL_IMAGES_EPS}
 	@${ECHO} "==> TeX pass 1/3"
-	-${TEX} "&jadetex" '${TEXCMDS} \nonstopmode\input{${.ALLSRC}}'
+	-${TEX} "&jadetex" '${TEXCMDS} \nonstopmode\input{${DOC}.tex}'
 	@${ECHO} "==> TeX pass 2/3"
-	-${TEX} "&jadetex" '${TEXCMDS} \nonstopmode\input{${.ALLSRC}}'
+	-${TEX} "&jadetex" '${TEXCMDS} \nonstopmode\input{${DOC}.tex}'
 	@${ECHO} "==> TeX pass 3/3"
-	-${TEX} "&jadetex" '${TEXCMDS} \nonstopmode\input{${.ALLSRC}}'
+	-${TEX} "&jadetex" '${TEXCMDS} \nonstopmode\input{${DOC}.tex}'
 
-${DOC}.pdf: ${DOC}.tex-pdf
+${DOC}.pdf: ${DOC}.tex-pdf ${IMAGES_PDF}
 	@${ECHO} "==> PDFTeX pass 1/3"
-	-${PDFTEX} "&pdfjadetex" '\nonstopmode\input{${.ALLSRC}}'
+	-${PDFTEX} "&pdfjadetex" '\nonstopmode\input{${DOC}.dvi}'
 	@${ECHO} "==> PDFTeX pass 2/3"
-	-${PDFTEX} "&pdfjadetex" '\nonstopmode\input{${.ALLSRC}}'
+	-${PDFTEX} "&pdfjadetex" '\nonstopmode\input{${DOC}.dvi}'
 	@${ECHO} "==> PDFTeX pass 3/3"
-	${PDFTEX} "&pdfjadetex" '\nonstopmode\input{${.ALLSRC}}'
+	${PDFTEX} "&pdfjadetex" '\nonstopmode\input{${DOC}.dvi}'
 
 ${DOC}.ps: ${DOC}.dvi
 	${DVIPS} -o ${.TARGET} ${.ALLSRC}
 
-${DOC}.tar: ${SRCS}
-	${TAR} cf ${.TARGET} -C ${.CURDIR} ${.ALLSRC:S|${.CURDIR}/||}
+${DOC}.tar: ${SRCS} ${LOCAL_IMAGES} ${LOCAL_CSS_SHEET}
+	${TAR} cf ${.TARGET} -C ${.CURDIR} ${SRCS} \
+		-C ${.OBJDIR} ${IMAGES} ${CSS_SHEET:T}
+
+#
+# Build targets for any formats we've missed that we don't handle.
+#
+.for _curformat in ${ALL_FORMATS}
+.if !target(${DOC}.${_curformat})
+${DOC}.${_curformat}:
+	@${ECHO_CMD} \"${_curformat}\" is not a valid output format for this document.
+.endif
+.endfor
+
 
 # ------------------------------------------------------------------------
 #
@@ -443,6 +456,7 @@
 lint validate:
 	${NSGMLS} -s ${SGMLFLAGS} ${CATALOGS} ${MASTERDOC}
 
+
 # ------------------------------------------------------------------------
 #
 # Index targets
@@ -464,19 +478,18 @@
 .endif
 
 ${HTML_INDEX}:
-	${JADE} -V html-index -V nochunks \
-		-ioutput.html -ioutput.html.images ${JADEOPTS} \
-		-d ${DSLHTML} -t sgml ${MASTERDOC} > /dev/null
+	${JADE} -V html-index -V nochunks ${HTMLOPTS} -ioutput.html.images \
+		${JADEOPTS} -t sgml ${MASTERDOC} > /dev/null
 	${PERL} ${COLLATEINDEX} -g -o ${INDEX_SGML} ${.TARGET}
 
 ${HTML_SPLIT_INDEX}:
-	${JADE} -V html-index \
-		-ioutput.html -ioutput.html.images ${JADEOPTS} \
-		-d ${DSLHTML} -t sgml ${MASTERDOC} > /dev/null
+	${JADE} -V html-index ${HTMLOPTS} -ioutput.html.images \
+		${JADEOPTS} -t sgml ${MASTERDOC} > /dev/null
 	${PERL} ${COLLATEINDEX} -g -o ${INDEX_SGML} ${.TARGET}
 
 ${PRINT_INDEX}: ${HTML_INDEX}
-	${MV} ${HTML_INDEX} ${.TARGET}
+	${CP} -p ${HTML_INDEX} ${.TARGET}
+
 
 # ------------------------------------------------------------------------
 #
@@ -499,10 +512,10 @@
 #
 
 _PROG_COMPRESS_gz: .USE
-	${GZIP_CMD} ${.ALLSRC} > ${.TARGET}
+	${GZIP_CMD} < ${.ALLSRC} > ${.TARGET}
 
 _PROG_COMPRESS_bz2: .USE
-	${BZIP2_CMD} ${.ALLSRC} > ${.TARGET}
+	${BZIP2_CMD} < ${.ALLSRC} > ${.TARGET}
 
 _PROG_COMPRESS_zip: .USE
 	${ZIP_CMD} ${.TARGET} ${.ALLSRC}
@@ -524,6 +537,19 @@
 .endfor
 .endfor
 
+#
+# Build targets for any formats we've missed that we don't handle.
+#
+.for _curformat in ${ALL_FORMATS}
+.for _curcompress in ${KNOWN_COMPRESS}
+.if !target(${DOC}.${_curformat}.${_curcompress})
+${DOC}.${_curformat}.${_curcompress}:
+	@${ECHO_CMD} \"${_curformat}.${_curcompress}\" is not a valid output format for this document.
+.endif
+.endfor
+.endfor
+
+
 # ------------------------------------------------------------------------
 #
 # Install targets
@@ -559,16 +585,26 @@
 _cf=${_curformat}
 .if !target(install-${_cf})
 .if ${_cf} == "html-split"
-install-${_cf}: index.html
+install-${_curformat}: index.html
+.else
+install-${_curformat}: ${DOC}.${_curformat}
+.endif
 	@[ -d ${DESTDIR} ] || ${MKDIR} -p ${DESTDIR}
+.if ${_cf} == "html-split"
 	${INSTALL_DOCS} $$(${XARGS} < HTML.manifest) ${DESTDIR}
-	${INSTALL_DOCS} docbook.css ${DESTDIR}
+.else
+	${INSTALL_DOCS} ${.ALLSRC} ${DESTDIR}
+.endif
+.if (${_cf} == "html-split" || ${_cf} == "html") && !empty(LOCAL_CSS_SHEET)
+	${INSTALL_DOCS} ${LOCAL_CSS_SHEET} ${DESTDIR}
+.if ${_cf} == "html-split"
 	@if [ -f ln*.html ]; then \
 		${INSTALL_DOCS} ln*.html ${DESTDIR}; \
 	fi
 	@if [ -f ${.OBJDIR}/${DOC}.ln ]; then \
-		(cd ${DESTDIR}; sh ${.OBJDIR}/${DOC}.ln); \
+		cd ${DESTDIR}; sh ${.OBJDIR}/${DOC}.ln; \
 	fi
+.endif
 .for _curimage in ${IMAGES_LIB}
 	@[ -d ${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H} ] || \
 		${MKDIR} -p ${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H}
@@ -586,47 +622,55 @@
 .for _curimage in ${IMAGES_PNG:N*/*}
 	${INSTALL_DOCS} ${_curimage} ${DESTDIR}
 .endfor
-.for _compressext in ${KNOWN_COMPRESS}
-install-${_cf}.tar.${_compressext}: ${DOC}.${_cf}.tar.${_compressext}
-	@[ -d ${DESTDIR} ] || ${MKDIR} -p ${DESTDIR}
-	${INSTALL_DOCS} ${.ALLSRC} ${DESTDIR}
-.endfor
-.elif ${_cf} == "html"
-install-${_cf}: ${DOC}.${_cf}
-	@[ -d ${DESTDIR} ] || ${MKDIR} -p ${DESTDIR}
-	${INSTALL_DOCS} ${.ALLSRC} ${DESTDIR}
-	${INSTALL_DOCS} docbook.css ${DESTDIR}
-.for _curimage in ${IMAGES_LIB}
-	@[ -d ${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H} ] || \
-		${MKDIR} -p ${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H}
-	${INSTALL_DOCS} ${LOCAL_IMAGES_LIB_DIR}/${_curimage} \
-			${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H}
-.endfor
-# Install the images.  First, loop over all the image names that contain a
-# directory seperator, make the subdirectories, and install.  Then loop over
-# the ones that don't contain a directory separator, and install them in the
-# top level.
-.for _curimage in ${IMAGES_PNG:M*/*}
+.elif ${_cf} == "tex" || ${_cf} == "dvi"
+.for _curimage in ${IMAGES_EPS:M*/*}
 	${MKDIR} -p ${DESTDIR}/${_curimage:H}
 	${INSTALL_DOCS} ${_curimage} ${DESTDIR}/${_curimage:H}
 .endfor
-.for _curimage in ${IMAGES_PNG:N*/*}
+.for _curimage in ${IMAGES_EPS:N*/*}
 	${INSTALL_DOCS} ${_curimage} ${DESTDIR}
 .endfor
-.else
-install-${_cf}: ${DOC}.${_cf}
+.elif ${_cf} == "pdb"
+	${LN} -f ${DESTDIR}/${.ALLSRC} ${DESTDIR}/${.CURDIR:T}.${_curformat}
+.endif
+
+.if ${_cf} == "html-split"
+.for _compressext in ${KNOWN_COMPRESS}
+install-${_curformat}.tar.${_compressext}: ${DOC}.${_curformat}.tar.${_compressext}
 	@[ -d ${DESTDIR} ] || ${MKDIR} -p ${DESTDIR}
 	${INSTALL_DOCS} ${.ALLSRC} ${DESTDIR}
-
+.endfor
+.else
 .for _compressext in ${KNOWN_COMPRESS}
-install-${_cf}.${_compressext}: ${DOC}.${_cf}.${_compressext}
+install-${_curformat}.${_compressext}: ${DOC}.${_curformat}.${_compressext}
 	@[ -d ${DESTDIR} ] || ${MKDIR} -p ${DESTDIR}
 	${INSTALL_DOCS} ${.ALLSRC} ${DESTDIR}
+.if ${_cf} == "pdb"
+	${LN} -f ${DESTDIR}/${.ALLSRC} \
+		 ${DESTDIR}/${.CURDIR:T}.${_curformat}.${_compressext}
+.endif
 .endfor
 .endif
 .endif
 .endfor
 
+#
+# Build install- targets for any formats we've missed that we don't handle.
+#
+
+.for _curformat in ${ALL_FORMATS}
+.if !target(install-${_curformat})
+install-${_curformat}:
+	@${ECHO_CMD} \"${_curformat}\" is not a valid output format for this document.
+
+.for _compressext in ${KNOWN_COMPRESS}
+install-${_curformat}.${_compressext}:
+	@${ECHO_CMD} \"${_curformat}.${_compressext}\" is not a valid output format for this document.
+.endfor
+.endif
+.endfor
+
+
 # ------------------------------------------------------------------------
 #
 # Package building
@@ -653,22 +697,29 @@
 .for _curformat in ${KNOWN_FORMATS}
 _cf=${_curformat}
 .if ${_cf} == "html-split"
-package-${_curformat}: index.html
-	@${CP} HTML.manifest PLIST
-	@${ECHO_CMD} ${IMAGES_PNG} docbook.css | ${XARGS} -n1 >> PLIST
-.elif ${_cf} == "html"
-package-${curformat}: ${DOC}.html
-	@${ECHO_CMD} ${DOC}.${_curformat} ${IMAGES_PNG} docbook.css | \
-		${XARGS} -n1 > PLIST
+PLIST.${_curformat}: index.html
+	@${SORT} HTML.manifest > PLIST.${_curformat}
 .else
-package-${_curformat}: ${DOC}.${_curformat}
-	@${ECHO_CMD} ${DOC}.${_curformat} ${IMAGES_LIB} | ${XARGS} -n1 > PLIST
+PLIST.${_curformat}: ${DOC}.${_curformat}
+	@${ECHO_CMD} ${DOC}.${_curformat} > PLIST.${_curformat}
+.endif
+.if (${_cf} == "html-split" || ${_cf} == "html") && \
+    (!empty(LOCAL_IMAGES_LIB) || !empty(IMAGES_PNG) || !empty(CSS_SHEET))
+	@${ECHO_CMD} ${LOCAL_IMAGES_LIB} ${IMAGES_PNG} ${LOCAL_CSS_SHEET} | \
+		${XARGS} -n1 >> PLIST.${_curformat}
+.elif (${_cf} == "tex" || ${_cf} == "dvi") && !empty(IMAGES_EPS)
+	@${ECHO_CMD} ${IMAGES_EPS} | ${XARGS} -n1 >> PLIST.${_curformat}
+.elif ${_cf} == "pdb"
+	@${ECHO_CMD} ${.CURDIR:T}.${_curformat} >> PLIST.${_curformat}
 .endif
-	@${PKG_CREATE} -v -f PLIST -p ${DESTDIR} -s . \
+
+${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz: PLIST.${_cf}
+	@${PKG_CREATE} -v -f ${.ALLSRC} -p ${DESTDIR} -s ${.OBJDIR} \
 		-c -"FDP ${.CURDIR:T} ${_curformat} package" \
-		-d -"FDP ${.CURDIR:T} ${_curformat} package" \
-		${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz
+		-d -"FDP ${.CURDIR:T} ${_curformat} package" ${.TARGET}
+
+package-${_curformat}: ${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz
 .endfor
 
-docbook.css: ${CSS_SHEET}
-	${CP} ${CSS_SHEET} ${.TARGET}
+${LOCAL_CSS_SHEET}: ${CSS_SHEET}
+	${CP} -p ${.ALLSRC} ${.TARGET}
diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/share/mk/doc.html.mk new/doc/share/mk/doc.html.mk
--- old/doc/share/mk/doc.html.mk	Thu Oct 18 16:32:51 2001
+++ new/doc/share/mk/doc.html.mk	Thu Oct 18 16:18:29 2001
@@ -65,6 +65,7 @@
  
 PKG_CREATE?=	/usr/sbin/pkg_create
 TAR?=		/usr/bin/tar
+XARGS?=		/usr/bin/xargs
 
 TIDY?=		${PREFIX}/bin/tidy
 TIDYFLAGS?=	-i -m -f /dev/null
@@ -80,27 +81,30 @@
 ZIP?=	-9
 ZIP_CMD?=	${PREFIX}/bin/zip -j ${ZIP}
 
+
 # ------------------------------------------------------------------------
 #
 
 .for _curformat in ${FORMATS}
 _cf=${_curformat}
-.if ${_cf} == "html"
-_docs+= ${DOC}.html
-CLEANFILES+= ${DOC}.html
-.elif ${_cf} == "txt"
-_docs+= ${DOC}.txt
-CLEANFILES+= ${DOC}.html ${DOC}.txt
-.elif ${_cf} == "tar"
-_docs+= ${DOC}.tar
-.elif ${_cf} == "pdb"
-_docs+= ${DOC}.pdb ${.CURDIR:T}.pdb
-+CLEANFILES+= ${DOC}.pdb ${.CURDIR:T}.pdb
-.else
-# Create a 'bogus' doc for any other format we don't support.  This is so
+
+# Create a 'bogus' doc for any format we support or not.  This is so
 # that we can fake up a target for it later on, and this target can print
 # the warning message about the unsupported format. 
 _docs+= ${DOC}.${_curformat}
+CLEANFILES+= ${DOC}.${_curformat}
+CLEANFILES+= PLIST.${_curformat}
+
+.if ${_cf} == "txt"
+CLEANFILES+= ${LOCAL_CSS_SHEET}
+
+.elif ${_cf} == "txt"
+CLEANFILES+= ${DOC}.html
+
+.elif ${_cf} == "pdb"
+_docs+= ${.CURDIR:T}.pdb
+CLEANFILES+= ${.CURDIR:T}.pdb
+
 .endif
 .endfor
 
@@ -115,24 +119,33 @@
 .for _curformat in ${FORMATS}
 _cf=${_curformat}
 .for _curcomp in ${INSTALL_COMPRESSED}
+
 .if ${_cf} != "html-split"
 _curinst+= install-${_curformat}.${_curcomp}
 _docs+= ${DOC}.${_curformat}.${_curcomp}
 CLEANFILES+= ${DOC}.${_curformat}.${_curcomp}
+
+.if  ${_cf} == "pdb"
+_docs+= ${.CURDIR:T}.${_curformat}.${_curcomp}
+CLEANFILES+= ${.CURDIR:T}.${_curformat}.${_curcomp}
+
+.endif
 .endif
 .endfor
 .endfor
 .endif
 
-.for _curimage in ${IMAGES_LIB} 
-LOCAL_IMAGES_LIB += ${LOCAL_IMAGES_LIB_DIR}/${_curimage} 
-.endfor 
+.if ${.OBJDIR} != ${.CURDIR}
+LOCAL_CSS_SHEET=	${.OBJDIR}/${CSS_SHEET:T}
+.else
+LOCAL_CSS_SHEET=	${CSS_SHEET:T}
+.endif
 
 .MAIN: all
 
 all: ${_docs}
 
-${DOC}.html: ${SRCS} ${LOCAL_IMAGES_LIB} ${IMAGES_PNG} 
+${DOC}.html: ${SRCS} ${LOCAL_IMAGES_LIB} ${LOCAL_IMAGES_PNG} ${LOCAL_CSS_SHEET}
 	${SGMLNORM} -c ${HTMLCATALOG} ${SRCS:S|^|${.CURDIR}/|} > ${.TARGET}
 .if !defined(NO_TIDY)
 	-${TIDY} ${TIDYFLAGS} ${.TARGET}
@@ -141,14 +154,22 @@
 ${DOC}.txt: ${DOC}.html
 	${HTML2TXT} ${HTML2TXTFLAGS} ${.ALLSRC} > ${.TARGET}
 
-${DOC}.pdb: ${DOC}.html
-	${HTML2PDB} ${HTML2PDBFLAGS} ${.ALLSRC} ${.TARGET}
+${DOC}.pdb: ${DOC}.html ${LOCAL_IMAGES_LIB} ${LOCAL_IMAGES_PNG}
+	${HTML2PDB} ${HTML2PDBFLAGS} ${DOC}.html ${.TARGET}
 
 ${.CURDIR:T}.pdb: ${DOC}.pdb
-	${LN} -f ${DOC}.pdb ${.CURDIR:T}.pdb
+	${LN} -f ${.ALLSRC} ${.TARGET}
 
-${DOC}.tar: ${SRCS}
-	${TAR} cf ${.TARGET} -C ${.CURDIR} ${.ALLSRC:S|${.CURDIR}/||}
+.if defined(INSTALL_COMPRESSED) && !empty(INSTALL_COMPRESSED)
+.for _curcomp in ${INSTALL_COMPRESSED}
+${.CURDIR:T}.pdb.${_curcomp}: ${DOC}.pdb.${_curcomp}
+	${LN} -f ${.ALLSRC} ${.TARGET}
+.endfor
+.endif
+
+${DOC}.tar: ${SRCS} ${LOCAL_IMAGES} ${LOCAL_CSS_SHEET}
+	${TAR} cf ${.TARGET} -C ${.CURDIR} ${SRCS} \
+		-C ${.OBJDIR} ${IMAGES} ${CSS_SHEET:T}
 
 #
 # Build targets for any formats we've missed that we don't handle.
@@ -160,6 +181,7 @@
 .endif
 .endfor
 
+
 # ------------------------------------------------------------------------
 #
 # Validation targets
@@ -173,6 +195,7 @@
 lint validate:
 	${NSGMLS} -s -c ${HTMLCATALOG} ${MASTERDOC}
 
+
 # ------------------------------------------------------------------------
 #
 # Compress targets
@@ -250,10 +273,12 @@
 .for _curformat in ${KNOWN_FORMATS}
 _cf=${_curformat}
 .if !target(install-${_cf})
-install-${_cf}: ${DOC}.${_cf}
+install-${_curformat}: ${DOC}.${_curformat}
 	@[ -d ${DESTDIR} ] || ${MKDIR} -p ${DESTDIR}
 	${INSTALL_DOCS} ${.ALLSRC} ${DESTDIR}
-	${INSTALL_DOCS} ${.CURDIR}/${CSS_SHEET} ${DESTDIR}
+.if !empty(CSS_SHEET)
+	${INSTALL_DOCS} ${CSS_SHEET} ${DESTDIR}
+.endif
 .for _curimage in ${IMAGES_LIB}
 	@[ -d ${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H} ] || \
 		${MKDIR} -p ${DESTDIR}/${LOCAL_IMAGES_LIB_DIR}/${_curimage:H}
@@ -271,6 +296,9 @@
 .for _curimage in ${IMAGES_PNG:N*/*}
 	${INSTALL_DOCS} ${.CURDIR}/${_curimage} ${DESTDIR}
 .endfor
+.if ${_cf} == "pdb"
+	${LN} -f ${DESTDIR}/${.ALLSRC} ${DESTDIR}/${.CURDIR:T}.${_curformat}
+.endif
 
 .for _compressext in ${KNOWN_COMPRESS}
 install-${_cf}.${_compressext}: ${DOC}.${_cf}.${_compressext}
@@ -296,6 +324,7 @@
 .endif
 .endfor
 
+
 # ------------------------------------------------------------------------
 #
 # Package building
@@ -321,10 +350,34 @@
 
 .for _curformat in ${KNOWN_FORMATS}
 _cf=${_curformat}
-package-${_curformat}: install-${_curformat}
-	@${ECHO_CMD} ${DOC}.${_curformat} > PLIST
-	@${PKG_CREATE} -v -f PLIST -p ${DESTDIR} \
+PLIST.${_curformat}: ${DOC}.${_curformat}
+	@${ECHO_CMD} ${DOC}.${_curformat} > PLIST.${_curformat}
+.if ${_cf} == "html" && \
+    (!empty(LOCAL_IMAGES_LIB) || !empty(IMAGES_PNG) || !empty(CSS_SHEET))
+	@${ECHO_CMD} ${LOCAL_IMAGES_LIB} ${IMAGES_PNG} ${CSS_SHEET} | \
+		${XARGS} -n1 >> PLIST.${_curformat}
+.elif ${_cf} == "pdb"
+	@${ECHO_CMD} ${.CURDIR:T}.${_curformat} >> PLIST.${_curformat}
+.endif
+
+${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz: PLIST.${_curformat}
+	@${PKG_CREATE} -v -f PLIST.${_curformat} -p ${DESTDIR} -s ${.OBJDIR} \
 		-c -"FDP ${.CURDIR:T} ${_curformat} package" \
-		-d -"FDP ${.CURDIR:T} ${_curformat} package" \
-		${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz
+		-d -"FDP ${.CURDIR:T} ${_curformat} package" ${.TARGET}
+
+package-${_curformat}: ${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz
 .endfor
+
+#
+# Build install- targets for any formats we've missed that we don't handle.
+#
+
+.for _curformat in ${ALL_FORMATS}
+.if !target(package-${_curformat})
+package-${_curformat}:
+	@${ECHO_CMD} \"${_curformat}\" is not a valid output format for this document.
+.endif
+.endfor
+
+${LOCAL_CSS_SHEET}: ${CSS_SHEET}
+	${CP} -p ${.ALLSRC} ${.TARGET}
diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/share/mk/doc.images.mk new/doc/share/mk/doc.images.mk
--- old/doc/share/mk/doc.images.mk	Thu Oct 18 16:32:51 2001
+++ new/doc/share/mk/doc.images.mk	Thu Oct 18 16:18:29 2001
@@ -47,14 +47,42 @@
 # to PDF, and hopefully get better quality.
 #
 
-IMAGES_GEN_PNG=${IMAGES:M*.eps:S/.eps$/.png/}
-IMAGES_GEN_EPS=${IMAGES:M*.png:S/.png$/.eps/}
-IMAGES_GEN_PDF=${IMAGES:M*.eps:S/.eps$/.pdf/}
+_IMAGES_PNG= ${IMAGES:M*.png}
+_IMAGES_EPS= ${IMAGES:M*.eps}
+_IMAGES_SCR= ${IMAGES:M*.scr}
+
+IMAGES_GEN_PNG= ${_IMAGES_EPS:S/.eps$/.png/}
+IMAGES_GEN_EPS= ${_IMAGES_PNG:S/.png$/.eps/}
+IMAGES_GEN_PDF= ${_IMAGES_EPS:S/.eps$/.pdf/}
+IMAGES_SCR_PNG= ${_IMAGES_SCR:S/.scr$/.png/}
+IMAGES_SCR_EPS= ${_IMAGES_SCR:S/.scr$/.eps/}
 
 CLEANFILES+= ${IMAGES_GEN_PNG} ${IMAGES_GEN_EPS} ${IMAGES_GEN_PDF}
+CLEANFILES+= ${IMAGES_SCR_PNG} ${IMAGES_SCR_EPS}
 
-IMAGES_PNG=${IMAGES:M*.png} ${IMAGES_GEN_PNG} ${IMAGES:M*.scr:S/.scr$/.png/}
-IMAGES_EPS=${IMAGES:M*.eps} ${IMAGES_GEN_EPS} ${IMAGES:M*.scr:S/.scr$/.eps/}
+IMAGES_PNG= ${_IMAGES_PNG} ${IMAGES_GEN_PNG} ${IMAGES_SCR_PNG}
+IMAGES_EPS= ${_IMAGES_EPS} ${IMAGES_GEN_EPS} ${IMAGES_SCR_EPS}
+
+.if ${.OBJDIR} != ${.CURDIR}
+LOCAL_IMAGES= ${IMAGES:S|^|${.OBJDIR}/|}
+CLEANFILES+= ${LOCAL_IMAGES}
+
+.if !empty(_IMAGES_PNG)
+LOCAL_IMAGES_PNG= ${_IMAGES_PNG:S|^|${.OBJDIR}/|}
+.endif
+
+.if !empty(_IMAGES_EPS)
+LOCAL_IMAGES_EPS= ${_IMAGES_EPS:S|^|${.OBJDIR}/|}
+.endif
+
+.else
+LOCAL_IMAGES= ${IMAGES}
+LOCAL_IMAGES_PNG= ${_IMAGES_PNG}
+LOCAL_IMAGES_EPS= ${_IMAGES_EPS}
+.endif
+
+LOCAL_IMAGES_PNG+= ${IMAGES_GEN_PNG} ${IMAGES_SCR_PNG}
+LOCAL_IMAGES_EPS+= ${IMAGES_GEN_EPS} ${IMAGES_SCR_EPS}
 
 # The default resolution eps2png (82) assumes a 640x480 monitor, and is too
 # low for the typical monitor in use today. The resolution of 100 looks
@@ -101,8 +129,15 @@
 
 .for _curimage in ${IMAGES_GEN_PDF}
 ${_curimage}: ${_curimage:S/.pdf$/.eps/}
-	${EPSTOPDF} --outfile=${.TARGET} ${_curimage:S/.pdf$/.eps/}
+	${EPSTOPDF} --outfile=${.TARGET} ${.CURDIR}/${_curimage:S/.pdf$/.eps/}
+.endfor
+
+.if ${.OBJDIR} != ${.CURDIR}
+.for _curimage in ${IMAGES}
+${.OBJDIR}/${_curimage}: ${_curimage}
+	${CP} -p ${.ALLSRC} ${.TARGET}
 .endfor
+.endif
 
 #
 # Using library images
@@ -120,6 +155,9 @@
 # as necessary.
 #
 
+IMAGES_LIB?=
+LOCAL_IMAGES_LIB ?=
+
 #
 # The name of the directory that contains all the library images for this
 # language and encoding
@@ -140,10 +178,16 @@
 # ensures that each image required is copied from its location in 
 # ${IMAGES_LIB_DIR} to the same place in ${LOCAL_IMAGES_LIB_DIR}.
 #
+
 .for _curimage in ${IMAGES_LIB}
+LOCAL_IMAGES_LIB += ${LOCAL_IMAGES_LIB_DIR}/${_curimage}
 ${LOCAL_IMAGES_LIB_DIR}/${_curimage}: ${IMAGES_LIB_DIR}/${_curimage}
 	@[ -d ${LOCAL_IMAGES_LIB_DIR}/${_curimage:H} ] || \
-		${MKDIR} -p ${LOCAL_IMAGES_LIB_DIR}/${_curimage:H}
-	${INSTALL_DOCS}  ${IMAGES_LIB_DIR}/${_curimage} \
-			 ${LOCAL_IMAGES_LIB_DIR}/${_curimage}
+		${MKDIR} ${LOCAL_IMAGES_LIB_DIR}/${_curimage:H}
+	${CP} -p ${IMAGES_LIB_DIR}/${_curimage} \
+		 ${LOCAL_IMAGES_LIB_DIR}/${_curimage}
 .endfor
+
+.if !empty(IMAGES_LIB)
+CLEANFILES+= ${IMAGES_LIB:S|^|${LOCAL_IMAGES_LIB_DIR}/|}
+.endif
diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/share/mk/doc.install.mk new/doc/share/mk/doc.install.mk
--- old/doc/share/mk/doc.install.mk	Thu Oct 18 16:32:47 2001
+++ new/doc/share/mk/doc.install.mk	Thu Oct 18 16:18:29 2001
@@ -80,7 +80,7 @@
 .if exists(${DOC_PREFIX}/packages)
 PACKAGES?=	${DOC_PREFIX}/packages
 .else
-PACKAGES?=	${.CURDIR}
+PACKAGES?=	${.OBJDIR}
 .endif
 
 # hack to set DOCOWN and DOCGRP to those of the user installing, if that
@@ -105,3 +105,19 @@
 INSTALL_DOCS?= \
 	${INSTALL} ${COPY} ${INSTALL_FLAGS} -o ${DOCOWN} -g ${DOCGRP} -m ${DOCMODE}
 
+# ------------------------------------------------------------------------
+#
+# Work out the language and encoding used for this document.
+#
+# Liberal default of maximum of 5 directories below to find it.
+#
+
+.if !defined(LANGCODE)
+LANGCODE:=	${.CURDIR}
+.for _ in 1 2 3 4 5 6 7 8 9 10
+.if !(${LANGCODE:H:T} == "doc")
+LANGCODE:=	${LANGCODE:H}
+.endif
+.endfor
+LANGCODE:=	${LANGCODE:T}
+.endif
diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/share/mk/doc.project.mk new/doc/share/mk/doc.project.mk
--- old/doc/share/mk/doc.project.mk	Thu Oct 18 16:32:47 2001
+++ new/doc/share/mk/doc.project.mk	Thu Oct 18 16:18:29 2001
@@ -70,7 +70,7 @@
 
 CP?=		/bin/cp
 LN?=		/bin/ln
-MKDIR?=		/bin/mkdir
+MKDIR?=		/bin/mkdir -p
 RM?=		/bin/rm
 MV?=		/bin/mv
 
@@ -78,6 +78,9 @@
 # be listed first).
 .include "doc.images.mk"
 
+# Ownership information.
+.include "doc.install.mk"
+
 # Format-specific configuration
 .if defined(DOC)
 .if ${DOCFORMAT} == "docbook"
@@ -88,7 +91,5 @@
 .endif
 .endif
 
-# Subdirectory glue and ownership information.
+# Subdirectory glue.
 .include "doc.subdir.mk"
-.include "doc.install.mk"
-
diff -ruN -x CVS -x work -x *~ -x *.orig -x *.rej -I $Id.*$ -I $FreeBSD.*$ old/doc/share/mk/doc.subdir.mk new/doc/share/mk/doc.subdir.mk
--- old/doc/share/mk/doc.subdir.mk	Thu Oct 18 16:32:47 2001
+++ new/doc/share/mk/doc.subdir.mk	Thu Oct 18 16:18:29 2001
@@ -51,23 +51,6 @@
 .include "${.CURDIR}/../Makefile.inc"
 .endif
 
-# ------------------------------------------------------------------------
-#
-# Work out the language and encoding used for this document.
-#
-# Liberal default of maximum of 5 directories below to find it.
-#
-
-.if !defined(LANGCODE)
-LANGCODE:=	${.CURDIR}
-.for _ in 1 2 3 4 5 6 7 8 9 10
-.if !(${LANGCODE:H:T} == "doc")
-LANGCODE:=	${LANGCODE:H}
-.endif
-.endfor
-LANGCODE:=	${LANGCODE:T}
-.endif
-
 .if !target(install)
 install: afterinstall symlinks 
 afterinstall: realinstall
@@ -78,7 +61,8 @@
 realpackage: _SUBDIRUSE
 
 .if !defined(IGNORE_COMPAT_SYMLINK) && defined(COMPAT_SYMLINK)
-SYMLINKS+= ${DOCDIR} ${.CURDIR:T:ja_JP.eucJP=ja} ${COMPAT_SYMLINK:ja=ja_JP.eucJP}
+SYMLINKS+= ${DOCDIR} ${.CURDIR:T:ja_JP.eucJP=ja} \
+	   ${COMPAT_SYMLINK:ja=ja_JP.eucJP}
 .endif
 
 .if defined(PRI_LANG) && defined(ROOT_SYMLINKS) && !empty(ROOT_SYMLINKS)

Cyrille.
-- 
Cyrille Lefevre                 mailto:clefevre@citeweb.net
Comment 4 clefevre 2001-10-25 08:06:49 UTC
last minute fix, apply it w/ patch -p1 starting at /usr.

diff -ru old/doc/share/mk/doc.docbook.mk new/doc/share/mk/doc.docbook.mk
--- old/doc/share/mk/doc.docbook.mk	Thu Oct 25 09:00:15 2001
+++ new/doc/share/mk/doc.docbook.mk	Thu Oct 25 09:02:30 2001
@@ -235,6 +235,12 @@
 # and INSTALL_COMPRESSED variables are wrong.
 #
 
+.if ${.OBJDIR} != ${.CURDIR}
+LOCAL_CSS_SHEET= ${.OBJDIR}/${CSS_SHEET:T}
+.else
+LOCAL_CSS_SHEET= ${CSS_SHEET:T}
+.endif
+
 .for _curformat in ${FORMATS}
 _cf=${_curformat}
 
@@ -243,7 +249,6 @@
 CLEANFILES+= $$([ -f HTML.manifest ] && ${XARGS} < HTML.manifest) \
 		HTML.manifest ln*.html
 CLEANFILES+= PLIST.${_curformat}
-CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .else
 _docs+= ${DOC}.${_curformat}
@@ -253,18 +258,12 @@
 .if ${_cf} == "html-split.tar"
 CLEANFILES+= $$([ -f HTML.manifest ] && ${XARGS} < HTML.manifest) \
 		HTML.manifest ln*.html
-CLEANFILES+= ${LOCAL_CSS_SHEET}
-
-.elif ${_cf} == "html"
-CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .elif ${_cf} == "html.tar"
 CLEANFILES+= ${DOC}.html
-CLEANFILES+= ${LOCAL_CSS_SHEET}
 
 .elif ${_cf} == "txt"
-CLEANFILES+= ${DOC}.html ${DOC}.html-text
-CLEANFILES+= ${LOCAL_CSS_SHEET}
+CLEANFILES+= ${DOC}.html-text
 
 .elif ${_cf} == "dvi"
 CLEANFILES+= ${DOC}.aux ${DOC}.log ${DOC}.tex
@@ -284,6 +283,13 @@
 
 .endif
 .endif
+
+.if (${LOCAL_CSS_SHEET} != ${CSS_SHEET}) && \
+    (${_cf} == "html-split" || ${_cf} == "html-split.tar" || \
+     ${_cf} == "html" || ${_cf} == "html.tar" || ${_cf} == "txt")
+CLEANFILES+= ${LOCAL_CSS_SHEET}
+.endif
+
 .endfor
 
 
@@ -329,12 +335,6 @@
 CLEANFILES+= 		${HTML_SPLIT_INDEX} ${HTML_INDEX} ${PRINT_INDEX}
 .endif
 
-.if ${.OBJDIR} != ${.CURDIR}
-LOCAL_CSS_SHEET= ${.OBJDIR}/${CSS_SHEET:T}
-.else
-LOCAL_CSS_SHEET= ${CSS_SHEET:T}
-.endif
-
 .MAIN: all
 
 all: ${_docs}
@@ -723,5 +723,7 @@
 package-${_curformat}: ${PACKAGES}/${.CURDIR:T}.${LANGCODE}.${_curformat}.tgz
 .endfor
 
+.if ${LOCAL_CSS_SHEET} != ${CSS_SHEET}
 ${LOCAL_CSS_SHEET}: ${CSS_SHEET}
 	${CP} -p ${.ALLSRC} ${.TARGET}
+.endif
diff -ru old/doc/share/mk/doc.html.mk new/doc/share/mk/doc.html.mk
--- old/doc/share/mk/doc.html.mk	Thu Oct 25 09:00:16 2001
+++ new/doc/share/mk/doc.html.mk	Thu Oct 25 09:02:32 2001
@@ -85,6 +85,12 @@
 # ------------------------------------------------------------------------
 #
 
+.if ${.OBJDIR} != ${.CURDIR}
+LOCAL_CSS_SHEET=	${.OBJDIR}/${CSS_SHEET:T}
+.else
+LOCAL_CSS_SHEET=	${CSS_SHEET:T}
+.endif
+
 .for _curformat in ${FORMATS}
 _cf=${_curformat}
 
@@ -96,7 +102,9 @@
 CLEANFILES+= PLIST.${_curformat}
 
 .if ${_cf} == "txt"
+.if ${LOCAL_CSS_SHEET} != ${CSS_SHEET}
 CLEANFILES+= ${LOCAL_CSS_SHEET}
+.endif
 
 .elif ${_cf} == "txt"
 CLEANFILES+= ${DOC}.html
@@ -135,12 +143,6 @@
 .endfor
 .endif
 
-.if ${.OBJDIR} != ${.CURDIR}
-LOCAL_CSS_SHEET=	${.OBJDIR}/${CSS_SHEET:T}
-.else
-LOCAL_CSS_SHEET=	${CSS_SHEET:T}
-.endif
-
 .MAIN: all
 
 all: ${_docs}
@@ -379,5 +381,7 @@
 .endif
 .endfor
 
+.if ${LOCAL_CSS_SHEET} != ${CSS_SHEET}
 ${LOCAL_CSS_SHEET}: ${CSS_SHEET}
 	${CP} -p ${.ALLSRC} ${.TARGET}
+.endif

Cyrille.
-- 
Cyrille Lefevre                 mailto:clefevre@citeweb.net
Comment 5 Murray Stokely freebsd_committer freebsd_triage 2001-10-29 09:24:32 UTC
State Changed
From-To: open->closed

Your changes have been committed, thanks!  Please send in smaller PRs 
in the future.  Applying three large patches on top of one another is 
difficult to review.