r7061: initial property settings
[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$
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=fink
14 #SYSTEM=debian
15 # SYSTEM=redhat
16
17 # Nothing to configure beyond this point
18
19 CATALOG=catalog.$(SYSTEM)
20
21 # Custom DSSSL's
22 DSSSL_HTML=../dsssl/html/docbook.dsl
23 DSSSL_PRINT=dsssl/print/docbook.dsl
24
25 DOCFILE_BASE_DEFAULT=hyperobject
26 DOCFILE_EXT_DEFAULT=sgml
27
28 JADE=openjade
29
30 # Standard docfile processing
31
32 ifndef DOCFILE_BASE
33 DOCFILE_BASE=${DOCFILE_BASE_DEFAULT}
34 endif
35
36 ifndef DOCFILE_EXT
37 DOCFILE_EXT=${DOCFILE_EXT_DEFAULT}
38 endif
39
40 DOCFILE=${DOCFILE_BASE}.${DOCFILE_EXT}
41 TEXFILE=${DOCFILE_BASE}.tex
42 PDFFILE=${DOCFILE_BASE}.pdf
43 PSFILE=${DOCFILE_BASE}.ps
44 DVIFILE=${DOCFILE_BASE}.dvi
45 TMPFILES=${DOCFILE_BASE}.aux ${DOCFILE_BASE}.out ${DOCFILE_BASE}.log
46 DOCFILES=$(shell echo *.sgml)
47
48 .PHONY: all
49 all: html pdf 
50
51 .PHONY: dist
52 dist: html pdf
53
54 .PHONY: doc
55 doc: html pdf
56
57 CHECK=onsgmls -s -C ${CATALOG} || exit 1
58
59 .PHONY: check
60 check:
61         @$(CHECK)
62
63 .PHONY: html
64 html: html.tar.gz
65
66 html.tar.gz: $(DOCFILES) Makefile
67         @$(CHECK)
68         @( 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)
69
70 .PHONY: tex
71 tex: ${TEXFILE}
72
73 ${TEXFILE}: ${DOCFILES}
74         @$(CHECK)
75         @$(JADE) -t tex -c ${CATALOG} -d ${DSSSL_PRINT} ${DOCFILE} > /dev/null
76
77 .PHONY: pdf
78 pdf: ${PDFFILE}
79
80 ${PDFFILE}: ${DOCFILES}
81         @$(JADE) -t tex -c ${CATALOG} -d ${DSSSL_PRINT} ${DOCFILE} > /dev/null
82         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
83         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
84         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
85         @pdfjadetex -interaction=batchmode '\pdfcompresslevel=9' '\input ${TEXFILE}' > /dev/null
86
87 .PHONY: dvi
88 dvi: ${DVIFILE}
89
90 ${DVIFILE}: ${TEXFILE}
91         @jadetex ${TEXFILE} > /dev/null
92         @jadetex ${TEXFILE} > /dev/null
93         @jadetex ${TEXFILE} > /dev/null
94         @jadetex ${TEXFILE} > /dev/null
95
96 .PHONY: ps
97 ps: ${PSFILE}
98
99 ${PSFILE}: ${DVIFILE}
100         @dvips -o ${PSFILE} ${DVIFILE} > /dev/null
101
102 .PHONY: clean
103 clean: 
104         @rm -f *~ *.bak *.orig \#*\# .\#* texput.log
105         @rm -rf html ${PSFILE}
106         @rm -f ${TMPFILES}
107         @rm -f  ${DVIFILE} ${TEXFILE}
108
109 .PHONY: distclean
110 distclean: clean