1### @configure_input@ 2 3# Copyright (C) 1990-1996, 1998-2021 Free Software Foundation, Inc. 4 5# This file is part of GNU Emacs. 6 7# GNU Emacs is free software: you can redistribute it and/or modify 8# it under the terms of the GNU General Public License as published by 9# the Free Software Foundation, either version 3 of the License, or 10# (at your option) any later version. 11 12# GNU Emacs is distributed in the hope that it will be useful, 13# but WITHOUT ANY WARRANTY; without even the implied warranty of 14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15# GNU General Public License for more details. 16 17# You should have received a copy of the GNU General Public License 18# along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. 19 20SHELL = @SHELL@ 21 22# NB If you add any more configure variables, 23# update the sed rules in the dist target below. 24 25# Standard configure variables. 26srcdir = @srcdir@ 27 28buildinfodir = $(srcdir)/../../info 29# Directory with the (customized) texinfo.tex file. 30texinfodir = $(srcdir)/../misc 31# Directory with docstyle.tex and emacsver.texi. 32emacsdir = $(srcdir)/../emacs 33 34prefix = @prefix@ 35datarootdir = @datarootdir@ 36datadir = @datadir@ 37PACKAGE_TARNAME = @PACKAGE_TARNAME@ 38docdir = @docdir@ 39dvidir = @dvidir@ 40htmldir = @htmldir@ 41pdfdir = @pdfdir@ 42psdir = @psdir@ 43 44MKDIR_P = @MKDIR_P@ 45 46GZIP_PROG = @GZIP_PROG@ 47 48HTML_OPTS = --no-split --html 49 50# Options used only when making info output. 51INFO_OPTS= --no-split 52 53INSTALL = @INSTALL@ 54INSTALL_DATA = @INSTALL_DATA@ 55 56MAKEINFO = @MAKEINFO@ 57MAKEINFO_OPTS = --force --enable-encoding -I $(emacsdir) -I $(srcdir) 58TEXI2DVI = texi2dvi 59TEXI2PDF = texi2pdf 60DVIPS = dvips 61 62# 'make' verbosity. 63AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 64 65AM_V_GEN = $(am__v_GEN_@AM_V@) 66am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) 67am__v_GEN_0 = @echo " GEN " $@; 68am__v_GEN_1 = 69 70ENVADD = \ 71 $(AM_V_GEN)TEXINPUTS="$(srcdir):$(texinfodir):$(emacsdir):$(TEXINPUTS)" \ 72 MAKEINFO="$(MAKEINFO) $(MAKEINFO_OPTS)" 73 74DVI_TARGETS = elisp.dvi 75HTML_TARGETS = elisp.html 76PDF_TARGETS = elisp.pdf 77PS_TARGETS = elisp.ps 78 79# List of all the texinfo files in the manual: 80 81srcs = \ 82 $(srcdir)/elisp.texi \ 83 $(emacsdir)/docstyle.texi \ 84 $(emacsdir)/emacsver.texi \ 85 $(srcdir)/abbrevs.texi \ 86 $(srcdir)/anti.texi \ 87 $(srcdir)/backups.texi \ 88 $(srcdir)/buffers.texi \ 89 $(srcdir)/commands.texi \ 90 $(srcdir)/compile.texi \ 91 $(srcdir)/control.texi \ 92 $(srcdir)/customize.texi \ 93 $(srcdir)/debugging.texi \ 94 $(srcdir)/display.texi \ 95 $(srcdir)/edebug.texi \ 96 $(srcdir)/errors.texi \ 97 $(srcdir)/eval.texi \ 98 $(srcdir)/files.texi \ 99 $(srcdir)/frames.texi \ 100 $(srcdir)/functions.texi \ 101 $(srcdir)/hash.texi \ 102 $(srcdir)/help.texi \ 103 $(srcdir)/hooks.texi \ 104 $(srcdir)/internals.texi \ 105 $(srcdir)/intro.texi \ 106 $(srcdir)/keymaps.texi \ 107 $(srcdir)/lists.texi \ 108 $(srcdir)/loading.texi \ 109 $(srcdir)/macros.texi \ 110 $(srcdir)/maps.texi \ 111 $(srcdir)/markers.texi \ 112 $(srcdir)/minibuf.texi \ 113 $(srcdir)/modes.texi \ 114 $(srcdir)/nonascii.texi \ 115 $(srcdir)/numbers.texi \ 116 $(srcdir)/objects.texi \ 117 $(srcdir)/os.texi \ 118 $(srcdir)/package.texi \ 119 $(srcdir)/positions.texi \ 120 $(srcdir)/processes.texi \ 121 $(srcdir)/records.texi \ 122 $(srcdir)/searching.texi \ 123 $(srcdir)/sequences.texi \ 124 $(srcdir)/streams.texi \ 125 $(srcdir)/strings.texi \ 126 $(srcdir)/symbols.texi \ 127 $(srcdir)/syntax.texi \ 128 $(srcdir)/text.texi \ 129 $(srcdir)/threads.texi \ 130 $(srcdir)/tips.texi \ 131 $(srcdir)/variables.texi \ 132 $(srcdir)/windows.texi \ 133 $(srcdir)/index.texi \ 134 $(srcdir)/gpl.texi \ 135 $(srcdir)/doclicense.texi 136 137## Disable implicit rules. 138%.texi: ; 139 140.PHONY: info dvi html pdf ps 141 142info: $(buildinfodir)/elisp.info 143dvi: $(DVI_TARGETS) 144html: $(HTML_TARGETS) 145pdf: $(PDF_TARGETS) 146ps: $(PS_TARGETS) 147 148${buildinfodir}: 149 ${MKDIR_P} $@ 150 151$(buildinfodir)/elisp.info: $(srcs) | ${buildinfodir} 152 $(AM_V_GEN)$(MAKEINFO) $(MAKEINFO_OPTS) $(INFO_OPTS) -o $@ $< 153 154elisp.dvi: $(srcs) 155 $(ENVADD) $(TEXI2DVI) $< 156 157elisp.html: $(srcs) 158 $(AM_V_GEN)$(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ $< 159 160elisp.pdf: $(srcs) 161 $(ENVADD) $(TEXI2PDF) $< 162 163elisp.ps: elisp.dvi 164 $(DVIPS) -o $@ $< 165 166.PHONY: mostlyclean clean distclean bootstrap-clean maintainer-clean infoclean 167 168## [12] stuff is from two-volume.make. 169mostlyclean: 170 rm -f ./*.aux ./*.log ./*.toc ./*.cp ./*.cps ./*.fn ./*.fns ./*.ky ./*.kys \ 171 ./*.op ./*.ops ./*.pg ./*.pgs ./*.tp ./*.tps ./*.vr ./*.vrs 172 rm -f elisp[12]* vol[12].tmp 173 174clean: mostlyclean 175 rm -f $(DVI_TARGETS) $(HTML_TARGETS) $(PDF_TARGETS) $(PS_TARGETS) 176 rm -f vol[12].dvi vol[12].pdf vol[12].ps 177 178distclean: clean 179 rm -f Makefile 180 181infoclean: 182 rm -f \ 183 $(buildinfodir)/elisp.info \ 184 $(buildinfodir)/elisp.info-[1-9] \ 185 $(buildinfodir)/elisp.info-[1-9][0-9] 186 187bootstrap-clean maintainer-clean: distclean infoclean 188 189.PHONY: install-dvi install-html install-pdf install-ps install-doc 190 191install-dvi: dvi 192 umask 022; $(MKDIR_P) "$(DESTDIR)$(dvidir)" 193 $(INSTALL_DATA) $(DVI_TARGETS) "$(DESTDIR)$(dvidir)" 194install-html: html 195 umask 022; $(MKDIR_P) "$(DESTDIR)$(htmldir)" 196 $(INSTALL_DATA) $(HTML_TARGETS) "$(DESTDIR)$(htmldir)" 197install-pdf: pdf 198 umask 022;$(MKDIR_P) "$(DESTDIR)$(pdfdir)" 199 $(INSTALL_DATA) $(PDF_TARGETS) "$(DESTDIR)$(pdfdir)" 200install-ps: ps 201 umask 022; $(MKDIR_P) "$(DESTDIR)$(psdir)" 202 for file in $(PS_TARGETS); do \ 203 $(INSTALL_DATA) $${file} "$(DESTDIR)$(psdir)"; \ 204 [ -n "${GZIP_PROG}" ] || continue; \ 205 rm -f "$(DESTDIR)$(psdir)/$${file}.gz"; \ 206 ${GZIP_PROG} -9n "$(DESTDIR)$(psdir)/$${file}"; \ 207 done 208 209## Top-level Makefile installs the Info manuals. 210install-doc: install-dvi install-html install-pdf install-ps 211 212 213.PHONY: uninstall-dvi uninstall-html uninstall-pdf uninstall-ps uninstall-doc 214 215uninstall-dvi: 216 for file in $(DVI_TARGETS); do \ 217 rm -f "$(DESTDIR)$(dvidir)/$${file}"; \ 218 done 219uninstall-html: 220 for file in $(HTML_TARGETS); do \ 221 rm -f "$(DESTDIR)$(htmldir)/$${file}"; \ 222 done 223uninstall-ps: 224 ext= ; [ -n "${GZIP_PROG}" ] && ext=.gz; \ 225 for file in $(PS_TARGETS); do \ 226 rm -f "$(DESTDIR)$(psdir)/$${file}$${ext}"; \ 227 done 228uninstall-pdf: 229 for file in $(PDF_TARGETS); do \ 230 rm -f "$(DESTDIR)$(pdfdir)/$${file}"; \ 231 done 232 233uninstall-doc: uninstall-dvi uninstall-html uninstall-pdf uninstall-ps 234 235 236### Makefile ends here 237