source: git/doc/Makefile.in @ dcc635

fieker-DuValspielwiese
Last change on this file since dcc635 was dcc635, checked in by Olaf Bachmann <obachman@…>, 25 years ago
* mainly doc stuff improvements git-svn-id: file:///usr/local/Singular/svn/trunk@3310 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 4.9 KB
Line 
1#####################################################################
2###
3### Makefile for Singular documentation
4###
5#####################################################################
6SHELL=/bin/sh
7
8####################################################################
9##
10## Configuration
11##
12
13## directory where info files are installed
14prefix          = @prefix@
15infodir         = ${prefix}/info
16bindir          = @bindir@
17htmldir         = ${prefix}/html
18
19##
20## needed programs
21##
22@SET_MAKE@
23CC              = @CC@
24INSTALL         = ../install-sh -c
25INSTALL_PROGRAM = ${INSTALL}
26INSTALL_DATA    = ${INSTALL} -m 644
27MKINSTALLDIRS   = ../mkinstalldirs
28
29PERL5           = @PERL5@
30TEX             = tex
31MAKEINFO        = @MAKEINFO@
32TEXI2DVI        = @TEXI2DVI@
33TEXINDEX        = @TEXINDEX@
34TEXI2HTML       = @TEXI2HTML@
35DVIPS           = dvips
36
37# d2t stuff
38SINGULAR        = @SINGULAR@
39SINGULAR_LIB_DIR= ../Singular/LIB
40LIBPARSE        = ${bindir}/libparse
41D2T_SUBDIR      = ./d2t_singular
42DOC2TEX         = ./doc2tex.pl -subdir ${D2T_SUBDIR} -Singular ${SINGULAR} \
43                        -libparse ${LIBPARSE} -I ../Singular/LIB
44
45# t2h stuff
46TMP_DIR         = @TMP_DIR@
47HTML_SUBDIR     = html
48TEXI2HTML_INIT  = t2h_singular.init
49TEXI2HTML_OPTS  = -init_file ${TEXI2HTML_INIT} @TEXI2HTML_OPTS@ \
50                  -short_extn -l2h_tmp ${TMP_DIR}  -subdir ${HTML_SUBDIR}
51HTML_MANUAL_PREFIX = sing
52HTML_TUTOR_PREFIX  = tut
53HTML_MANUAL_TOP    = index.htm
54HTML_TUTOR_TOP     = tutor.htm
55##
56## End configuration dependend stuff
57#################################################################
58
59# files
60TEX_FILES       = copyright.tex
61DOC2TEX_FILES   = \
62                examples.tex general.tex math.tex reference.tex \
63                start.tex types.tex pdata.tex tricks.tex
64
65MANUAL_FILES    = ${TEX_FILES} ${DOC2TEX_FILES}
66TUTOR_FILES     = \
67                tutor.tex examples.tex start.tex copyright.tex
68
69IMAGES_UU       := $(wildcard images/*.uu)
70IMAGES     := $(IMAGES_UU:images/%.uu=%)
71IMAGES_SRC := $(IMAGES:%=images/%)
72IMAGES_HTML := $(IMAGES:%=${HTML_SUBDIR}/%)
73
74# prepend bindir to path so that programs from there are taken first
75export PATH := "${bindir}:${PATH}"
76
77.PHONY: info dvi ps
78# default target
79all: info dvi html
80
81# info stuff
82info: singular.hlp
83
84singular.hlp: ${MANUAL_FILES} singular.tex
85        - ${MAKEINFO} --no-split singular.tex
86
87# dvi stuff
88dvi: manual.dvi usercard.dvi
89
90singular.dvi: ${MANUAL_FILES} singular.tex
91        ${TEXI2DVI} singular.tex
92
93manual.dvi: ${MANUAL_FILES} manual.tex
94        ${TEXI2DVI} manual.tex
95
96tutor.dvi: ${TUTOR_FILES}
97        ${TEXI2DVI} tutor.tex
98
99usercard.dvi: usercard.tex singcard.tex
100        ${TEX} $<
101
102# postscript stuff
103ps: singular.ps usercard.ps
104
105usercard.ps: usercard.dvi
106        ${DVIPS} -t landscape -t a4 $< -o $@
107
108%.ps: %.dvi
109        ${DVIPS} $< -o $@
110
111# html stuff
112html: ${HTML_SUBDIR}/${HTML_MANUAL_TOP} ${IMAGES_HTML}
113${HTML_SUBDIR}/${HTML_MANUAL_TOP}: ${TEXI2HTML_INIT} ${TEXI2HTML} singular.tex
114        ${PERL5} ${TEXI2HTML} ${TEXI2HTML_OPTS} -prefix ${HTML_MANUAL_PREFIX} \
115        -top_file ${HTML_MANUAL_TOP} singular.tex
116
117# html stuff
118html_tutor: ${HTML_SUBDIR}/${HTML_TUTOR_TOP} ${IMAGES_HTML}
119${HTML_SUBDIR}/${HTML_TUTOR_TOP}: ${TEXI2HTML_INIT} ${TEXI2HTML} tutor.tex
120        ${PERL5} ${TEXI2HTML} ${TEXI2HTML_OPTS} -prefix ${HTML_TUTOR_PREFIX} \
121        -top_file ${HTML_TUTOR_TOP} tutor.tex
122
123# how to create the texinfo files
124manual.tex:  ${MANUAL_FILES} doc2tex.pl ${SINGULAR} ${LIBPARSE} singular.doc
125        ${PERL5} ${DOC2TEX} -o manual.tex singular.doc
126
127singular.tex: ${MANUAL_FILES} doc2tex.pl ${SINGULAR} ${LIBPARSE} singular.doc
128        ${PERL5} ${DOC2TEX} -lib_fun -lib_ex -o singular.tex singular.doc
129
130%.tex: %.doc doc2tex.pl ${SINGULAR} ${LIBPARSE}
131        ${PERL5} ${DOC2TEX} $*
132
133singular.idx: singular.hlp ${D2T_SUBDIR}/idx.db ${HTML_SUBDIR}/${HTML_MANUAL_PREFIX}_cp.idx
134        doc2idx.pl singular.hlp ${D2T_SUBDIR}/idx.db ${HTML_SUBDIR}/${HTML_MANUAL_PREFIX}_cp.idx
135
136# targets which produce stand-alone documents
137COPYING: copyright.tex
138        ${MAKEINFO} --no-header -o COPYING copyright.tex
139
140${IMAGES_HTML} : ${IMAGES_SRC}
141        test -d html || mkdir html
142        cp ${IMAGES_SRC} html
143
144${IMAGES_TUTOR} : ${IMAGES_SRC}
145        test -d html_tutor || mkdir html_tutor
146        cp ${IMAGES_SRC} html_tutor
147
148images/%.gif : images/%.gif.uu
149        uudecode $< -o $@
150
151images/%.jpg : images/%.jpg.uu
152        uudecode $< -o $@
153
154images/%.xbm : images/%.xbm.uu
155        uudecode $< -o $@
156
157# targets concerned with maintenance
158install: singular.hlp html/index.htm
159        ${MKINSTALLDIRS} ${infodir}
160        ${INSTALL_DATA} singular.hlp ${infodir}
161        test -L ${htmldir} || (rm -rf ${htmldir}; ln -s `pwd`/html ${htmldir})
162
163uninstall:
164        rm -f ${infodir}/singular.hlp
165        - rmdir ${infodir}
166
167clean:
168        /bin/rm -f .singular_hist doe.tmp dump.ascii example.mp example.txt
169        /bin/rm -f save_i test.ascii test.mp
170        /bin/rm -f Z* *.tst *.pag *.dir *.lst *.log *.aux *.cp *.cps
171        /bin/rm -f *.fn *.fns *.ky *.kys *.log *.pg *.pgs *.toc *.tp
172        /bin/rm -f *.tps *.vr *.vrs
173        /bin/rm -f singular.hlp *.dvi *.ps ${DOC2TEX_FILES}
174        /bin/rm -rf singular.tex manual.tex  html ${D2T_SUBDIR}
175
176mostlyclean: clean
177
178distclean: mostlyclean
179        /bin/rm -f Makefile
180
181maintainer-clean: distclean
182
183${SINGULAR}:
184#       cd ..; ${MAKE} ${SINGULAR}
185
186Makefile: Makefile.in
187        cd ..; ${MAKE} doc/Makefile
188
189html-done: ${MANUAL_FILES}
190
Note: See TracBrowser for help on using the repository browser.