# Normally you do not need to remake the files here. But if you want # to you will need the GNU TeX-info utilities. To make a Postscript # files you also need TeX and dvips. To make the PDF file you will # need pdftex. We use the teTeX distribution for all of these. # We avoid default automake rules because of problems with .dvi file # and BSD makes # If you know how to fix any of this more elegantly please mail # docs@mysql.com TEXI2HTML_FLAGS = -iso -number -acc DVIPS = dvips MAKEINFO = @MAKEINFO@ TEXINFO_TEX = Support/texinfo.tex noinst_SCRIPTS = Support/texi2html Support/generate-text-files.pl \ Support/generate-mirror-listing.pl info_TEXINFOS = manual.texi targets = manual.txt mysql.info manual.html BUILT_SOURCES = $(targets) manual_toc.html include.texi EXTRA_DIST = $(noinst_SCRIPTS) $(BUILT_SOURCES) mysqld_error.txt \ INSTALL-BINARY reservedwords.texi internals.texi SUBDIRS = Images all: $(targets) txt_files txt_files: ../INSTALL-SOURCE ../COPYING ../INSTALL-WIN-SOURCE ../EXCEPTIONS-CLIENT \ INSTALL-BINARY ../support-files/MacOSX/ReadMe.txt CLEAN_FILES: $(BUILD_SOURCES) touch $(BUILD_SOURCES) # The PostScript and PDF version are so big that they are not included in the # standard distribution. It is available for download from the home page. paper: manual_a4.ps manual_letter.ps $(PDFMANUAL) ######################################################################### # The Makefile contains the previous version so we can not use that include.texi: ../configure.in echo "@c This file is autogenerated by the Makefile" > $@ echo -n "@set mysqlversion " >> $@ grep "AM_INIT_AUTOMAKE(mysql, " ../configure.in | \ sed -e 's;AM_INIT_AUTOMAKE(mysql, ;;' -e 's;);;' >> $@ echo -n "@set defaultport " >> $@ grep "MYSQL_TCP_PORT_DEFAULT=" ../configure.in | \ sed -e 's;MYSQL_TCP_PORT_DEFAULT=;;' >> $@ # # English Manual # # GNU Info mysql.info: manual.texi include.texi cd $(srcdir) && $(MAKEINFO) --no-split -I $(srcdir) $< # Plain Text manual.txt: manual.texi include.texi cd $(srcdir) && \ $(MAKEINFO) -I $(srcdir) --no-headers --no-split --output $@ $< # HTML, all in one file manual.html: manual.texi include.texi $(srcdir)/Support/texi2html cd $(srcdir) && @PERL@ $(srcdir)/Support/texi2html $(TEXI2HTML_FLAGS) $< manual_toc.html: manual.html # PDF, Portable Document Format manual.pdf: manual.texi sed -e 's|@image{[^}]*} *||g' <$< >manual-tmp.texi pdftex --interaction=nonstopmode manual-tmp.texi texindex manual-tmp.?? pdftex --interaction=nonstopmode manual-tmp.texi texindex manual-tmp.?? pdftex --interaction=nonstopmode manual-tmp.texi mv manual-tmp.pdf $@ rm -f manual-tmp.* touch $@ # XML, DocBook 4.0 mysql.xml: manual.texi include.texi $(MAKEINFO) --force --no-ifinfo --docbook $< mv $@ mysql-tmp.xml Support/docbook-fixup.pl $@ rm -f mysql-tmp.xml # Postscript, A4 Paper manual_a4.ps: manual.texi include.texi TEXINPUTS=$(srcdir):$$TEXINPUTS \ MAKEINFO='$(MAKEINFO) -I $(srcdir)' \ $(TEXI2DVI) --batch --texinfo --quiet '@afourpaper' $< $(DVIPS) -t a4 manual.dvi -o $@ touch $@ # Postscript, US Letter Paper manual_letter.ps: manual.texi include.texi TEXINPUTS=$(srcdir):$$TEXINPUTS \ MAKEINFO='$(MAKEINFO) -I $(srcdir)' \ $(TEXI2DVI) --batch $< $(DVIPS) -t letter manual.dvi -o $@ touch $@ # # German Manual # # GNU Info mysql.de.info: manual.de.texi include.texi cd $(srcdir) && $(MAKEINFO) --no-split -I $(srcdir) $< # Plain Text manual.de.txt: manual.de.texi include.texi cd $(srcdir) && \ $(MAKEINFO) -I $(srcdir) --no-headers --no-split --output $@ $< # HTML, all in one file manual.de.html: manual.de.texi include.texi $(srcdir)/Support/texi2html cd $(srcdir) && @PERL@ $(srcdir)/Support/texi2html $(TEXI2HTML_FLAGS) $< manual_toc.de.html: manual.html # PDF, Portable Document Format manual.de.pdf: manual.de.texi sed -e 's|@image{[^}]*} *||g' <$< >manual-tmp.texi pdftex --interaction=nonstopmode manual-tmp.texi texindex manual-tmp.?? pdftex --interaction=nonstopmode manual-tmp.texi texindex manual-tmp.?? pdftex --interaction=nonstopmode manual-tmp.texi mv manual-tmp.pdf $@ rm -f manual-tmp.* touch $@ # XML, DocBook 4.0 mysql.de.xml: manual.de.texi include.texi $(MAKEINFO) --force --no-ifinfo --docbook $< mv $@ mysql-tmp.xml Support/docbook-fixup.pl $@ rm -f mysql-tmp.xml # Postscript, A4 Paper manual_a4.de.ps: manual.de.texi include.texi TEXINPUTS=$(srcdir):$$TEXINPUTS \ MAKEINFO='$(MAKEINFO) -I $(srcdir)' \ $(TEXI2DVI) --batch --texinfo --quiet '@afourpaper' $< $(DVIPS) -t a4 manual.de.dvi -o $@ touch $@ # Postscript, US Letter Paper manual_letter.de.ps: manual.de.texi include.texi TEXINPUTS=$(srcdir):$$TEXINPUTS \ MAKEINFO='$(MAKEINFO) -I $(srcdir)' \ $(TEXI2DVI) --batch $< $(DVIPS) -t letter manual.de.dvi -o $@ touch $@ # # Miscellaneous # # Target to produce NuSphere Manual nusphere.pdf: manual.texi sed -e 's/@example/@smallexample/g' \ -e 's/@end example/@end smallexample/g' \ -e 's/@c ifnusphere //g' \ -e 's|@image{[^}]*} *||g' \ <$< >manual-tmp.texi pdftex --interaction=nonstopmode manual-tmp.texi texindex manual-tmp.?? pdftex --interaction=nonstopmode manual-tmp.texi texindex manual-tmp.?? pdftex --interaction=nonstopmode manual-tmp.texi mv manual-tmp.pdf $@ rm -f manual-tmp.* touch $@ # Include images for the manual in the distribution dist-hook: BD=`cd $(top_srcdir); pwd`; \ echo "PostScript and PDF versions suitable for printing" \ > $(distdir)/manual.ps echo "are available from http://dev.mysql.com/doc/" \ >> $(distdir)/manual.ps echo "or any mirror site" \ >> $(distdir)/manual.ps GT = $(srcdir)/Support/generate-text-files.pl ../INSTALL-SOURCE: mysql.info $(GT) perl -w $(GT) mysql.info "Installing" "Tutorial" > $@ ../INSTALL-WIN-SOURCE: mysql.info $(GT) perl -w $(GT) mysql.info "Windows source build" "Post-installation" > $@ # We put the description for the binary installation here so that # people who download source wont have to see it. It is moved up to # the toplevel by the script that makes the binary tar files. INSTALL-BINARY: mysql.info $(GT) perl -w $(GT) mysql.info "Installing binary" "Installing source" > $@ ../COPYING: mysql.info $(GT) perl -w $(GT) mysql.info "GPL license" "MySQL FLOSS License Exception" > $@ ../EXCEPTIONS-CLIENT: mysql.info $(GT) perl -w $(GT) mysql.info "MySQL FLOSS License Exception" "Function Index" > $@ ../support-files/MacOSX/ReadMe.txt: mysql.info $(GT) perl -w $(GT) mysql.info "Mac OS X installation" "NetWare installation" > $@ # Don't update the files from bitkeeper %::SCCS/s.%