source: git/doc/Makefile.in @ 643fbb

spielwiese
Last change on this file since 643fbb was 643fbb, checked in by Viktor Levandovskyy <levandov@…>, 21 years ago
*levandov: ditribution of Plural separately from Singular git-svn-id: file:///usr/local/Singular/svn/trunk@6853 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 15.0 KB
Line 
1#####################################################################
2###
3### Makefile for Singular documentation
4### $Id: Makefile.in,v 1.88 2003-07-25 18:23:50 levandov Exp $
5#####################################################################
6SHELL=/bin/sh
7
8####################################################################
9##
10## Configuration
11##
12SINGUNAME       = @SINGUNAME@
13S_VERSION       = $${SINGULAR_VERSION-@SINGULAR_VERSION@}
14
15## directory where info files are installed
16prefix          = @prefix@
17infodir         = ${prefix}/info
18bindir          = @bindir@
19htmldir         = ${prefix}/html
20exdir           = ${prefix}/examples
21
22localdir        = /usr/local
23install_prefix  = ${localdir}/Singular/${S_VERSION}
24install_infodir = ${install_prefix}/info
25install_htmldir = ${install_prefix}/html
26install_docdir  = ${install_prefix}/doc
27install_exdir   = ${install_prefix}/examples
28
29# directory where files for ftp site go
30ftpdir          = /tmp
31
32##
33## needed programs
34##
35@SET_MAKE@
36LN_S            = @LN_S@
37CC              = @CC@
38INSTALL         = ../install-sh -c
39INSTALL_PROGRAM = ${INSTALL}
40INSTALL_DATA    = ${INSTALL} -m 644
41MKINSTALLDIRS   = ../mkinstalldirs
42GZIP            = @MYGZIP@
43UUDECODE        = @UUDECODE@
44
45PERL            = @PERL@
46TEX             = tex
47MAKEINFO        = @MAKEINFO@ --force
48TEXI2DVI        = @TEXI2DVI@
49TEXINDEX        = @TEXINDEX@
50# use our local texi2html
51TEXI2HTML       = ./texi2html
52DVIPS           = dvips
53
54VERBOSE         = 1 # override this with make VERBOSE=2
55
56# d2t stuff
57SINGULAR        = @SINGULAR@
58SINGULAR_LIB_DIR= ../Singular/LIB
59LIBPARSE        = ${bindir}/libparse
60DOC_SUBDIR      = ./d2t_singular
61EX_SUBDIR       = ./examples
62CHKSUM_DB       = ${DOC_SUBDIR}/chksum
63DOC2TEX         = ${PERL} ./doc2tex.pl -docdir ${DOC_SUBDIR} \
64                  -Singular ${SINGULAR} -verbose ${VERBOSE} -make ${MAKE} \
65                  -exdir ${EX_SUBDIR}
66PL2DOC          = ${PERL} ./pl2doc.pl -db ${CHKSUM_DB}
67
68# t2h stuff
69TMP_DIR         = @TMP_DIR@
70HTML_SUBDIR     = html
71PLU_HTML_SUBDIR = pluhtml
72TEXI2HTML_INIT  = t2h_singular.init
73ifeq ($(VERBOSE),0)
74T2H_VERBOSE     =
75else
76T2H_VERBOSE     = -Verbose
77endif
78TEXI2HTML_OPTS  = -init_file ${TEXI2HTML_INIT} @TEXI2HTML_OPTS@ \
79                  -short_ext -l2h_tmp ${TMP_DIR} -subdir ${HTML_SUBDIR} \
80                  ${T2H_VERBOSE}
81PLU_TEXI2HTML_OPTS  = -init_file ${TEXI2HTML_INIT} @TEXI2HTML_OPTS@ \
82                  -short_ext -l2h_tmp ${TMP_DIR} -subdir ${PLU_HTML_SUBDIR} \
83                  ${T2H_VERBOSE}
84HTML_MANUAL_PREFIX = sing
85PLU_HTML_MANUAL_PREFIX = sing
86HTML_TUTOR_PREFIX  = tut
87HTML_MANUAL_TOP    = index.htm
88HTML_TUTOR_TOP     = tutor.htm
89##
90## End configuration dependend stuff
91#################################################################
92
93###########################################################
94# File sets
95#
96STANDALONE_TEXI_FILES   = COPYING.texi INSTALL_unix.texi NEWS.texi \
97                          README_download.texi README_ftp.texi \
98                          README_distribution.texi README_src.texi \
99                          INSTALL_win.texi
100
101PLU_STANDALONE_TEXI_FILES = COPYING.plural.texi INSTALL_unix.plural.texi \
102                            NEWS.plural.texi README_download.plural.texi
103
104DOC2TEX_FILES   = \
105                examples.tex general.tex ti_ip.tex math.tex reference.tex \
106                start.tex types.tex pdata.tex tricks.tex platform.tex
107
108PLU_DOC2TEX_FILES       = \
109                plural.tex plumath.tex plureference.tex plutypes.tex pluconventions.tex
110
111MANUAL_FILES    = ${TEX_FILES} ${DOC2TEX_FILES}
112
113PLU_MANUAL_FILES = ${PLU_DOC2TEX_FILES}
114
115TUTOR_FILES     = \
116                tutor.tex examples.tex start.tex copyright.tex
117
118IMAGES_UU       := $(wildcard images/*.uu)
119IMAGES     := $(IMAGES_UU:images/%.uu=%)
120IMAGES_SRC := $(IMAGES:%=images/%)
121IMAGES_HTML := $(IMAGES:%=${HTML_SUBDIR}/%)
122PLU_IMAGES_HTML := $(IMAGES:%=${PLU_HTML_SUBDIR}/%)
123
124# prepend bindir to path so that programs from there are taken first
125export PATH := "${bindir}:${PATH}"
126
127###########################################################
128# top targets
129#
130
131.PHONY: info dvi ps html
132
133# default target
134all: info dvi html singular.idx
135
136# info stuff
137info: singular.hlp
138
139singular.hlp: ${MANUAL_FILES} singular.tex ${PLU_MANUAL_FILES}
140        - ${MAKEINFO} --no-split singular.tex
141
142plural.hlp:  ${PLU_MANUAL_FILES} pluralmain.tex
143        - ${MAKEINFO} --no-split -o plural.hlp pluralmain.tex
144
145# dvi stuff
146dvi: manual.dvi usercard.dvi
147
148singular.dvi: ${MANUAL_FILES} singular.tex
149        ${TEXI2DVI} singular.tex
150
151manual.dvi: ${MANUAL_FILES} manual.tex
152        ${TEXI2DVI} manual.tex
153
154tutor.dvi: ${TUTOR_FILES}
155        ${TEXI2DVI} tutor.tex
156
157usercard.dvi: usercard.tex singcard.tex
158        ${TEX} $<
159
160# postscript stuff
161ps: manual.ps usercard.ps
162
163usercard.ps: usercard.dvi
164        ${DVIPS} -t landscape -t a4 $< -o $@
165
166%.ps: %.dvi
167        ${DVIPS} $< -o $@
168
169###########################################################
170# texinfo targets
171#
172manual.tex:  ${MANUAL_FILES} doc2tex.pl ${SINGULAR} singular.doc $(STANDALONE_TEXI_FILES)
173        ${DOC2TEX} -no_fun -o manual.tex singular.doc
174
175singular.tex: ${MANUAL_FILES} doc2tex.pl ${LIB_TEX_FILES} ${SINGULAR} ${LIBPARSE} singular.doc $(STANDALONE_TEXI_FILES) ${PLU_MANUAL_FILES}
176        ${DOC2TEX} -o singular.tex singular.doc
177
178pluralmain.tex: ${PLU_MANUAL_FILES} doc2tex.pl ${PLU_LIB_TEX_FILES} ${SINGULAR} ${LIBPARSE} pluralmain.doc $(PLU_STANDALONE_TEXI_FILES)
179        ${DOC2TEX} -o pluralmain.tex pluralmain.doc
180
181#pattern rule for tex files
182%_noEx.tex : %.doc doc2tex.pl ${SINGULAR}
183        ${DOC2TEX} -o $@ -no_ex $<
184
185%.tex: %.doc doc2tex.pl ${SINGULAR}
186        ${DOC2TEX} -o $@ $<
187
188# pattern rules for lib docus
189${DOC_SUBDIR}/%_lib.pl : ${SINGULAR_LIB_DIR}/%.lib ${LIBPARSE}
190        test -d ${DOC_SUBDIR} || mkdir ${DOC_SUBDIR}
191        ${LIBPARSE} -i $< > $@
192
193%_noFun.doc : %.pl pl2doc.pl
194        ${PL2DOC}  -no_fun -o $@  $<
195
196%.doc : %.pl pl2doc.pl
197        ${PL2DOC} -o $@ $<
198
199# do not delete intermediate .pl and .doc files
200.PRECIOUS: %.doc %_noFun.doc ${DOC_SUBDIR}/%_lib.pl
201
202# index file for help
203singular.idx: singular.hlp ${HTML_SUBDIR}/${HTML_MANUAL_PREFIX}_cp.idx doc2idx.pl
204        ${PERL} doc2idx.pl singular.hlp ${HTML_SUBDIR}/${HTML_MANUAL_PREFIX}_cp.idx ${CHKSUM_DB} > singular.idx
205
206plural.idx: plural.hlp ${PLU_HTML_SUBDIR}/${PLU_HTML_MANUAL_PREFIX}_cp.idx doc2idx.pl
207        ${PERL} doc2idx.pl plural.hlp ${PLU_HTML_SUBDIR}/${PLU_HTML_MANUAL_PREFIX}_cp.idx ${CHKSUM_DB} > plural.idx
208
209###########################################################
210# stand-alone targest
211#
212
213STANDALONE_TXT_FILES := $(STANDALONE_TEXI_FILES:.texi=.txt)
214STANDALONE_HTML_FILES := $(STANDALONE_TEXI_FILES:.texi=.html)
215STANDALONE_FILES      := $(STANDALONE_TEXI_FILES:.texi=)
216
217PLU_STANDALONE_TXT_FILES := $(PLU_STANDALONE_TEXI_FILES:.texi=.txt)
218PLU_STANDALONE_HTML_FILES := $(PLU_STANDALONE_TEXI_FILES:.texi=.html)
219PLU_STANDALONE_FILES      := $(PLU_STANDALONE_TEXI_FILES:.texi=)
220
221ifeq ($(SINGUNAME),@SINGUNAME@)
222UNAME_OPT = -D UNAME
223endif
224
225# targets which produce stand-alone documents
226%.${SINGUNAME}.txt : %.texi
227        ${MAKEINFO} $(UNAME_OPT) --no-header --paragraph-indent none  -o $@ $<
228
229%.txt :  %.texi
230        ${MAKEINFO} --no-header --paragraph-indent none -o $@ $<
231
232%.${SINGUNAME}.html : %.texi
233        ${PERL} ${TEXI2HTML} $(UNAME_OPT) -init_file t2h_standalone.init -split none -out_file $@ $<
234
235%.html : %.texi
236        ${PERL} ${TEXI2HTML} -init_file t2h_standalone.init -split none -out_file $@ $<
237
238% : %.txt
239        cp $< $@
240
241standalone: standalone-txt standalone-html ${STANDALONE_FILES}
242
243standalone-html: ${STANDALONE_HTML_FILES}
244standalone-txt:  ${STANDALONE_TXT_FILES}
245
246standalone-plural: standalone-txt-plural standalone-html-plural ${PLU_STANDALONE_FILES}
247
248standalone-html-plural: ${PLU_STANDALONE_HTML_FILES}
249standalone-txt-plural:  ${PLU_STANDALONE_TXT_FILES}
250
251
252WWW_DIR = /singular/www/2-0/
253FTP_DIR = /ftp/pub/Math/Singular/Development
254
255install-standalone: standalone
256        cp INSTALL_unix.html COPYING.html INSTALL_win.html ${WWW_DIR}
257        cp COPYING COPYING.html ${FTP_DIR}
258        cp INSTALL_unix INSTALL_unix.html ${FTP_DIR}
259        cp INSTALL_win INSTALL_win.html ${FTP_DIR}
260        cp README_ftp.html ${FTP_DIR}/README.html
261        cp README_ftp ${FTP_DIR}/README
262        cp NEWS.html NEWS ${FTP_DIR}
263        cp NEWS.html ${WWW_DIR}
264        - chmod g+w ${FTP_DIR}/*
265
266
267
268###########################################################
269# html targets
270#
271html: ${TMP_DIR} ${HTML_SUBDIR}/${HTML_MANUAL_TOP} ${IMAGES_HTML} $(STANDALONE_TEXI_FILES)
272${HTML_SUBDIR}/${HTML_MANUAL_TOP}: ${TEXI2HTML_INIT} ${TEXI2HTML} singular.tex
273        ${PERL} ${TEXI2HTML} ${TEXI2HTML_OPTS} -prefix ${HTML_MANUAL_PREFIX} \
274        -top_file ${HTML_MANUAL_TOP} singular.tex
275
276plu_html: pluralmain.tex ${PLU_MANUAL_FILES} ${TMP_DIR} ${PLU_HTML_SUBDIR}/${HTML_MANUAL_TOP} ${PLU_IMAGES_HTML} $(PLU_STANDALONE_TEXI_FILES)
277${PLU_HTML_SUBDIR}/${HTML_MANUAL_TOP}: ${TEXI2HTML_INIT} ${TEXI2HTML} plural.tex
278        ${PERL} ${TEXI2HTML} ${PLU_TEXI2HTML_OPTS} -prefix ${PLU_HTML_MANUAL_PREFIX} \
279        -top_file ${HTML_MANUAL_TOP} pluralmain.tex
280
281# html stuff
282html_tutor: ${TMP_DIR} ${HTML_SUBDIR}/${HTML_TUTOR_TOP} ${IMAGES_HTML}
283${HTML_SUBDIR}/${HTML_TUTOR_TOP}: ${TEXI2HTML_INIT} ${TEXI2HTML} tutor.tex
284        ${PERL} ${TEXI2HTML} ${TEXI2HTML_OPTS} -prefix ${HTML_TUTOR_PREFIX} \
285        -top_file ${HTML_TUTOR_TOP} tutor.tex
286
287${HTML_SUBDIR}/${HTML_MANUAL_PREFIX}_cp.idx: ${HTML_SUBDIR}/${HTML_MANUAL_TOP}
288
289${PLU_HTML_SUBDIR}/${HTML_MANUAL_PREFIX}_cp.idx: ${PLU_HTML_SUBDIR}/${HTML_MANUAL_TOP}
290
291${TMP_DIR}:
292        ${MKINSTALLDIRS} ${TMP_DIR}
293
294# pattern rules for images - but not everybody has gnu-uudecode
295images/%.gif : images/%.gif.uu
296        cd images; ${UUDECODE} ../$< ;cd ..
297
298images/%.jpg : images/%.jpg.uu
299        cd images; ${UUDECODE} ../$< ;cd ..
300
301images/%.xbm : images/%.xbm.uu
302        cd images; ${UUDECODE} ../$< ;cd ..
303
304${IMAGES_HTML} : ${IMAGES_SRC}
305        test -d ${HTML_SUBDIR} || mkdir ${HTML_SUBDIR}
306        cp ${IMAGES_SRC} ${HTML_SUBDIR}
307
308${PLU_IMAGES_HTML} : ${IMAGES_SRC}
309        test -d ${PLU_HTML_SUBDIR} || mkdir ${PLU_HTML_SUBDIR}
310        cp ${IMAGES_SRC} ${PLU_HTML_SUBDIR}
311
312
313
314###########################################################
315# misc targets
316#
317install: singular.hlp html singular.idx standalone
318        ${MKINSTALLDIRS} ${infodir}
319        ${INSTALL_DATA} singular.hlp ${infodir}
320        test -r ${htmldir} || ln -s `pwd`/${HTML_SUBDIR} ${htmldir}
321        test -r ${exdir} || ln -s `pwd`/${EX_SUBDIR} ${exdir}
322
323install-plural: plural.hlp pluhtml plural.idx standalone-plural
324        ${MKINSTALLDIRS} ${infodir}
325        ${INSTALL_DATA} plural.hlp ${infodir}
326        test -r ${htmldir} || ln -s `pwd`/${{PLU_HTML_SUBDIR} ${htmldir}
327        test -r ${exdir} || ln -s `pwd`/${EX_SUBDIR} ${exdir}
328
329uninstall:
330        rm -f ${infodir}/singular.hlp
331        - rmdir ${infodir}
332
333#stupid HP's don't allow copy with many arguments
334install-sharedist: singular.hlp html singular.idx \
335                   ${STANDALONE_HTML_FILES} ${STANDALONE_TXT_FILES}
336        ${MKINSTALLDIRS} ${install_prefix}
337        ${MKINSTALLDIRS} ${install_infodir}
338        ${INSTALL_DATA} singular.hlp ${install_infodir}
339        chmod -R +rX ${install_infodir}
340        ${MKINSTALLDIRS} ${install_htmldir}
341        cp ${HTML_SUBDIR}/*.htm ${install_htmldir}
342        cp ${HTML_SUBDIR}/*.gif ${install_htmldir}
343        cp ${HTML_SUBDIR}/*.jpg ${install_htmldir}
344        chmod -R +rX ${install_htmldir}
345        ${MKINSTALLDIRS} ${install_docdir}
346        ${INSTALL_DATA} singular.idx ${install_docdir}
347        ${INSTALL_DATA} ../GPL ${install_prefix}/GPL
348        ${INSTALL_DATA} COPYING.txt ${install_prefix}/COPYING
349        ${INSTALL_DATA} COPYING.html ${install_prefix}
350        ${INSTALL_DATA} NEWS.txt ${install_prefix}/NEWS
351        ${INSTALL_DATA} NEWS.html ${install_prefix}
352        ${INSTALL_DATA} README_distribution.txt ${install_prefix}/README
353        ${INSTALL_DATA} README_distribution.html ${install_prefix}/README.html
354        chmod -R +rX ${install_docdir}
355        chmod -R +rX ${install_prefix}
356        ${MKINSTALLDIRS} ${install_exdir}
357        cp -R examples ${install_prefix}
358        /bin/rm -f ${install_prefix}/examples/[A-Z]*.res
359        /bin/rm -f ${install_prefix}/examples/*.res
360        /bin/rm -f ${install_prefix}/examples/[A-Z]*.inc
361        /bin/rm -f ${install_prefix}/examples/*.inc
362        chmod -R +rX ${install_prefix}/
363
364install-sharedist-plural: plural.hlp ${PLU_HTML_SUBDIR}/${HTML_MANUAL_TOP} plural.idx \
365                   ${PLU_STANDALONE_HTML_FILES} ${PLU_STANDALONE_TXT_FILES}
366        ${MKINSTALLDIRS} ${install_prefix}
367        ${MKINSTALLDIRS} ${install_infodir}
368        ${INSTALL_DATA} plural.hlp ${install_infodir}
369        cp plural.hlp singular.hlp
370        chmod -R +rX ${install_infodir}
371        ${MKINSTALLDIRS} ${install_htmldir}
372        cp ${PLU_HTML_SUBDIR}/*.htm ${install_htmldir}
373        cp ${PLU_HTML_SUBDIR}/*.gif ${install_htmldir}
374        - cp ${PLU_HTML_SUBDIR}/*.jpg ${install_htmldir}
375        chmod -R +rX ${install_htmldir}
376        ${MKINSTALLDIRS} ${install_docdir}
377        ${INSTALL_DATA} plural.idx ${install_docdir}
378        ${INSTALL_DATA} ../GPL ${install_prefix}/GPL
379        ${INSTALL_DATA} COPYING.plural.txt ${install_prefix}/COPYING
380        ${INSTALL_DATA} COPYING.plural.html ${install_prefix}/COPYING.html
381        ${INSTALL_DATA} NEWS.plural.txt ${install_prefix}/NEWS
382        ${INSTALL_DATA} NEWS.plural.html ${install_prefix}/NEWS.html
383        chmod -R +rX ${install_docdir}
384        chmod -R +rX ${install_prefix}
385        if test -f examples; then \
386                ${MKINSTALLDIRS} ${install_exdir}; \
387                cp -R examples ${install_prefix}; \
388                /bin/rm -f ${install_prefix}/examples/[A-Z]*.res; \
389                /bin/rm -f ${install_prefix}/examples/*.res; \
390                /bin/rm -f ${install_prefix}/examples/[A-Z]*.inc; \
391                /bin/rm -f ${install_prefix}/examples/*.inc; \
392        fi
393        chmod -R +rX ${install_prefix}/
394
395
396# use 'make INSTALL_unix.olaf.txt INSTALL_unix.olaf.html SINGUNAME=olaf'
397# to generate these files for uname 'olaf'
398install-bindist: INSTALL_unix.${SINGUNAME}.txt INSTALL_unix.${SINGUNAME}.html
399        ${MKINSTALLDIRS} ${install_prefix}
400        ${INSTALL_DATA} INSTALL_unix.${SINGUNAME}.txt ${install_prefix}/INSTALL
401        ${INSTALL_DATA} INSTALL_unix.${SINGUNAME}.html ${install_prefix}/INSTALL.html
402
403install-bindist-plural:
404        ${MAKE} install-bindist SINGUNAME=plural
405
406install-ftp: ${STANDALONE_HTML_FILES} ${STANDALONE_TXT_FILES}
407        ${INSTALL_DATA} NEWS.txt ${ftpdir}/NEWS
408        ${INSTALL_DATA} NEWS.html ${ftpdir}
409        ${INSTALL_DATA} COPYING.txt ${ftpdir}/COPYING
410        ${INSTALL_DATA} COPYING.html ${ftpdir}
411        ${INSTALL_DATA} INSTALL_unix.txt ${ftpdir}/INSTALL_unix
412        ${INSTALL_DATA} INSTALL_unix.html ${ftpdir}
413        ${INSTALL_DATA} README_ftp.txt ${ftpdir}/README
414        ${INSTALL_DATA} README_ftp.html ${ftpdir}/README.html
415
416texi2html = $(TEXI2HTML:%.pl=%)
417
418lib2doc.tar.gz:
419        rm -rf lib2doc lib2doc.tar.gz
420        mkdir lib2doc
421        cp Makefile.lib2doc lib2doc/Makefile
422        ${MAKEINFO} --no-header --paragraph-indent none -o lib2doc/README lib2doc.texi
423        cp pl2doc.pl doc2tex.pl ${texi2html} lib2doc
424        tar cf lib2doc.tar lib2doc
425        ${GZIP} lib2doc.tar
426
427clean: mostlyclean
428        /bin/rm -rf singular.tex manual.tex ${DOC_SUBDIR} ${EX_SUBDIR}
429
430mostlyclean:
431        /bin/rm -f .singular_hist doe.tmp dump.ascii example.mp example.txt
432        /bin/rm -f save_i test.ascii test.mp
433        /bin/rm -f Z* *.tst *.pag *.dir *.lst *.log *.aux *.cp *.cps
434        /bin/rm -f *.fn *.fns *.ky *.kys *.log *.pg *.pgs *.toc *.tp
435        /bin/rm -f *.tps *.vr *.vrs *.dvi *.ps
436        /bin/rm -f singular.hlp manual.hlp  ${DOC2TEX_FILES} singular.idx
437        /bin/rm -f plural.hlp manual.hlp  ${PLU_DOC2TEX_FILES}
438        /bin/rm -f ${HTML_SUBDIR}/${HTML_MANUAL_TOP} ${HTML_SUBDIR}/${HTML_TUTOR_TOP}
439        /bin/rm -f ${PLU_HTML_SUBDIR}/${HTML_MANUAL_TOP} ${PLU_HTML_SUBDIR}/${HTML_TUTOR_TOP}
440        /bin/rm -rf ${STANDALONE_HTML_FILES} ${STANDALONE_FILES} ${STANDALONE_TXT_FILES}
441        /bin/rm -f INSTALL_unix.${SINGUNAME}.txt INSTALL_unix.${SINGUNAME}.html
442
443distclean: clean
444        /bin/rm -f Makefile
445        /bin/rm -rf ${HTML_SUBDIR} ../html ../examples
446        /bin/rm -rf ${PLU_HTML_SUBDIR} ../html ../examples
447
448maintainer-clean: distclean
449
450${SINGULAR}:
451#       cd ..; ${MAKE} ${SINGULAR}
452
453Makefile: Makefile.in
454        cd ..;  CONFIG_FILES="doc/Makefile" CONFIG_HEADERS= ./config.status
455
456html-done: ${MANUAL_FILES}
457
Note: See TracBrowser for help on using the repository browser.