* tramp.texi (Alternative Syntax): Remove chapter.
[bpt/emacs.git] / doc / misc / Makefile.in
index 087d62e..30fc495 100644 (file)
@@ -17,7 +17,7 @@
 # You should have received a copy of the GNU General Public License
 # along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
-SHELL = /bin/sh
+SHELL = @SHELL@
 
 # Where to find the source code.  $(srcdir) will be the man-aux
 # subdirectory of the source tree.  This is
@@ -59,7 +59,11 @@ INSTALL_DATA = @INSTALL_DATA@
 MAKEINFO = @MAKEINFO@
 MAKEINFO_OPTS = --force -I$(emacsdir)
 
-INFO_TARGETS = ada-mode auth autotype bovine calc ccmode cl \
+## On MS Windows, efaq-w32; otherwise blank.
+DOCMISC_W32 = @DOCMISC_W32@
+
+## Info files to build and install on all platforms.
+INFO_COMMON = ada-mode auth autotype bovine calc ccmode cl \
        dbus dired-x ebrowse ede ediff edt eieio \
        emacs-mime epa erc ert eshell eudc efaq \
        flymake forms gnus emacs-gnutls htmlfontify idlwave ido info.info \
@@ -68,237 +72,23 @@ INFO_TARGETS = ada-mode auth autotype bovine calc ccmode cl \
        sc semantic ses sieve smtpmail speedbar srecode todo-mode tramp \
        url vip viper widget wisent woman
 
-DVI_TARGETS = \
-       ada-mode.dvi \
-       auth.dvi \
-       autotype.dvi \
-       bovine.dvi \
-       calc.dvi \
-       cc-mode.dvi \
-       cl.dvi \
-       dbus.dvi \
-       dired-x.dvi \
-       ebrowse.dvi \
-       ede.dvi \
-       ediff.dvi \
-       edt.dvi \
-       eieio.dvi \
-       emacs-mime.dvi \
-       epa.dvi \
-       erc.dvi \
-       ert.dvi \
-       eshell.dvi \
-       eudc.dvi \
-       faq.dvi \
-       flymake.dvi \
-       forms.dvi \
-       gnus.dvi \
-       emacs-gnutls.dvi \
-       htmlfontify.dvi \
-       idlwave.dvi \
-       ido.dvi \
-       info.dvi \
-       mairix-el.dvi \
-       message.dvi \
-       mh-e.dvi \
-       newsticker.dvi \
-       nxml-mode.dvi \
-       org.dvi \
-       pcl-cvs.dvi \
-       pgg.dvi \
-       rcirc.dvi \
-       reftex.dvi \
-       remember.dvi \
-       sasl.dvi \
-       sc.dvi \
-       semantic.dvi \
-       ses.dvi \
-       sieve.dvi \
-       smtpmail.dvi \
-       speedbar.dvi \
-       srecode.dvi \
-       todo-mode.dvi \
-       tramp.dvi \
-       url.dvi \
-       vip.dvi \
-       viper.dvi \
-       widget.dvi \
-       wisent.dvi \
-       woman.dvi
-
-HTML_TARGETS = \
-       ada-mode.html \
-       auth.html \
-       autotype.html \
-       bovine.html \
-       calc.html \
-       cc-mode.html \
-       cl.html \
-       dbus.html \
-       dired-x.html \
-       ebrowse.html \
-       ede.html \
-       ediff.html \
-       edt.html \
-       eieio.html \
-       emacs-mime.html \
-       epa.html \
-       erc.html \
-       ert.html \
-       eshell.html \
-       eudc.html \
-       faq.html \
-       flymake.html \
-       forms.html \
-       gnus.html \
-       emacs-gnutls.html \
-       htmlfontify.html \
-       idlwave.html \
-       ido.html \
-       info.html \
-       mairix-el.html \
-       message.html \
-       mh-e.html \
-       newsticker.html \
-       nxml-mode.html \
-       org.html \
-       pcl-cvs.html \
-       pgg.html \
-       rcirc.html \
-       reftex.html \
-       remember.html \
-       sasl.html \
-       sc.html \
-       semantic.html \
-       ses.html \
-       sieve.html \
-       smtpmail.html \
-       speedbar.html \
-       srecode.html \
-       todo-mode.html \
-       tramp.html \
-       url.html \
-       vip.html \
-       viper.html \
-       widget.html \
-       wisent.html \
-       woman.html
-
-PDF_TARGETS = \
-       ada-mode.pdf \
-       auth.pdf \
-       autotype.pdf \
-       bovine.pdf \
-       calc.pdf \
-       cc-mode.pdf \
-       cl.pdf \
-       dbus.pdf \
-       dired-x.pdf \
-       ebrowse.pdf \
-       ede.pdf \
-       ediff.pdf \
-       edt.pdf \
-       eieio.pdf \
-       emacs-mime.pdf \
-       epa.pdf \
-       erc.pdf \
-       ert.pdf \
-       eshell.pdf \
-       eudc.pdf \
-       faq.pdf \
-       flymake.pdf \
-       forms.pdf \
-       gnus.pdf \
-       htmlfontify.pdf \
-       emacs-gnutls.pdf \
-       idlwave.pdf \
-       ido.pdf \
-       info.pdf \
-       mairix-el.pdf \
-       message.pdf \
-       mh-e.pdf \
-       newsticker.pdf \
-       nxml-mode.pdf \
-       org.pdf \
-       pcl-cvs.pdf \
-       pgg.pdf \
-       rcirc.pdf \
-       reftex.pdf \
-       remember.pdf \
-       sasl.pdf \
-       sc.pdf \
-       semantic.pdf \
-       ses.pdf \
-       sieve.pdf \
-       smtpmail.pdf \
-       speedbar.pdf \
-       srecode.pdf \
-       todo-mode.pdf \
-       tramp.pdf \
-       url.pdf \
-       vip.pdf \
-       viper.pdf \
-       widget.pdf \
-       wisent.pdf \
-       woman.pdf
-
-PS_TARGETS = \
-       ada-mode.ps \
-       auth.ps \
-       autotype.ps \
-       bovine.ps \
-       calc.ps \
-       cc-mode.ps \
-       cl.ps \
-       dbus.ps \
-       dired-x.ps \
-       ebrowse.ps \
-       ede.ps \
-       ediff.ps \
-       edt.ps \
-       eieio.ps \
-       emacs-mime.ps \
-       epa.ps \
-       erc.ps \
-       ert.ps \
-       eshell.ps \
-       eudc.ps \
-       faq.ps \
-       flymake.ps \
-       forms.ps \
-       gnus.ps \
-       htmlfontify.ps \
-       emacs-gnutls.ps \
-       idlwave.ps \
-       ido.ps \
-       info.ps \
-       mairix-el.ps \
-       message.ps \
-       mh-e.ps \
-       newsticker.ps \
-       nxml-mode.ps \
-       org.ps \
-       pcl-cvs.ps \
-       pgg.ps \
-       rcirc.ps \
-       reftex.ps \
-       remember.ps \
-       sasl.ps \
-       sc.ps \
-       semantic.ps \
-       ses.ps \
-       sieve.ps \
-       smtpmail.ps \
-       speedbar.ps \
-       srecode.ps \
-       todo-mode.ps \
-       tramp.ps \
-       url.ps \
-       vip.ps \
-       viper.ps \
-       widget.ps \
-       wisent.ps \
-       woman.ps
+## Info files to install on current platform.
+INFO_INSTALL = $(INFO_COMMON) $(DOCMISC_INFO_W32)
+
+## Info files to build on current platform.
+## This is all of them, even though they might not all get installed,
+## because the info files are pre-built in release tarfiles.
+INFO_TARGETS = $(INFO_COMMON) efaq-w32
+
+# There are some naming differences between the info targets and the other
+# targets, so let's resolve them here.
+TARGETS_1 = $(INFO_INSTALL:ccmode=cc-mode)
+TARGETS = $(TARGETS_1:info.info=info)
+
+DVI_TARGETS  = $(TARGETS:=.dvi)
+HTML_TARGETS = $(TARGETS:=.html)
+PDF_TARGETS  = $(TARGETS:=.pdf)
+PS_TARGETS   = $(TARGETS:=.ps)
 
 TEXI2DVI = texi2dvi
 TEXI2PDF = texi2pdf
@@ -326,13 +116,9 @@ info: $(INFO_TARGETS)
 ## Used by top-level Makefile.
 ## Base file names of output info files.
 echo-info:
-       @echo "$(INFO_TARGETS) " | \
+       @echo "$(INFO_INSTALL) " | \
          sed -e 's|[^ ]*/||g' -e 's/\.info//g' -e "s/  */$(INFO_EXT) /g"
 
-# please modify this for all the web manual targets
-webhack: clean
-       $(MAKE) pdf MAKEINFO_OPTS="-DWEBHACKDEVEL $(MAKEINFO_OPTS)"
-
 dvi: $(DVI_TARGETS)
 
 html: $(HTML_TARGETS)
@@ -347,631 +133,699 @@ ps: $(PS_TARGETS)
 
 # Note: "<" is not portable in ordinary make rules.
 
+ada_mode_deps = ${srcdir}/ada-mode.texi ${gfdl}
 ada-mode : $(buildinfodir)/ada-mode$(INFO_EXT)
-$(buildinfodir)/ada-mode$(INFO_EXT): ${srcdir}/ada-mode.texi ${gfdl}
+$(buildinfodir)/ada-mode$(INFO_EXT): $(ada_mode_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ada-mode.texi
-ada-mode.dvi: ${srcdir}/ada-mode.texi ${gfdl}
+ada-mode.dvi: $(ada_mode_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ada-mode.texi
-ada-mode.pdf: ${srcdir}/ada-mode.texi ${gfdl}
+ada-mode.pdf: $(ada_mode_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ada-mode.texi
-ada-mode.html: ${srcdir}/ada-mode.texi ${gfdl}
+ada-mode.html: $(ada_mode_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ada-mode.texi
 
+auth_deps = ${srcdir}/auth.texi ${gfdl}
 auth : $(buildinfodir)/auth$(INFO_EXT)
-$(buildinfodir)/auth$(INFO_EXT): ${srcdir}/auth.texi ${gfdl}
+$(buildinfodir)/auth$(INFO_EXT): $(auth_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/auth.texi
-auth.dvi: ${srcdir}/auth.texi ${gfdl}
+auth.dvi: $(auth_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/auth.texi
-auth.pdf: ${srcdir}/auth.texi ${gfdl}
+auth.pdf: $(auth_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/auth.texi
-auth.html: ${srcdir}/auth.texi ${gfdl}
+auth.html: $(auth_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/auth.texi
 
+autotype_deps = ${srcdir}/autotype.texi ${gfdl}
 autotype : $(buildinfodir)/autotype$(INFO_EXT)
-$(buildinfodir)/autotype$(INFO_EXT): ${srcdir}/autotype.texi ${gfdl}
+$(buildinfodir)/autotype$(INFO_EXT): $(autotype_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/autotype.texi
-autotype.dvi: ${srcdir}/autotype.texi ${gfdl}
+autotype.dvi: $(autotype_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/autotype.texi
-autotype.pdf: ${srcdir}/autotype.texi ${gfdl}
+autotype.pdf: $(autotype_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/autotype.texi
-autotype.html: ${srcdir}/autotype.texi ${gfdl}
+autotype.html: $(autotype_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/autotype.texi
 
+bovine_deps = ${srcdir}/bovine.texi ${gfdl}
 bovine : $(buildinfodir)/bovine$(INFO_EXT)
-$(buildinfodir)/bovine$(INFO_EXT): ${srcdir}/bovine.texi ${gfdl}
+$(buildinfodir)/bovine$(INFO_EXT): $(bovine_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/bovine.texi
-bovine.dvi: ${srcdir}/bovine.texi ${gfdl}
+bovine.dvi: $(bovine_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/bovine.texi
-bovine.pdf: ${srcdir}/bovine.texi ${gfdl}
+bovine.pdf: $(bovine_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/bovine.texi
-bovine.html: ${srcdir}/bovine.texi ${gfdl}
+bovine.html: $(bovine_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/bovine.texi
 
+calc_deps = ${srcdir}/calc.texi $(emacsdir)/emacsver.texi ${gfdl}
 calc : $(buildinfodir)/calc$(INFO_EXT)
-$(buildinfodir)/calc$(INFO_EXT): ${srcdir}/calc.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/calc$(INFO_EXT): $(calc_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/calc.texi
-calc.dvi: ${srcdir}/calc.texi $(emacsdir)/emacsver.texi ${gfdl}
+calc.dvi: $(calc_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/calc.texi
-calc.pdf: ${srcdir}/calc.texi $(emacsdir)/emacsver.texi ${gfdl}
+calc.pdf: $(calc_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/calc.texi
-calc.html: ${srcdir}/calc.texi $(emacsdir)/emacsver.texi ${gfdl}
+calc.html: $(calc_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/calc.texi
 
+ccmode_deps = ${srcdir}/cc-mode.texi ${gfdl}
 ccmode : $(buildinfodir)/ccmode$(INFO_EXT)
-$(buildinfodir)/ccmode$(INFO_EXT): ${srcdir}/cc-mode.texi ${gfdl}
+$(buildinfodir)/ccmode$(INFO_EXT): $(cc_mode_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/cc-mode.texi
-cc-mode.dvi: ${srcdir}/cc-mode.texi ${gfdl}
+cc-mode.dvi: $(cc_mode_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/cc-mode.texi
-cc-mode.pdf: ${srcdir}/cc-mode.texi ${gfdl}
+cc-mode.pdf: $(cc_mode_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/cc-mode.texi
-cc-mode.html: ${srcdir}/cc-mode.texi ${gfdl}
+cc-mode.html: $(cc_mode_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/cc-mode.texi
 
+cl_deps = ${srcdir}/cl.texi $(emacsdir)/emacsver.texi ${gfdl}
 cl : $(buildinfodir)/cl$(INFO_EXT)
-$(buildinfodir)/cl$(INFO_EXT): ${srcdir}/cl.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/cl$(INFO_EXT): $(cl_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/cl.texi
-cl.dvi: ${srcdir}/cl.texi $(emacsdir)/emacsver.texi ${gfdl}
+cl.dvi: $(cl_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/cl.texi
-cl.pdf: ${srcdir}/cl.texi $(emacsdir)/emacsver.texi ${gfdl}
+cl.pdf: $(cl_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/cl.texi
-cl.html: ${srcdir}/cl.texi $(emacsdir)/emacsver.texi ${gfdl}
+cl.html: $(cl_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/cl.texi
 
+dbus_deps = ${srcdir}/dbus.texi ${gfdl}
 dbus : $(buildinfodir)/dbus$(INFO_EXT)
-$(buildinfodir)/dbus$(INFO_EXT): ${srcdir}/dbus.texi ${gfdl}
+$(buildinfodir)/dbus$(INFO_EXT): $(dbus_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/dbus.texi
-dbus.dvi: ${srcdir}/dbus.texi ${gfdl}
+dbus.dvi: $(dbus_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/dbus.texi
-dbus.pdf: ${srcdir}/dbus.texi ${gfdl}
+dbus.pdf: $(dbus_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/dbus.texi
-dbus.html: ${srcdir}/dbus.texi ${gfdl}
+dbus.html: $(dbus_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/dbus.texi
 
+dired_x_deps = ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi ${gfdl}
 dired-x : $(buildinfodir)/dired-x$(INFO_EXT)
-$(buildinfodir)/dired-x$(INFO_EXT): ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/dired-x$(INFO_EXT): $(dired_x_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/dired-x.texi
-dired-x.dvi: ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi ${gfdl}
+dired-x.dvi: $(dired_x_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/dired-x.texi
-dired-x.pdf: ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi ${gfdl}
+dired-x.pdf: $(dired_x_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/dired-x.texi
-dired-x.html: ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi ${gfdl}
+dired-x.html: $(dired_x_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/dired-x.texi
 
+ebrowse_deps = ${srcdir}/ebrowse.texi ${gfdl}
 ebrowse : $(buildinfodir)/ebrowse$(INFO_EXT)
-$(buildinfodir)/ebrowse$(INFO_EXT): ${srcdir}/ebrowse.texi ${gfdl}
+$(buildinfodir)/ebrowse$(INFO_EXT): $(ebrowse_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ebrowse.texi
-ebrowse.dvi: ${srcdir}/ebrowse.texi ${gfdl}
+ebrowse.dvi: $(ebrowse_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ebrowse.texi
-ebrowse.pdf: ${srcdir}/ebrowse.texi ${gfdl}
+ebrowse.pdf: $(ebrowse_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ebrowse.texi
-ebrowse.html: ${srcdir}/ebrowse.texi ${gfdl}
+ebrowse.html: $(ebrowse_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ebrowse.texi
 
+ede_deps = ${srcdir}/ede.texi ${gfdl}
 ede : $(buildinfodir)/ede$(INFO_EXT)
-$(buildinfodir)/ede$(INFO_EXT): ${srcdir}/ede.texi ${gfdl}
+$(buildinfodir)/ede$(INFO_EXT): $(ede_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ede.texi
-ede.dvi: ${srcdir}/ede.texi ${gfdl}
+ede.dvi: $(ede_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ede.texi
-ede.pdf: ${srcdir}/ede.texi ${gfdl}
+ede.pdf: $(ede_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ede.texi
-ede.html: ${srcdir}/ede.texi ${gfdl}
+ede.html: $(ede_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ede.texi
 
+ediff_deps = ${srcdir}/ediff.texi ${gfdl}
 ediff : $(buildinfodir)/ediff$(INFO_EXT)
-$(buildinfodir)/ediff$(INFO_EXT): ${srcdir}/ediff.texi ${gfdl}
+$(buildinfodir)/ediff$(INFO_EXT): $(ediff_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ediff.texi
-ediff.dvi: ${srcdir}/ediff.texi ${gfdl}
+ediff.dvi: $(ediff_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ediff.texi
-ediff.pdf: ${srcdir}/ediff.texi ${gfdl}
+ediff.pdf: $(ediff_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ediff.texi
-ediff.html: ${srcdir}/ediff.texi ${gfdl}
+ediff.html: $(ediff_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ediff.texi
 
+edt_deps = ${srcdir}/edt.texi ${gfdl}
 edt : $(buildinfodir)/edt$(INFO_EXT)
-$(buildinfodir)/edt$(INFO_EXT): ${srcdir}/edt.texi ${gfdl}
+$(buildinfodir)/edt$(INFO_EXT): $(edt_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/edt.texi
-edt.dvi: ${srcdir}/edt.texi ${gfdl}
+edt.dvi: $(edt_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/edt.texi
-edt.pdf: ${srcdir}/edt.texi ${gfdl}
+edt.pdf: $(edt_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/edt.texi
-edt.html: ${srcdir}/edt.texi ${gfdl}
+edt.html: $(edt_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/edt.texi
 
+## No gfdl dependency.
+efaq_deps = ${srcdir}/efaq.texi $(emacsdir)/emacsver.texi
+efaq : $(buildinfodir)/efaq$(INFO_EXT)
+$(buildinfodir)/efaq$(INFO_EXT): $(efaq_deps)
+       $(mkinfodir)
+       $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/efaq.texi
+efaq.dvi: $(efaq_deps)
+       $(ENVADD) $(TEXI2DVI) ${srcdir}/efaq.texi
+efaq.pdf: $(efaq_deps)
+       $(ENVADD) $(TEXI2PDF) ${srcdir}/efaq.texi
+efaq.html: $(efaq_deps)
+       $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/efaq.texi
+
+efaq_w32_deps = ${srcdir}/efaq-w32.texi $(emacsdir)/emacsver.texi
+efaq-w32 : $(buildinfodir)/efaq-w32$(INFO_EXT)
+$(buildinfodir)/efaq-w32$(INFO_EXT): $(efaq_w32_deps)
+       $(mkinfodir)
+       $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/efaq-w32.texi
+efaq-w32.dvi: $(efaq_w32_deps)
+       $(ENVADD) $(TEXI2DVI) ${srcdir}/efaq-w32.texi
+efaq-w32.pdf: $(efaq_w32_deps)
+       $(ENVADD) $(TEXI2PDF) ${srcdir}/efaq-w32.texi
+efaq-w32.html: $(efaq_w32_deps)
+       $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/efaq-w32.texi
+
+eieio_deps = ${srcdir}/eieio.texi ${gfdl}
 eieio : $(buildinfodir)/eieio$(INFO_EXT)
-$(buildinfodir)/eieio$(INFO_EXT): ${srcdir}/eieio.texi ${gfdl}
+$(buildinfodir)/eieio$(INFO_EXT): $(eieio_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/eieio.texi
-eieio.dvi: ${srcdir}/eieio.texi ${gfdl}
+eieio.dvi: $(eieio_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/eieio.texi
-eieio.pdf: ${srcdir}/eieio.texi ${gfdl}
+eieio.pdf: $(eieio_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/eieio.texi
-eieio.html: ${srcdir}/eieio.texi ${gfdl}
+eieio.html: $(eieio_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/eieio.texi
 
+emacs_gnutls_deps = ${srcdir}/emacs-gnutls.texi ${gfdl}
 emacs-gnutls : $(buildinfodir)/emacs-gnutls$(INFO_EXT)
-$(buildinfodir)/emacs-gnutls$(INFO_EXT): ${srcdir}/emacs-gnutls.texi ${gfdl}
+$(buildinfodir)/emacs-gnutls$(INFO_EXT): $(emacs_gnutls_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/emacs-gnutls.texi
-emacs-gnutls.dvi: ${srcdir}/emacs-gnutls.texi ${gfdl}
+emacs-gnutls.dvi: $(emacs_gnutls_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-gnutls.texi
-emacs-gnutls.pdf: ${srcdir}/emacs-gnutls.texi ${gfdl}
+emacs-gnutls.pdf: $(emacs_gnutls_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-gnutls.texi
-emacs-gnutls.html: ${srcdir}/emacs-gnutls.texi ${gfdl}
+emacs-gnutls.html: $(emacs_gnutls_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/emacs-gnutls.texi
 
+emacs_mime_deps = ${srcdir}/emacs-mime.texi ${gfdl}
 emacs-mime : $(buildinfodir)/emacs-mime$(INFO_EXT)
-$(buildinfodir)/emacs-mime$(INFO_EXT): ${srcdir}/emacs-mime.texi ${gfdl}
+$(buildinfodir)/emacs-mime$(INFO_EXT): $(emacs_mime_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) --enable-encoding -o $@ ${srcdir}/emacs-mime.texi
-emacs-mime.dvi: ${srcdir}/emacs-mime.texi ${gfdl}
+emacs-mime.dvi: $(emacs_mime_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-mime.texi
-emacs-mime.pdf: ${srcdir}/emacs-mime.texi ${gfdl}
+emacs-mime.pdf: $(emacs_mime_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-mime.texi
-emacs-mime.html: ${srcdir}/emacs-mime.texi ${gfdl}
+emacs-mime.html: $(emacs_mime_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) --enable-encoding -o $@ ${srcdir}/emacs-mime.texi
 
+epa_deps = ${srcdir}/epa.texi ${gfdl}
 epa : $(buildinfodir)/epa$(INFO_EXT)
-$(buildinfodir)/epa$(INFO_EXT): ${srcdir}/epa.texi ${gfdl}
+$(buildinfodir)/epa$(INFO_EXT): $(epa_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/epa.texi
-epa.dvi: ${srcdir}/epa.texi ${gfdl}
+epa.dvi: $(epa_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/epa.texi
-epa.pdf: ${srcdir}/epa.texi ${gfdl}
+epa.pdf: $(epa_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/epa.texi
-epa.html: ${srcdir}/epa.texi ${gfdl}
+epa.html: $(epa_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/epa.texi
 
+erc_deps = ${srcdir}/erc.texi $(emacsdir)/emacsver.texi ${gfdl}
 erc : $(buildinfodir)/erc$(INFO_EXT)
-$(buildinfodir)/erc$(INFO_EXT): ${srcdir}/erc.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/erc$(INFO_EXT): $(erc_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/erc.texi
-erc.dvi: ${srcdir}/erc.texi $(emacsdir)/emacsver.texi ${gfdl}
+erc.dvi: $(erc_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/erc.texi
-erc.pdf: ${srcdir}/erc.texi $(emacsdir)/emacsver.texi ${gfdl}
+erc.pdf: $(erc_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/erc.texi
-erc.html: ${srcdir}/erc.texi $(emacsdir)/emacsver.texi ${gfdl}
+erc.html: $(erc_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/erc.texi
 
+ert_deps = ${srcdir}/ert.texi ${gfdl}
 ert : $(buildinfodir)/ert$(INFO_EXT)
-$(buildinfodir)/ert$(INFO_EXT): ${srcdir}/ert.texi ${gfdl}
+$(buildinfodir)/ert$(INFO_EXT): $(ert_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ert.texi
-ert.dvi: ${srcdir}/ert.texi ${gfdl}
+ert.dvi: $(ert_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ert.texi
-ert.pdf: ${srcdir}/ert.texi ${gfdl}
+ert.pdf: $(ert_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ert.texi
-ert.html: ${srcdir}/ert.texi ${gfdl}
+ert.html: $(ert_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ert.texi
 
+eshell_deps = ${srcdir}/eshell.texi ${gfdl}
 eshell : $(buildinfodir)/eshell$(INFO_EXT)
-$(buildinfodir)/eshell$(INFO_EXT): ${srcdir}/eshell.texi ${gfdl}
+$(buildinfodir)/eshell$(INFO_EXT): $(eshell_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/eshell.texi
-eshell.dvi: ${srcdir}/eshell.texi ${gfdl}
+eshell.dvi: $(eshell_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/eshell.texi
-eshell.pdf: ${srcdir}/eshell.texi ${gfdl}
+eshell.pdf: $(eshell_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/eshell.texi
-eshell.html: ${srcdir}/eshell.texi ${gfdl}
+eshell.html: $(eshell_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/eshell.texi
 
+eudc_deps = ${srcdir}/eudc.texi ${gfdl}
 eudc : $(buildinfodir)/eudc$(INFO_EXT)
-$(buildinfodir)/eudc$(INFO_EXT): ${srcdir}/eudc.texi ${gfdl}
+$(buildinfodir)/eudc$(INFO_EXT): $(eudc_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/eudc.texi
-eudc.dvi: ${srcdir}/eudc.texi ${gfdl}
+eudc.dvi: $(eudc_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/eudc.texi
-eudc.pdf: ${srcdir}/eudc.texi ${gfdl}
+eudc.pdf: $(eudc_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/eudc.texi
-eudc.html: ${srcdir}/eudc.texi ${gfdl}
+eudc.html: $(eudc_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/eudc.texi
 
-## No gfdl dependency.
-efaq : $(buildinfodir)/efaq$(INFO_EXT)
-$(buildinfodir)/efaq$(INFO_EXT): ${srcdir}/faq.texi $(emacsdir)/emacsver.texi
-       $(mkinfodir)
-       $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/faq.texi
-faq.dvi: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi
-       $(ENVADD) $(TEXI2DVI) ${srcdir}/faq.texi
-faq.pdf: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi
-       $(ENVADD) $(TEXI2PDF) ${srcdir}/faq.texi
-faq.html: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi
-       $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/faq.texi
-
+flymake_deps = ${srcdir}/flymake.texi ${gfdl}
 flymake : $(buildinfodir)/flymake$(INFO_EXT)
-$(buildinfodir)/flymake$(INFO_EXT): ${srcdir}/flymake.texi ${gfdl}
+$(buildinfodir)/flymake$(INFO_EXT): $(flymake_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/flymake.texi
-flymake.dvi: ${srcdir}/flymake.texi ${gfdl}
+flymake.dvi: $(flymake_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/flymake.texi
-flymake.pdf: ${srcdir}/flymake.texi ${gfdl}
+flymake.pdf: $(flymake_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/flymake.texi
-flymake.html: ${srcdir}/flymake.texi ${gfdl}
+flymake.html: $(flymake_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/flymake.texi
 
+forms_deps = ${srcdir}/forms.texi ${gfdl}
 forms : $(buildinfodir)/forms$(INFO_EXT)
-$(buildinfodir)/forms$(INFO_EXT): ${srcdir}/forms.texi ${gfdl}
+$(buildinfodir)/forms$(INFO_EXT): $(forms_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/forms.texi
-forms.dvi: ${srcdir}/forms.texi ${gfdl}
+forms.dvi: $(forms_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/forms.texi
-forms.pdf: ${srcdir}/forms.texi ${gfdl}
+forms.pdf: $(forms_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/forms.texi
-forms.html: ${srcdir}/forms.texi ${gfdl}
+forms.html: $(forms_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/forms.texi
 
-# gnus/message/emacs-mime/sieve/pgg are part of Gnus:
+## gnus/message/emacs-mime/sieve/pgg are part of Gnus.
+gnus_deps = ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl}
 gnus : $(buildinfodir)/gnus$(INFO_EXT)
-$(buildinfodir)/gnus$(INFO_EXT): ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl}
+$(buildinfodir)/gnus$(INFO_EXT): $(gnus_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/gnus.texi
-gnus.dvi: ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl}
+gnus.dvi: $(gnus_deps)
        sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi
        $(ENVADD) $(TEXI2DVI) gnustmp.texi
        cp gnustmp.dvi $@
        rm gnustmp.*
-gnus.pdf: ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl}
+gnus.pdf: $(gnus_deps)
        sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi
        $(ENVADD) $(TEXI2PDF) gnustmp.texi
        cp gnustmp.pdf $@
        rm gnustmp.*
-gnus.html: ${srcdir}/gnus.texi ${srcdir}/gnus-faq.texi ${gfdl}
+gnus.html: $(gnus_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/gnus.texi
 
+htmlfontify_deps = ${srcdir}/htmlfontify.texi ${gfdl}
 htmlfontify : $(buildinfodir)/htmlfontify$(INFO_EXT)
-$(buildinfodir)/htmlfontify$(INFO_EXT): ${srcdir}/htmlfontify.texi ${gfdl}
+$(buildinfodir)/htmlfontify$(INFO_EXT): $(htmlfontify_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/htmlfontify.texi
-htmlfontify.dvi: ${srcdir}/htmlfontify.texi ${gfdl}
+htmlfontify.dvi: $(htmlfontify_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/htmlfontify.texi
-htmlfontify.pdf: ${srcdir}/htmlfontify.texi ${gfdl}
+htmlfontify.pdf: $(htmlfontify_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/htmlfontify.texi
-htmlfontify.html: ${srcdir}/htmlfontify.texi ${gfdl}
+htmlfontify.html: $(htmlfontify_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/htmlfontify.texi
 
-# NB this one needs --no-split even without a .info extension.
+idlwave_deps = ${srcdir}/idlwave.texi ${gfdl}
 idlwave : $(buildinfodir)/idlwave$(INFO_EXT)
-$(buildinfodir)/idlwave$(INFO_EXT): ${srcdir}/idlwave.texi ${gfdl}
+# NB this one needs --no-split even without a .info extension.
+$(buildinfodir)/idlwave$(INFO_EXT): $(idlwave_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/idlwave.texi
-idlwave.dvi: ${srcdir}/idlwave.texi ${gfdl}
+idlwave.dvi: $(idlwave_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/idlwave.texi
-idlwave.pdf: ${srcdir}/idlwave.texi ${gfdl}
+idlwave.pdf: $(idlwave_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/idlwave.texi
-idlwave.html: ${srcdir}/idlwave.texi ${gfdl}
+idlwave.html: $(idlwave_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/idlwave.texi
 
+ido_deps = ${srcdir}/ido.texi $(emacsdir)/emacsver.texi ${gfdl}
 ido : $(buildinfodir)/ido$(INFO_EXT)
-$(buildinfodir)/ido$(INFO_EXT): ${srcdir}/ido.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/ido$(INFO_EXT): $(ido_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ido.texi
-ido.dvi: ${srcdir}/ido.texi $(emacsdir)/emacsver.texi ${gfdl}
+ido.dvi: $(ido_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ido.texi
-ido.pdf: ${srcdir}/ido.texi $(emacsdir)/emacsver.texi ${gfdl}
+ido.pdf: $(ido_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ido.texi
-ido.html: ${srcdir}/ido.texi $(emacsdir)/emacsver.texi ${gfdl}
+ido.html: $(ido_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ido.texi
 
-# NB this one needs --no-split even without a .info extension.
+info_deps = ${srcdir}/info.texi ${gfdl}
 # Avoid name clash with overall "info" target.
 info.info : $(buildinfodir)/info$(INFO_EXT)
-$(buildinfodir)/info$(INFO_EXT): ${srcdir}/info.texi ${gfdl}
+# NB this one needs --no-split even without a .info extension.
+$(buildinfodir)/info$(INFO_EXT): $(info_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/info.texi
-info.dvi: ${srcdir}/info.texi ${gfdl}
+info.dvi: $(info_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/info.texi
-info.pdf: ${srcdir}/info.texi ${gfdl}
+info.pdf: $(info_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/info.texi
-info.html: ${srcdir}/info.texi ${gfdl}
+info.html: $(info_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/info.texi
 
+mairix_el_deps = ${srcdir}/mairix-el.texi ${gfdl}
 mairix-el : $(buildinfodir)/mairix-el$(INFO_EXT)
-$(buildinfodir)/mairix-el$(INFO_EXT): ${srcdir}/mairix-el.texi ${gfdl}
+$(buildinfodir)/mairix-el$(INFO_EXT): $(mairix_el_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/mairix-el.texi
-mairix-el.dvi: ${srcdir}/mairix-el.texi ${gfdl}
+mairix-el.dvi: $(mairix_el_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/mairix-el.texi
-mairix-el.pdf: ${srcdir}/mairix-el.texi ${gfdl}
+mairix-el.pdf: $(mairix_el_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/mairix-el.texi
-mairix-el.html: ${srcdir}/mairix-el.texi ${gfdl}
+mairix-el.html: $(mairix_el_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/mairix-el.texi
 
+message_deps = ${srcdir}/message.texi ${gfdl}
 message : $(buildinfodir)/message$(INFO_EXT)
-$(buildinfodir)/message$(INFO_EXT): ${srcdir}/message.texi ${gfdl}
+$(buildinfodir)/message$(INFO_EXT): $(message_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/message.texi
-message.dvi: ${srcdir}/message.texi ${gfdl}
+message.dvi: $(message_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/message.texi
-message.pdf: ${srcdir}/message.texi ${gfdl}
+message.pdf: $(message_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/message.texi
-message.html: ${srcdir}/message.texi ${gfdl}
+message.html: $(message_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/message.texi
 
+mh_e_deps = ${srcdir}/mh-e.texi ${gfdl}
 mh-e : $(buildinfodir)/mh-e$(INFO_EXT)
-$(buildinfodir)/mh-e$(INFO_EXT): ${srcdir}/mh-e.texi ${gfdl}
+$(buildinfodir)/mh-e$(INFO_EXT): $(mh_e_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/mh-e.texi
-mh-e.dvi: ${srcdir}/mh-e.texi ${gfdl}
+mh-e.dvi: $(mh_e_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/mh-e.texi
-mh-e.pdf: ${srcdir}/mh-e.texi ${gfdl}
+mh-e.pdf: $(mh_e_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/mh-e.texi
-mh-e.html: ${srcdir}/mh-e.texi ${gfdl}
+mh-e.html: $(mh_e_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/mh-e.texi
 
+newsticker_deps = ${srcdir}/newsticker.texi ${gfdl}
 newsticker : $(buildinfodir)/newsticker$(INFO_EXT)
-$(buildinfodir)/newsticker$(INFO_EXT): ${srcdir}/newsticker.texi ${gfdl}
+$(buildinfodir)/newsticker$(INFO_EXT): $(newsticker_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/newsticker.texi
-newsticker.dvi: ${srcdir}/newsticker.texi ${gfdl}
+newsticker.dvi: $(newsticker_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/newsticker.texi
-newsticker.pdf: ${srcdir}/newsticker.texi ${gfdl}
+newsticker.pdf: $(newsticker_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/newsticker.texi
-newsticker.html: ${srcdir}/newsticker.texi ${gfdl}
+newsticker.html: $(newsticker_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/newsticker.texi
 
+nxml_mode_deps = ${srcdir}/nxml-mode.texi ${gfdl}
 nxml-mode : $(buildinfodir)/nxml-mode$(INFO_EXT)
-$(buildinfodir)/nxml-mode$(INFO_EXT): ${srcdir}/nxml-mode.texi ${gfdl}
+$(buildinfodir)/nxml-mode$(INFO_EXT): $(nxml_mode_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/nxml-mode.texi
-nxml-mode.dvi: ${srcdir}/nxml-mode.texi ${gfdl}
+nxml-mode.dvi: $(nxml_mode_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/nxml-mode.texi
-nxml-mode.pdf: ${srcdir}/nxml-mode.texi ${gfdl}
+nxml-mode.pdf: $(nxml_mode_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/nxml-mode.texi
-nxml-mode.html: ${srcdir}/nxml-mode.texi ${gfdl}
+nxml-mode.html: $(nxml_mode_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/nxml-mode.texi
 
+org_deps = ${srcdir}/org.texi ${gfdl}
 org : $(buildinfodir)/org$(INFO_EXT)
-$(buildinfodir)/org$(INFO_EXT): ${srcdir}/org.texi ${gfdl}
+$(buildinfodir)/org$(INFO_EXT): $(org_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/org.texi
-org.dvi: ${srcdir}/org.texi ${gfdl}
+org.dvi: $(org_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/org.texi
-org.pdf: ${srcdir}/org.texi ${gfdl}
+org.pdf: $(org_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/org.texi
-org.html: ${srcdir}/org.texi ${gfdl}
+org.html: $(org_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/org.texi
 
+pcl_cvs_deps = ${srcdir}/pcl-cvs.texi ${gfdl}
 pcl-cvs : $(buildinfodir)/pcl-cvs$(INFO_EXT)
-$(buildinfodir)/pcl-cvs$(INFO_EXT): ${srcdir}/pcl-cvs.texi ${gfdl}
+$(buildinfodir)/pcl-cvs$(INFO_EXT): $(pcl_cvs_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/pcl-cvs.texi
-pcl-cvs.dvi: ${srcdir}/pcl-cvs.texi ${gfdl}
+pcl-cvs.dvi: $(pcl_cvs_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/pcl-cvs.texi
-pcl-cvs.pdf: ${srcdir}/pcl-cvs.texi ${gfdl}
+pcl-cvs.pdf: $(pcl_cvs_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/pcl-cvs.texi
-pcl-cvs.html: ${srcdir}/pcl-cvs.texi ${gfdl}
+pcl-cvs.html: $(pcl_cvs_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/pcl-cvs.texi
 
+pgg_deps = ${srcdir}/pgg.texi ${gfdl}
 pgg : $(buildinfodir)/pgg$(INFO_EXT)
-$(buildinfodir)/pgg$(INFO_EXT): ${srcdir}/pgg.texi ${gfdl}
+$(buildinfodir)/pgg$(INFO_EXT): $(pgg_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/pgg.texi
-pgg.dvi: ${srcdir}/pgg.texi ${gfdl}
+pgg.dvi: $(pgg_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/pgg.texi
-pgg.pdf: ${srcdir}/pgg.texi ${gfdl}
+pgg.pdf: $(pgg_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/pgg.texi
-pgg.html: ${srcdir}/pgg.texi ${gfdl}
+pgg.html: $(pgg_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/pgg.texi
 
+rcirc_deps = ${srcdir}/rcirc.texi ${gfdl}
 rcirc : $(buildinfodir)/rcirc$(INFO_EXT)
-$(buildinfodir)/rcirc$(INFO_EXT): ${srcdir}/rcirc.texi ${gfdl}
+$(buildinfodir)/rcirc$(INFO_EXT): $(rcirc_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/rcirc.texi
-rcirc.dvi: ${srcdir}/rcirc.texi ${gfdl}
+rcirc.dvi: $(rcirc_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/rcirc.texi
-rcirc.pdf: ${srcdir}/rcirc.texi ${gfdl}
+rcirc.pdf: $(rcirc_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/rcirc.texi
-rcirc.html: ${srcdir}/rcirc.texi ${gfdl}
+rcirc.html: $(rcirc_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/rcirc.texi
 
+reftex_deps = ${srcdir}/reftex.texi $(emacsdir)/emacsver.texi ${gfdl}
 reftex : $(buildinfodir)/reftex$(INFO_EXT)
-$(buildinfodir)/reftex$(INFO_EXT): ${srcdir}/reftex.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/reftex$(INFO_EXT): $(reftex_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/reftex.texi
-reftex.dvi: ${srcdir}/reftex.texi $(emacsdir)/emacsver.texi ${gfdl}
+reftex.dvi: $(reftex_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/reftex.texi
-reftex.pdf: ${srcdir}/reftex.texi $(emacsdir)/emacsver.texi ${gfdl}
+reftex.pdf: $(reftex_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/reftex.texi
-reftex.html: ${srcdir}/reftex.texi $(emacsdir)/emacsver.texi ${gfdl}
+reftex.html: $(reftex_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/reftex.texi
 
+remember_deps = ${srcdir}/remember.texi ${gfdl}
 remember : $(buildinfodir)/remember$(INFO_EXT)
-$(buildinfodir)/remember$(INFO_EXT): ${srcdir}/remember.texi ${gfdl}
+$(buildinfodir)/remember$(INFO_EXT): $(remember_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/remember.texi
-remember.dvi: ${srcdir}/remember.texi ${gfdl}
+remember.dvi: $(remember_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/remember.texi
-remember.pdf: ${srcdir}/remember.texi ${gfdl}
+remember.pdf: $(remember_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/remember.texi
-remember.html: ${srcdir}/remember.texi ${gfdl}
+remember.html: $(remember_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/remember.texi
 
+sasl_deps = ${srcdir}/sasl.texi ${gfdl}
 sasl : $(buildinfodir)/sasl$(INFO_EXT)
-$(buildinfodir)/sasl$(INFO_EXT): ${srcdir}/sasl.texi ${gfdl}
+$(buildinfodir)/sasl$(INFO_EXT): $(sasl_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/sasl.texi
-sasl.dvi: ${srcdir}/sasl.texi ${gfdl}
+sasl.dvi: $(sasl_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/sasl.texi
-sasl.pdf: ${srcdir}/sasl.texi ${gfdl}
+sasl.pdf: $(sasl_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/sasl.texi
-sasl.html: ${srcdir}/sasl.texi ${gfdl}
+sasl.html: $(sasl_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/sasl.texi
 
+sc_deps = ${srcdir}/sc.texi ${gfdl}
 sc : $(buildinfodir)/sc$(INFO_EXT)
-$(buildinfodir)/sc$(INFO_EXT): ${srcdir}/sc.texi ${gfdl}
+$(buildinfodir)/sc$(INFO_EXT): $(sc_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/sc.texi
-sc.dvi: ${srcdir}/sc.texi ${gfdl}
+sc.dvi: $(sc_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/sc.texi
-sc.pdf: ${srcdir}/sc.texi ${gfdl}
+sc.pdf: $(sc_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/sc.texi
-sc.html: ${srcdir}/sc.texi ${gfdl}
+sc.html: $(sc_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/sc.texi
 
+semantic_deps = ${srcdir}/semantic.texi ${srcdir}/sem-user.texi ${gfdl}
 semantic : $(buildinfodir)/semantic$(INFO_EXT)
-$(buildinfodir)/semantic$(INFO_EXT): ${srcdir}/semantic.texi ${srcdir}/sem-user.texi ${gfdl}
+$(buildinfodir)/semantic$(INFO_EXT): $(semantic_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/semantic.texi
-semantic.dvi: ${srcdir}/semantic.texi ${srcdir}/sem-user.texi ${gfdl}
+semantic.dvi: $(semantic_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/semantic.texi
-semantic.pdf: ${srcdir}/semantic.texi ${srcdir}/sem-user.texi ${gfdl}
+semantic.pdf: $(semantic_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/semantic.texi
-semantic.html: ${srcdir}/semantic.texi ${srcdir}/sem-user.texi ${gfdl}
+semantic.html: $(semantic_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/semantic.texi
 
+ses_deps = ${srcdir}/ses.texi ${gfdl}
 ses : $(buildinfodir)/ses$(INFO_EXT)
-$(buildinfodir)/ses$(INFO_EXT): ${srcdir}/ses.texi ${gfdl}
+$(buildinfodir)/ses$(INFO_EXT): $(ses_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/ses.texi
-ses.dvi: ${srcdir}/ses.texi ${gfdl}
+ses.dvi: $(ses_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/ses.texi
-ses.pdf: ${srcdir}/ses.texi ${gfdl}
+ses.pdf: $(ses_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/ses.texi
-ses.html: ${srcdir}/ses.texi ${gfdl}
+ses.html: $(ses_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/ses.texi
 
+sieve_deps = ${srcdir}/sieve.texi ${gfdl}
 sieve : $(buildinfodir)/sieve$(INFO_EXT)
-$(buildinfodir)/sieve$(INFO_EXT): ${srcdir}/sieve.texi ${gfdl}
+$(buildinfodir)/sieve$(INFO_EXT): $(sieve_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/sieve.texi
-sieve.dvi: ${srcdir}/sieve.texi ${gfdl}
+sieve.dvi: $(sieve_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/sieve.texi
-sieve.pdf: ${srcdir}/sieve.texi ${gfdl}
+sieve.pdf: $(sieve_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/sieve.texi
-sieve.html: ${srcdir}/sieve.texi ${gfdl}
+sieve.html: $(sieve_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/sieve.texi
 
+smtpmail_deps = ${srcdir}/smtpmail.texi ${gfdl}
 smtpmail : $(buildinfodir)/smtpmail$(INFO_EXT)
-$(buildinfodir)/smtpmail$(INFO_EXT): ${srcdir}/smtpmail.texi ${gfdl}
+$(buildinfodir)/smtpmail$(INFO_EXT): $(smtpmail_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/smtpmail.texi
-smtpmail.dvi: ${srcdir}/smtpmail.texi ${gfdl}
+smtpmail.dvi: $(smtpmail_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/smtpmail.texi
-smtpmail.pdf: ${srcdir}/smtpmail.texi ${gfdl}
+smtpmail.pdf: $(smtpmail_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/smtpmail.texi
-smtpmail.html: ${srcdir}/smtpmail.texi ${gfdl}
+smtpmail.html: $(smtpmail_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/smtpmail.texi
 
+speedbar_deps = ${srcdir}/speedbar.texi ${gfdl}
 speedbar : $(buildinfodir)/speedbar$(INFO_EXT)
-$(buildinfodir)/speedbar$(INFO_EXT): ${srcdir}/speedbar.texi ${gfdl}
+$(buildinfodir)/speedbar$(INFO_EXT): $(speedbar_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/speedbar.texi
-speedbar.dvi: ${srcdir}/speedbar.texi ${gfdl}
+speedbar.dvi: $(speedbar_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/speedbar.texi
-speedbar.pdf: ${srcdir}/speedbar.texi ${gfdl}
+speedbar.pdf: $(speedbar_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/speedbar.texi
-speedbar.html: ${srcdir}/speedbar.texi ${gfdl}
+speedbar.html: $(speedbar_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/speedbar.texi
 
+srecode_deps = ${srcdir}/srecode.texi ${gfdl}
 srecode : $(buildinfodir)/srecode$(INFO_EXT)
-$(buildinfodir)/srecode$(INFO_EXT): ${srcdir}/srecode.texi ${gfdl}
+$(buildinfodir)/srecode$(INFO_EXT): $(srecode_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/srecode.texi
-srecode.dvi: ${srcdir}/srecode.texi ${gfdl}
+srecode.dvi: $(srecode_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/srecode.texi
-srecode.pdf: ${srcdir}/srecode.texi ${gfdl}
+srecode.pdf: $(srecode_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/srecode.texi
-srecode.html: ${srcdir}/srecode.texi ${gfdl}
+srecode.html: $(srecode_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/srecode.texi
 
+todo_mode_deps = ${srcdir}/todo-mode.texi ${gfdl}
 todo-mode : $(buildinfodir)/todo-mode$(INFO_EXT)
-$(buildinfodir)/todo-mode$(INFO_EXT): ${srcdir}/todo-mode.texi ${gfdl}
+$(buildinfodir)/todo-mode$(INFO_EXT): $(todo_mode_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/todo-mode.texi
-todo-mode.dvi: ${srcdir}/todo-mode.texi ${gfdl}
+todo-mode.dvi: $(todo_mode_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/todo-mode.texi
-todo-mode.pdf: ${srcdir}/todo-mode.texi ${gfdl}
+todo-mode.pdf: $(todo_mode_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/todo-mode.texi
-todo-mode.html: ${srcdir}/todo-mode.texi ${gfdl}
+todo-mode.html: $(todo_mode_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/todo-mode.texi
 
+tramp_deps = ${srcdir}/tramp.texi ${srcdir}/trampver.texi ${gfdl}
 tramp : $(buildinfodir)/tramp$(INFO_EXT)
-$(buildinfodir)/tramp$(INFO_EXT): ${srcdir}/tramp.texi ${srcdir}/trampver.texi ${gfdl}
+$(buildinfodir)/tramp$(INFO_EXT): $(tramp_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ -D emacs ${srcdir}/tramp.texi
-tramp.dvi: ${srcdir}/tramp.texi ${srcdir}/trampver.texi ${gfdl}
+tramp.dvi: $(tramp_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/tramp.texi
-tramp.pdf: ${srcdir}/tramp.texi ${srcdir}/trampver.texi ${gfdl}
+tramp.pdf: $(tramp_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/tramp.texi
-tramp.html: ${srcdir}/tramp.texi ${srcdir}/trampver.texi ${gfdl}
+tramp.html: $(tramp_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ -D emacs ${srcdir}/tramp.texi
 
+url_deps = ${srcdir}/url.texi ${gfdl}
 url : $(buildinfodir)/url$(INFO_EXT)
-$(buildinfodir)/url$(INFO_EXT): ${srcdir}/url.texi ${gfdl}
+$(buildinfodir)/url$(INFO_EXT): $(url_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/url.texi
-url.dvi: ${srcdir}/url.texi ${gfdl}
+url.dvi: $(url_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/url.texi
-url.pdf: ${srcdir}/url.texi ${gfdl}
+url.pdf: $(url_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/url.texi
-url.html: ${srcdir}/url.texi ${gfdl}
+url.html: $(url_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/url.texi
 
+vip_deps = ${srcdir}/vip.texi ${gfdl}
 vip : $(buildinfodir)/vip$(INFO_EXT)
-$(buildinfodir)/vip$(INFO_EXT): ${srcdir}/vip.texi ${gfdl}
+$(buildinfodir)/vip$(INFO_EXT): $(vip_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/vip.texi
-vip.dvi: ${srcdir}/vip.texi ${gfdl}
+vip.dvi: $(vip_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/vip.texi
-vip.pdf: ${srcdir}/vip.texi ${gfdl}
+vip.pdf: $(vip_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/vip.texi
-vip.html: ${srcdir}/vip.texi ${gfdl}
+vip.html: $(vip_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/vip.texi
 
+viper_deps = ${srcdir}/viper.texi ${gfdl}
 viper : $(buildinfodir)/viper$(INFO_EXT)
-$(buildinfodir)/viper$(INFO_EXT): ${srcdir}/viper.texi ${gfdl}
+$(buildinfodir)/viper$(INFO_EXT): $(viper_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/viper.texi
-viper.dvi: ${srcdir}/viper.texi ${gfdl}
+viper.dvi: $(viper_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/viper.texi
-viper.pdf: ${srcdir}/viper.texi ${gfdl}
+viper.pdf: $(viper_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/viper.texi
-viper.html: ${srcdir}/viper.texi ${gfdl}
+viper.html: $(viper_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/viper.texi
 
+widget_deps = ${srcdir}/wisent.texi ${gfdl}
 widget : $(buildinfodir)/widget$(INFO_EXT)
-$(buildinfodir)/widget$(INFO_EXT): ${srcdir}/widget.texi ${gfdl}
+$(buildinfodir)/widget$(INFO_EXT): $(widget_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/widget.texi
-widget.dvi: ${srcdir}/widget.texi ${gfdl}
+widget.dvi: $(widget_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/widget.texi
-widget.pdf: ${srcdir}/widget.texi ${gfdl}
+widget.pdf: $(widget_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/widget.texi
-widget.html: ${srcdir}/widget.texi ${gfdl}
+widget.html: $(widget_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/widget.texi
 
+wisent_deps = ${srcdir}/wisent.texi ${gfdl}
 wisent : $(buildinfodir)/wisent$(INFO_EXT)
-$(buildinfodir)/wisent$(INFO_EXT): ${srcdir}/wisent.texi ${gfdl}
+$(buildinfodir)/wisent$(INFO_EXT): $(wisent_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/wisent.texi
-wisent.dvi: ${srcdir}/wisent.texi ${gfdl}
+wisent.dvi: $(wisent_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/wisent.texi
-wisent.pdf: ${srcdir}/wisent.texi ${gfdl}
+wisent.pdf: $(wisent_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/wisent.texi
-wisent.html: ${srcdir}/wisent.texi ${gfdl}
+wisent.html: $(wisent_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/wisent.texi
 
+woman_deps = ${srcdir}/woman.texi $(emacsdir)/emacsver.texi ${gfdl}
 woman : $(buildinfodir)/woman$(INFO_EXT)
-$(buildinfodir)/woman$(INFO_EXT): ${srcdir}/woman.texi $(emacsdir)/emacsver.texi ${gfdl}
+$(buildinfodir)/woman$(INFO_EXT): $(woman_deps)
        $(mkinfodir)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ ${srcdir}/woman.texi
-woman.dvi: ${srcdir}/woman.texi $(emacsdir)/emacsver.texi ${gfdl}
+woman.dvi: $(woman_deps)
        $(ENVADD) $(TEXI2DVI) ${srcdir}/woman.texi
-woman.pdf: ${srcdir}/woman.texi $(emacsdir)/emacsver.texi ${gfdl}
+woman.pdf: $(woman_deps)
        $(ENVADD) $(TEXI2PDF) ${srcdir}/woman.texi
-woman.html: ${srcdir}/woman.texi ${gfdl}
+woman.html: $(woman_deps)
        $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/woman.texi
 
 .PHONY: mostlyclean clean distclean maintainer-clean
@@ -984,6 +838,7 @@ mostlyclean:
 
 clean: mostlyclean
        rm -f $(DVI_TARGETS) $(HTML_TARGETS) $(PDF_TARGETS) $(PS_TARGETS)
+       rm -f efaq-w32.dvi efaq-w32.html efaq-w32.pdf efaq-w32.ps
        rm -f emacs-misc-${version}.tar*
 
 distclean: clean