summaryrefslogtreecommitdiff
path: root/doc/misc/Makefile.in
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2021-02-26 19:28:43 -0800
committerGlenn Morris <rgm@gnu.org>2021-02-26 19:36:09 -0800
commitfddd63f8b854f6bfa91403f69ba694ccb54197bc (patch)
tree93352dd94e714f4f84c57cd9e6ecc9f53d7b6922 /doc/misc/Makefile.in
parent3984044ad3f481b0c67e906a405176ae276dd44d (diff)
downloademacs-fddd63f8b854f6bfa91403f69ba694ccb54197bc.tar.gz
Distribute the real source for some doc/misc manuals (bug#45143)
* doc/misc/modus-themes.texi, doc/misc/org.texi: Remove generated files from repository. * doc/misc/Makefile.in: Add rules for building .texi from .org. (ORG_SRC, abs_top_builddir, EMACS, emacs): New variables. (org_template): New template. (orgclean): New phony target. * Makefile.in (info): Depend on lisp. * lisp/org/ox-texinfo.el (org-texinfo-export-to-texinfo-batch): New function. * doc/misc/org.org, doc/misc/org-setup.org: New files. Import from https://code.orgmode.org d8e8a97a14.
Diffstat (limited to 'doc/misc/Makefile.in')
-rw-r--r--doc/misc/Makefile.in32
1 files changed, 31 insertions, 1 deletions
diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in
index d627055ae1d..7c11f8c0487 100644
--- a/doc/misc/Makefile.in
+++ b/doc/misc/Makefile.in
@@ -82,6 +82,11 @@ INFO_INSTALL = $(INFO_COMMON) $(DOCMISC_W32)
## because the info files are pre-built in release tarfiles.
INFO_TARGETS = $(INFO_COMMON) efaq-w32
+## Some manuals have their source in .org format.
+## This is discouraged because the .texi files it generates
+## are not as well formatted as handwritten ones.
+ORG_SRC = org modus-themes
+
# 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)
@@ -221,6 +226,26 @@ gnus.pdf: $(gnus_deps)
${buildinfodir}/tramp.info tramp.html: ${srcdir}/trampver.texi
+abs_top_builddir = @abs_top_builddir@
+EMACS = ${abs_top_builddir}/src/emacs
+emacs = "${EMACS}" -batch --no-site-file --no-site-lisp
+
+# Generated .texi files go in srcdir so they can be included in the
+# release tarfile along with the others.
+# Work in srcdir (and use abs_top_builddir) so that +setupfile and
+# things like org-setup's "version" macro work. Sigh.
+define org_template
+ $${srcdir}/$(1).texi: $${srcdir}/$(1).org
+ @rm -f $$@
+ $${AM_V_GEN}cd "$${srcdir}" && $${emacs} -l ox-texinfo \
+ -f org-texinfo-export-to-texinfo-batch $$< $$@
+endef
+
+$(foreach orgfile,${ORG_SRC},$(eval $(call org_template,$(orgfile))))
+
+${srcdir}/org.texi: ${srcdir}/org-setup.org
+
+
.PHONY: mostlyclean clean distclean bootstrap-clean maintainer-clean
mostlyclean:
@@ -245,7 +270,12 @@ infoclean:
$(buildinfodir)/$${file}-[1-9][0-9]; \
done
-bootstrap-clean maintainer-clean: distclean infoclean
+.PHONY: orgclean
+
+orgclean:
+ rm -f $(addprefix ${srcdir}/,${ORG_SRC:=.texi})
+
+bootstrap-clean maintainer-clean: distclean infoclean orgclean
.PHONY: install-dvi install-html install-pdf install-ps install-doc