PERL = perl
TEXINDEX=texindex
MAKEINFO = makeinfo 
infodir =/usr/info#normally supplied by caller
INSTALL = install

info: emacspeak.texinfo emacspeak-main.texinfo
	makeinfo emacspeak.texinfo
install: emacspeak.info
	if test ! -f $(infodir)/dir ; then \
		echo '  --- PLEASE ADD DOCUMENTATION TO THIS TREE. (See INFO topic first.) ---' >$(infodir)/dir ; \
	  echo '* Menu:' >>$(infodir)/dir ; \
	fi 
	if fgrep emacspeak $(infodir)/dir 1> /dev/null 2> /dev/null; then \
	  echo >/dev/null; \
	else \
	  echo '* Emacspeak:(emacspeak).  A speech interface to Emacs' >>$(infodir)/dir ;\
	fi
	$(INSTALL)  -m 644 emacspeak.info* $(infodir)

emacspeak.info: emacspeak.texinfo emacspeak-main.texinfo
	$(MAKEINFO) emacspeak.texinfo

emacspeak-main.texinfo: all.el explain
	$(PERL) explain all.el >all.log

ELISP=../*.el

# all.el is all of the elisp files concatenated (with some substitutions)
all.el: $(ELISP)
	cat $(ELISP) | sed \
	-e 's/\\\\\[dtk-emergency-restart\]/@samp{M-x dtk-emergency-restart}/'\
	-e 's/\\\\\[dtk-initialize\]/@samp{M-x dtk-initialize}/' \
	-e 's/\\\\\[keyboard-quit\]/@samp{C-g}/' \
	-e 's/\\\\\[yank\]/@samp{C-y}/' \
	-e 's/\\\\\[yank-pop\]/@samp{ESC y}/' \
	-e 's/\\\\\[voice-lock-voiceify-buffer\]/@samp{M-x voice-lock-voiceify-buffer}/' \
	> all.el

SRC= emacspeak.texinfo  explain Makefile 

dist: $(SRC)
	distname=`sed -e '/\$Revision:/!d' \
		-e 's/[^0-9]*\([0-9.]*\).*/emacspeak-texi-\1/' \
		-e q emacspeak.texinfo`; \
	rm -fr $$distname; \
	mkdir $$distname; \
	for file in $(SRC); do \
	  ln $$file $$distname/$$file \
	  || { echo copying $$file instead; cp -p $$file $$distname/$$file;}; \
	done; \
	chmod -R a+rX $$distname; \
	tar -chz -f $$distname.tar.gz $$distname; \
	rm -fr $$distname

TEXINFO = dtk-speak.texinfo \
dtk-tcl.texinfo \
emacspeak-advice.texinfo \
emacspeak-auctex.texinfo \
emacspeak-bbdb.texinfo \
emacspeak-bibtex.texinfo \
emacspeak-buff-sel.texinfo \
emacspeak-c.texinfo \
emacspeak-calc.texinfo \
emacspeak-calendar.texinfo \
emacspeak-compile.texinfo \
emacspeak-dired.texinfo \
emacspeak-dismal.texinfo \
emacspeak-dmacro.texinfo \
emacspeak-ediff.texinfo \
emacspeak-enriched.texinfo \
emacspeak-eterm.texinfo \
emacspeak-fix-interactive.texinfo \
emacspeak-folding.texinfo \
emacspeak-forms.texinfo \
emacspeak-gnus.texinfo \
emacspeak-hyperbole.texinfo \
emacspeak-info.texinfo \
emacspeak-keymap.texinfo \
emacspeak-kotl.texinfo \
emacspeak-main.texinfo \
emacspeak-man.texinfo \
emacspeak-message.texinfo \
emacspeak-new-ediff.texinfo \
emacspeak-oo-browser.texinfo \
emacspeak-outline.texinfo \
emacspeak-perl.texinfo \
emacspeak-pronounce.texinfo \
emacspeak-redefine.texinfo \
emacspeak-rmail.texinfo \
emacspeak-sgml-mode.texinfo \
emacspeak-sounds.texinfo \
emacspeak-speak.texinfo \
emacspeak-table-ui.texinfo \
emacspeak-tabulate.texinfo \
emacspeak-tapestry.texinfo \
emacspeak-tcl.texinfo \
emacspeak-tempo.texinfo \
emacspeak-view-process.texinfo \
emacspeak-view.texinfo \
emacspeak-vm.texinfo \
emacspeak-w3.texinfo \
emacspeak-widget.texinfo \
emacspeak-wrolo.texinfo \
variables.texinfo \
voice-lock.texinfo 


clean:
	rm -rf all.el all.log $(TEXINFO)

veryclean: clean
	rm -rf emacspeak.info*


emacspeak.dvi:		emacspeak.texinfo
	tex emacspeak.texinfo
	$(TEXINDEX) emacspeak.cp  emacspeak.fn  emacspeak.ky  emacspeak.pg  emacspeak.tp  emacspeak.vr
	tex emacspeak.texinfo
	rm -f 	emacspeak.cp  emacspeak.fn  emacspeak.ky  emacspeak.pg  emacspeak.tp  emacspeak.vr 	\
		emacspeak.cps emacspeak.fns emacspeak.kys emacspeak.pgs emacspeak.tps emacspeak.vrs	\
		emacspeak.log emacspeak.toc emacspeak.aux

print: emacspeak.dvi
	dvips emacspeak.dvi

