Extra support in the Makefile. Now builds html, html-split, rtf, ps, and pdf

versions (modulo bugs in JadeTex). "make install" and "make clean" now also
seem to do the right thing.

Extensive documentation included, comments welcomed.
This commit is contained in:
Nik Clayton 1999-01-03 21:19:03 +00:00
parent 84dde4e68a
commit 8c0c06682a
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=4017
3 changed files with 636 additions and 81 deletions

View file

Internal server error - The gay git

500

Internal server error

Forgejo version: 9.0.3

@ -1,5 +1,5 @@
# #
# $Id: Makefile,v 1.7 1998-12-20 20:33:49 nik Exp $ # $Id: Makefile,v 1.8 1999-01-03 21:19:03 nik Exp $
# #
# Build the FreeBSD Handbook. Will eventually split in two, a generic .mk # Build the FreeBSD Handbook. Will eventually split in two, a generic .mk
# file which can be used by many Makefiles, and a much smaller Makefile # file which can be used by many Makefiles, and a much smaller Makefile
@ -14,6 +14,8 @@
MAINTAINER=nik@FreeBSD.ORG MAINTAINER=nik@FreeBSD.ORG
JADEOPTS=
# #
# DOC is the root name of file(s) that will be generated (i.e, for # DOC is the root name of file(s) that will be generated (i.e, for
# foo.rtf, foo.ps, etc, DOC=foo. HTML generation ignores this, it # foo.rtf, foo.ps, etc, DOC=foo. HTML generation ignores this, it
@ -26,15 +28,33 @@ DOC?= handbook
# FORMATS lists the output formats that should be generated. Valid values # FORMATS lists the output formats that should be generated. Valid values
# are # are
# #
# ascii html html-chunk tex dvi ps pdf rtf # txt html html-split ps pdf rtf
# #
# html-chunk is the file as one large HTML file, rather than broken up # html-split is the file split into (probably) many individual HTML files,
# into smaller files # linked from one index.html file.
# #
# This setting also affects which files will be removed with 'make clean'. # This setting also affects which files will be removed with 'make clean'.
# If you 'make' with one setting, and 'make clean' with another, don't # If you 'make' with one setting, and 'make clean' with another, don't
# be surprised if it doesn't work. # be surprised if it doesn't work.
FORMATS?= html FORMATS?= html-split
#
# INSTALL_COMPRESSED lists the compressed versions to be installed by the
# install-* targets. Valid values are
#
# gz zip bz2
#
# If left empty then no files will be installed compressed.
#
INSTALL_COMPRESSED?= gz
#
# INSTALL_ONLY_COMPRESSED is non-empty if you only want to install the
# compressed versions of built files. As a side effect, setting this option
# means the html-split format *will not* be installed, even if it's listed
# in ${FORMATS}, because it can not be compressed.
#
INSTALL_ONLY_COMPRESSED?=
# #
# SRCS lists the individual SGML files that make up the document. Changes # SRCS lists the individual SGML files that make up the document. Changes
@ -78,9 +98,16 @@ SRCS+= authors.ent
SRCS+= chapters.ent SRCS+= chapters.ent
SRCS+= mailing-lists.ent SRCS+= mailing-lists.ent
# ------------------------------------------------------------------------
#
# You shouldn't need to change definitions below here
VOLUME?= ${.CURDIR:T}
DOC?= ${.CURDIR:T}
JADE= /usr/local/bin/jade JADE= /usr/local/bin/jade
DSLHTML= ../../sgml/freebsd.dsl DSLHTML= ../../sgml/freebsd.dsl
DSLPRINT= /usr/local/share/sgml/docbook/dsssl/modular/print/docbook.dsl DSLPRINT= ../../sgml/freebsd.dsl
FREEBSDCATALOG= ../../sgml/catalog FREEBSDCATALOG= ../../sgml/catalog
DOCBOOKCATALOG= /usr/local/share/sgml/docbook/3.0/catalog DOCBOOKCATALOG= /usr/local/share/sgml/docbook/3.0/catalog
@ -89,6 +116,8 @@ DSSSLCATALOG= /usr/local/share/sgml/docbook/dsssl/modular/catalog
JADEFLAGS= ${JADEOPTS} -c ${FREEBSDCATALOG} -c ${DSSSLCATALOG} -c ${DOCBOOKCATALOG} -c ${JADECATALOG} JADEFLAGS= ${JADEOPTS} -c ${FREEBSDCATALOG} -c ${DSSSLCATALOG} -c ${DOCBOOKCATALOG} -c ${JADECATALOG}
KNOWN_FORMATS= html html-split txt rtf ps pdf tex dvi
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
# #
# Look at ${FORMATS} and work out which documents need to be generated. # Look at ${FORMATS} and work out which documents need to be generated.
@ -98,16 +127,46 @@ JADEFLAGS= ${JADEOPTS} -c ${FREEBSDCATALOG} -c ${DSSSLCATALOG} -c ${DOCBOOKCATAL
# #
# ${_docs} will be set to a list of all documents that must be made # ${_docs} will be set to a list of all documents that must be made
# up to date. # up to date.
#
# ${CLEANFILES} is a list of files that should be removed by the "clean"
# target. ${COMPRESS_EXT:S/^/${DOC}.${_cf}.&/ takes the COMPRESS_EXT var,
# and prepends the filename to each listed extension, building a second
# list of files with the compressed extensions added.
#
# Note: ".for _curformat in ${KNOWN_FORMATS}" is used several times in this
# file. I know they could have been rolled together in to one, much larger,
# loop. However, that would have made things more complicated for a newcomer
# to this file to unravel and understand, and a syntax error in the loop
# would have affected the entire build/compress/install process, instead
# of just one of them, making it more difficult to debug.
# Note: It is the aim of this file that *all* the targets be available,
# not just those appropriate to the current ${FORMATS} and
# ${INSTALL_COMPRESSED} values.
#
# For example, if FORMATS=html and INSTALL_COMPRESSED=gz you could still
# type
#
# make book.rtf.bz2
#
# and it will do the right thing. Or
#
# make install-rtf.bz2
#
# for that matter. But don't expect "make clean" to work if the FORMATS
# and INSTALL_COMPRESSED variables are wrong.
#