r3585: *** empty log message ***
[hyperobject.git] / doc / Makefile
1 # FILE IDENTIFICATION
2
3 #  Name:         Makefile
4 #  Purpose:      Makefile for the hyperobject hyperobject documentation
5 #  Programer:    Kevin M. Rosenberg
6 #  Date Started: Mar 2002
7 #
8 #  CVS Id:   $Id: Makefile,v 1.1 2002/12/09 09:31:27 kevin Exp $
9 #
10 # This file, part of Hyperobject, is Copyright (c) 2002 by Kevin M. Rosenberg
11 #
12 # System variable to select catalog file
13 SYSTEM=debian
14 # SYSTEM=redhat
15
16 # Nothing to configure beyond this point
17
18 CATALOG=catalog.$(SYSTEM)
19
20 # Custom DSSSL's
21 DSSSL_HTML=../dsssl/html/docbook.dsl
22 DSSSL_PRINT=dsssl/print/docbook.dsl
23
24 DOCFILE_BASE_DEFAULT=hyperobject
25 DOCFILE_EXT_DEFAULT=sgml
26
27 # Standard docfile processing
28
29 ifndef DOCFILE_BASE
30 DOCFILE_BASE=${DOCFILE_BASE_DEFAULT}
31 endif
32
33 ifndef DOCFILE_EXT
34 DOCFILE_EXT=${DOCFILE_EXT_DEFAULT}
35 endif
36
37 DOCFILE=${DOCFILE_BASE}.${DOCFILE_EXT}
38 TEXFILE=${DOCFILE_BASE}.tex
39 PDFFILE=${DOCFILE_BASE}.pdf
40 PSFILE=${DOCFILE_BASE}.ps
41 DVIFILE=${DOCFILE_BASE}.dvi
42 TMPFILES=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log
43 DOCFILES=$(shell echo *.sgml)
44
45 .PHONY: all
46 all: html pdf 
47
48 .PHONY: dist
49 dist: html pdf
50
51 .PHONY: doc
52 doc: html pdf
53
54 CHECK=nsgmls -s -C ${CATALOG} || exit 1
55
56 .PHONY: check
57 check:
58         @$(CHECK)
59
60 .PHONY: html
61 html: html.tar.gz
62
63 html.tar.gz: $(DOCFILES) Makefile
64         @$(CHECK)
65         @( rm -rf html ; mkdir html; cd html ; jade -t sgml -c ../${CATALOG} -d ${DSSSL_HTML} ../${DOCFILE} > /dev/null; cp book1.html index.html; cd ..; GZIP='-9' tar czf html.tar.gz html)
66
67 .PHONY: tex
68 tex: ${TEXFILE}
69
70 ${TEXFILE}: ${DOCFILES}
71         @$(CHECK)
72         @jade -t tex -c ${CATALOG} -d ${DSSSL_PRINT} ${DOCFILE} > /dev/null
73
74 .PHONY: pdf
75 pdf: ${PDFFILE}
76
77 ${PDFFILE}: ${DOCFILES}
78         @jade -t tex -c ${CATALOG} -d ${DSSSL_PRINT} ${DOCFILE} > /dev/null
79         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
80         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
81         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
82         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
83
84 .PHONY: dvi
85 dvi: ${DVIFILE}
86
87 ${DVIFILE}: ${TEXFILE}
88         @jadetex ${TEXFILE} > /dev/null
89         @jadetex ${TEXFILE} > /dev/null
90         @jadetex ${TEXFILE} > /dev/null
91         @jadetex ${TEXFILE} > /dev/null
92
93 .PHONY: ps
94 ps: ${PSFILE}
95
96 ${PSFILE}: ${DVIFILE}
97         @dvips -o ${PSFILE} ${DVIFILE} > /dev/null
98
99 .PHONY: clean
100 clean: 
101         @rm -f *~ *.bak *.orig \#*\# .\#* texput.log
102         @rm -rf html ${PSFILE}
103         @rm -f ${TMPFILES}
104         @rm -f  ${DVIFILE} ${TEXFILE}
105
106 .PHONY: distclean
107 distclean: clean