| # This Makefile is for the Bash/documentation directory -*- text -*-. |
| # |
| # Copyright (C) 2003-2009 Free Software Foundation, Inc. |
| |
| # This program is free software: you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation, either version 3 of the License, or |
| # (at your option) any later version. |
| |
| # This program is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| |
| # You should have received a copy of the GNU General Public License |
| # along with this program. If not, see <http://www.gnu.org/licenses/>. |
| |
| PACKAGE = @PACKAGE_NAME@ |
| VERSION = @PACKAGE_VERSION@ |
| |
| PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ |
| PACKAGE_NAME = @PACKAGE_NAME@ |
| PACKAGE_STRING = @PACKAGE_STRING@ |
| PACKAGE_VERSION = @PACKAGE_VERSION@ |
| |
| # |
| SHELL = @MAKE_SHELL@ |
| RM = rm -f |
| |
| topdir = @top_srcdir@ |
| srcdir = @srcdir@ |
| VPATH = .:@srcdir@ |
| |
| prefix = @prefix@ |
| exec_prefix = @exec_prefix@ |
| |
| datarootdir = @datarootdir@ |
| |
| infodir = @infodir@ |
| |
| # set this to a directory name to have the HTML files installed |
| htmldir = @htmldir@ |
| |
| # Support an alternate destination root directory for package building |
| DESTDIR = |
| |
| mandir = @mandir@ |
| manpfx = man |
| |
| man1ext = .1 |
| man1dir = $(mandir)/$(manpfx)1 |
| man3ext = .3 |
| man3dir = $(mandir)/$(manpfx)3 |
| |
| INSTALL = @INSTALL@ |
| INSTALL_DATA = @INSTALL_DATA@ |
| BUILD_DIR = @BUILD_DIR@ |
| |
| SUPPORT_SRCDIR = $(topdir)/support |
| |
| # bad style |
| RL_LIBDIR = $(topdir)/lib/readline |
| |
| # unused |
| TEXINDEX = texindex |
| TEX = tex |
| |
| MAKEINFO = makeinfo |
| TEXI2DVI = ${SUPPORT_SRCDIR}/texi2dvi |
| TEXI2HTML = ${SUPPORT_SRCDIR}/texi2html |
| MAN2HTML = ${BUILD_DIR}/support/man2html |
| HTMLPOST = ${srcdir}/htmlpost.sh |
| INFOPOST = ${srcdir}/infopost.sh |
| QUIETPS = #set this to -q to shut up dvips |
| PAPERSIZE = letter # change to a4 for A4-size paper |
| PSDPI = 600 # could be 300 if you like |
| DVIPS = dvips -D ${PSDPI} $(QUIETPS) -t ${PAPERSIZE} -o $@ # tricky |
| |
| TEXINPUTDIR = $(RL_LIBDIR)/doc |
| SET_TEXINPUTS = TEXINPUTS=.:$(TEXINPUTDIR):$$TEXINPUTS |
| |
| # These tools might not be available; they're not required |
| DVIPDF = dvipdfm -o $@ -p ${PAPERSIZE} |
| PSPDF = gs -sPAPERSIZE=${PAPERSIZE} -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -sOutputFile=$@ |
| |
| MKDIRS = ${SUPPORT_SRCDIR}/mkdirs |
| |
| # This should be a program that converts troff to an ascii-readable format |
| NROFF = groff -Tascii |
| |
| # This should be a program that converts troff to postscript |
| GROFF = groff |
| |
| HSUSER = $(RL_LIBDIR)/doc/hsuser.texi |
| RLUSER = $(RL_LIBDIR)/doc/rluser.texi |
| |
| BASHREF_FILES = $(srcdir)/bashref.texi $(srcdir)/version.texi |
| |
| .SUFFIXES: .0 .1 .3 .ms .ps .txt .dvi .html .pdf |
| |
| .1.ps: |
| $(RM) $@ |
| -${GROFF} -man $< > $@ |
| |
| .1.0: |
| $(RM) $@ |
| -${NROFF} -man $< > $@ |
| |
| .1.html: |
| $(RM) $@ |
| -${MAN2HTML} $< | ${HTMLPOST} > $@ |
| |
| .ms.ps: |
| $(RM) $@ |
| -${GROFF} -ms $< > $@ |
| |
| .ms.txt: |
| $(RM) $@ |
| -${NROFF} -ms $< > $@ |
| |
| .3.ps: |
| $(RM) $@ |
| -${GROFF} -man $< > $@ |
| |
| .3.0: |
| $(RM) $@ |
| -${NROFF} -man $< > $@ |
| |
| .3.html: |
| $(RM) $@ |
| -${MAN2HTML} $< > $@ |
| |
| .ps.pdf: |
| $(RM) $@ |
| -${PSPDF} $< |
| |
| .dvi.pdf: |
| $(RM) $@ |
| -${DVIPDF} $< |
| |
| .dvi.ps: |
| ${RM} $@ |
| -${DVIPS} $< |
| |
| all: ps info dvi text html |
| nodvi: ps info text html |
| everything: all pdf |
| |
| PSFILES = bash.ps bashbug.ps article.ps builtins.ps rbash.ps |
| DVIFILES = bashref.dvi bashref.ps |
| INFOFILES = bashref.info |
| MAN0FILES = bash.0 bashbug.0 builtins.0 rbash.0 |
| HTMLFILES = bashref.html bash.html |
| PDFFILES = bash.pdf bashref.pdf article.pdf rose94.pdf |
| |
| ps: ${PSFILES} |
| dvi: ${DVIFILES} |
| info: ${INFOFILES} |
| text: ${MAN0FILES} |
| html: ${HTMLFILES} |
| pdf: ${PDFFILES} |
| |
| bashref.dvi: $(BASHREF_FILES) $(HSUSER) $(RLUSER) |
| ${SET_TEXINPUTS} $(TEXI2DVI) $(srcdir)/bashref.texi |
| |
| bashref.info: $(BASHREF_FILES) $(HSUSER) $(RLUSER) |
| $(MAKEINFO) --no-split -I$(TEXINPUTDIR) $(srcdir)/bashref.texi |
| |
| bashref.html: $(BASHREF_FILES) $(HSUSER) $(RLUSER) |
| $(TEXI2HTML) -menu -monolithic -I $(TEXINPUTDIR) $(srcdir)/bashref.texi |
| |
| bash.info: bashref.info |
| ${SHELL} ${INFOPOST} < $(srcdir)/bashref.info > $@ ; \ |
| |
| bash.txt: bash.1 |
| bash.ps: bash.1 |
| bash.html: bash.1 $(MAN2HTML) |
| bashbug.ps: bashbug.1 |
| builtins.ps: builtins.1 bash.1 |
| rbash.ps: rbash.1 bash.1 |
| bash.0: bash.1 |
| bashbug.0: bashbug.1 |
| builtins.0: builtins.1 bash.1 |
| rbash.0: rbash.1 bash.1 |
| article.ps: article.ms |
| |
| bashref.ps: bashref.dvi |
| |
| article.pdf: article.ps |
| bashref.pdf: bashref.dvi |
| bash.pdf: bash.ps |
| rose94.pdf: rose94.ps |
| |
| $(MAN2HTML): ${topdir}/support/man2html.c |
| -( cd ${BUILD_DIR}/support ; ${MAKE} ${MFLAGS} man2html) |
| |
| clean: |
| $(RM) *.aux *.bak *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.cps \ |
| *.pgs *.bt *.bts *.rw *.rws *.fns *.kys *.tps *.vrs *.o |
| ${RM} core *.core |
| |
| mostlyclean: clean |
| $(RM) Makefile |
| |
| distclean: clean maybe-clean |
| $(RM) Makefile |
| |
| maintainer-clean: clean |
| ${RM} ${PSFILES} ${DVIFILES} ${INFOFILES} ${MAN0FILES} ${HTMLFILES} |
| ${RM} ${CREATED_FAQ} |
| $(RM) Makefile |
| |
| maybe-clean: |
| -if test "X$(topdir)" != "X$(BUILD_DIR)"; then \ |
| $(RM) ${PSFILES} ${DVIFILES} ${INFOFILES} ${MAN0FILES} ${HTMLFILES}; \ |
| fi |
| |
| installdirs: |
| -$(SHELL) $(SUPPORT_SRCDIR)/mkinstalldirs $(DESTDIR)$(man1dir) |
| -$(SHELL) $(SUPPORT_SRCDIR)/mkinstalldirs $(DESTDIR)$(infodir) |
| -if test -n "$(htmldir)" ; then \ |
| $(SHELL) $(SUPPORT_SRCDIR)/mkinstalldirs $(DESTDIR)$(htmldir) ; \ |
| fi |
| |
| install: info installdirs bash.info |
| -$(INSTALL_DATA) $(srcdir)/bash.1 $(DESTDIR)$(man1dir)/bash${man1ext} |
| -$(INSTALL_DATA) $(srcdir)/bashbug.1 $(DESTDIR)$(man1dir)/bashbug${man1ext} |
| # uncomment the next lines to install the builtins man page |
| # sed 's:bash\.1:man1/&:' $(srcdir)/builtins.1 > $${TMPDIR:-/var/tmp}/builtins.1 |
| # -$(INSTALL_DATA) $${TMPDIR:-/var/tmp}/builtins.1 $(DESTDIR)$(man1dir)/bash_builtins${man1ext} |
| # -$(RM) $${TMPDIR:-/var/tmp}/builtins.1 |
| -if test -f bash.info; then d=.; else d=$(srcdir); fi; \ |
| $(INSTALL_DATA) $$d/bash.info $(DESTDIR)$(infodir)/bash.info |
| # run install-info if it is present to update the info directory |
| if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \ |
| install-info --dir-file=$(DESTDIR)$(infodir)/dir $(DESTDIR)$(infodir)/bash.info; \ |
| else true; fi |
| # if htmldir is set, install the html files into that directory |
| -if test -n "${htmldir}" ; then \ |
| $(INSTALL_DATA) $(srcdir)/bash.html $(DESTDIR)$(htmldir) ; \ |
| $(INSTALL_DATA) $(srcdir)/bashref.html $(DESTDIR)$(htmldir) ; \ |
| fi |
| |
| install_builtins: installdirs |
| sed 's:bash\.1:man1/&:' $(srcdir)/builtins.1 > $${TMPDIR:-/var/tmp}/builtins.1 |
| -$(INSTALL_DATA) $${TMPDIR:-/var/tmp}/builtins.1 $(DESTDIR)$(man1dir)/bash_builtins${man1ext} |
| -$(RM) $${TMPDIR:-/var/tmp}/builtins.1 |
| |
| install_everything: install install_builtins |
| |
| uninstall: |
| -$(RM) $(DESTDIR)$(man1dir)/bash${man1ext} $(DESTDIR)$(man1dir)/bashbug${man1ext} |
| -$(RM) $(DESTDIR)$(man1dir)/bash_builtins${man1ext} |
| $(RM) $(DESTDIR)$(infodir)/bash.info |
| -if test -n "$(htmldir)" ; then \ |
| $(RM) $(DESTDIR)$(htmldir)/bash.html ; \ |
| $(RM) $(DESTDIR)$(htmldir)/bashref.html ; \ |
| fi |
| |
| # for use by chet |
| CREATED_FAQ = faq.news faq.news2 faq.mail faq.version |
| |
| faq: ${CREATED_FAQ} |
| |
| faq.version: FAQ.version FAQ |
| sh mkfaqvers FAQ.version > $@ |
| |
| faq.headers.mail: FAQ.headers.mail FAQ |
| sh mkfaqvers FAQ.headers.mail > $@ |
| |
| faq.headers.news: FAQ.headers.news FAQ |
| sh mkfaqvers FAQ.headers.news > $@ |
| |
| faq.headers.news2: FAQ.headers.news2 FAQ |
| sh mkfaqvers FAQ.headers.news2 > $@ |
| |
| faq.news: FAQ faq.headers.news faq.version |
| $(RM) $@ |
| cat faq.headers.news faq.version FAQ > $@ |
| |
| faq.news2: FAQ faq.headers.news2 faq.version |
| $(RM) $@ |
| cat faq.headers.news2 faq.version FAQ > $@ |
| |
| faq.mail: FAQ faq.headers.mail faq.version |
| $(RM) $@ |
| cat faq.headers.mail faq.version FAQ > $@ |
| |
| inst: bashref.texi |
| $(SHELL) ./mkinstall |
| cmp -s INSTALL ../INSTALL || mv INSTALL ../INSTALL |
| $(RM) INSTALL |
| |
| posix: bashref.texi |
| $(SHELL) ./mkposix |
| cmp -s POSIX ../POSIX || mv POSIX ../POSIX |
| $(RM) POSIX |
| |
| rbash: bashref.texi |
| $(SH) ./mkrbash |
| cmp -s RBASH ../RBASH || mv RBASH ../RBASH |
| $(RM) RBASH |
| |
| xdist: pdf inst posix rbash |