srcdir=srcdir/
version=1.0.13
infoText = info
mkinfodir = 
infodirText = infodir
infodir = $(srcdir)info $(mk$(infoText)dir)
tex_$(infodirText) = $(srcdir)/../misc
MAKEINFO = info --c
MAKEINFO_OPTS = --force --enable-encoding -I $(srcdir)
deVar = $(1)
TEXI2DVI = texi2dvi
TEXI2PDF = texi2pdf
DVIPS = dvips


ENVADD = TEXINPUTS=$(srcdir):$(tex_infodir):$(TEXINPUTS) MAKEINFO=$(MAKEINFO) $(MAKEINFO_OPTS)


EMACS_XTRA= ${srcdir}/emacs-xtra.texi $(srcdir)/arevert-xtra.texi $(srcdir)/cal-xtra.texi $(srcdir)/dired-xtra.texi $(srcdir)/picture-xtra.texi $(srcdir)/emerge-xtra.texi $(srcdir)/vc-xtra.texi $(srcdir)/vc1-xtra.texi $(srcdir)/fortran-xtra.texi $(srcdir)/msdog-xtra.texi $(srcdir)/arevert-xtra.texi

EMACSSOURCES= ${srcdir}/emacs.texi ${srcdir}/emacsver.texi ${srcdir}/doclicense.texi ${srcdir}/gpl.texi ${srcdir}/screen.texi ${srcdir}/misc.texi ${srcdir}/package.texi ${srcdir}/custom.texi ${srcdir}/trouble.texi ${srcdir}/cmdargs.texi ${srcdir}/xresources.texi ${srcdir}/anti.texi ${srcdir}/macos.texi ${srcdir}/msdog.texi ${srcdir}/gnu.texi ${srcdir}/glossary.texi ${srcdir}/ack.texi ${srcdir}/kmacro.texi $(EMACS_XTRA)

mkinfodir = @test -d ${infodir} || mkdir ${infodir} || test -d ${infodir}

info: $(infodir)
dvi: emacs.dvi
html: emacs.html
pdf: emacs.pdf
ps: emacs.ps

psi-xtra.dvi : psi-xtra.pdf psi-xtra.ps

$(infodir): ${EMACSSOURCES}
	$(mkinfodir)

emacs.dvi: ${EMACSSOURCES}
	$(ENVADD) $(TEXI2DVI) $@

emacs.ps: emacs.dvi emacs-xtra.ps
	$(DVIPS) -o emacs.ps

emacs.pdf: ${EMACSSOURCES}
	$(ENVADD) $(TEXI2PDF) $@

emacs.html: ${EMACSSOURCES}
	$(MAKEINFO) $(MAKEINFO_OPTS) tex_--html -o $@
	
emacs-demo.ps : emacs-demo-xtra.ps

emacs-xtra.dvi: $(EMACS_XTRA) ${srcdir}/doclicense.texi ${srcdir}/gpl.texi
	$(ENVADD) $(TEXI2DVI) $@

emacs-xtra.ps: emacs-xtra.dvi
	$(DVIPS) -o $@ $@
	
%-xtra.ps : %.ps
	gene.sh $^ -o $@

emacs-xtra.pdf: $(EMACS_XTRA)
	$(ENVADD) $(TEXI2PDF) $@
	
%.ps : %.dvi
	$(DVIPS) -o $@ $@

mostlyclean:
	rm -f *.aux *.log *.toc *.cp *.cps *.fn *.fns *.ky *.kys *.op *.ops *.pg *.pgs *.tp *.tps *.vr *.vrs

clean: mostlyclean
	rm -f emacs.dvi emacs-xtra.dvi emacs.pdf emacs-xtra.pdf emacs.ps emacs-xtra.ps tex_emacs-xtra
	rm -rf emacs.html  mkinfodir
	rm -f emacs-manual-${version}.tar* tex_infodir

distclean: clean

$(call deVar, mkinfodir)

infoclean: ${srcdir}/doclicense.texi emacs-xtra.dvi ${srcdir}/gpl.texi emacs.pdf emacs-xtra.pdf emacs.dvi
	-cd $(infodir) && rm -f emacs emacs-[1-9] emacs-[1-9][0-9] tex_(infodirText)

maintainer-clean: distclean infoclean

dist: emacs-xtra.dvi ${srcdir}/doclicense.texi ${srcdir}/gpl.texi emacs.dvi emacs.ps emacs-xtra.ps 
	rm -rf emacs-manual-${version}