]> git.eshelyaron.com Git - emacs.git/commitdiff
Cleanup for etc/refcards/Makefile and related items
authorGlenn Morris <rgm@gnu.org>
Thu, 15 Aug 2013 06:31:14 +0000 (23:31 -0700)
committerGlenn Morris <rgm@gnu.org>
Thu, 15 Aug 2013 06:31:14 +0000 (23:31 -0700)
* .bzrignore: Unignore etc/refcards/Makefile.

* make-dist: Do not distribute etc/refcards TeX intermediate files.

* Makefile.in (install-arch-indep):
Do not install etc/refcards TeX intermediate files.

* etc/refcards/Makefile: Rewrite to use portable Makefile syntax.
Add language-specific targets.
(distclean, extraclean): New rules.

*  etc/refcards/README: Add copyright and license.  Add Makefile details.
Mention http and FSF store versions.

ChangeLog
Makefile.in
etc/ChangeLog
etc/refcards/Makefile
etc/refcards/README
make-dist

index 23e4b0386635f944a3f9b411f78b9d9b9b91dd4f..8e8349aa487bc8dfcb6e22953f88295773b665e2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-08-15  Glenn Morris  <rgm@gnu.org>
+
+       * make-dist: Do not distribute etc/refcards TeX intermediate files.
+       * Makefile.in (install-arch-indep):
+       Do not install etc/refcards TeX intermediate files.
+
 2013-08-14  Ulrich Müller  <ulm@gentoo.org>
 
        * configure.ac (EMACS_CONFIGURATION): Escape backslashes.  (Bug#15091)
index db028132e5cd94e3515c505c699cd7dcff7acd72..ee74baf45cfc508d03b29b598433b7ad64fcfc1f 100644 (file)
@@ -543,6 +543,11 @@ set_installuser=for installuser in $${LOGNAME} $${USERNAME} $${USER} \
 ## deleted the entire installed etc/ directory and recreated it.
 ## install-etcdoc installs the relevant DOC.
 
+## Note that we install etc/refcards/*.ps if present.
+## TODO we should compress these if GZIP_PROG is set.
+## It would be simpler to have a separate install rule for etc/refcards
+## (maybe move it to doc/refcards?).
+
 ## Note that the Makefiles in the etc directory are potentially useful
 ## in an installed Emacs, so should not be excluded.
 
@@ -578,7 +583,12 @@ install-arch-indep: lisp leim install-info install-man ${INSTALL_ARCH_INDEP_EXTR
          (cd $${dir}; tar -chf - . ) \
            | (cd $${dest}; umask 022; \
               tar -xvf - && cat > /dev/null) || exit 1; \
-         [ "$${dir}" != "${srcdir}/etc" ] || rm -f $${dest}/DOC* ; \
+         if [ "$${dir}" = "${srcdir}/etc" ]; then \
+             rm -f $${dest}/DOC* ; \
+             rm -f $${dest}/refcards/*.aux $${dest}/refcards/*.dvi; \
+             rm -f $${dest}/refcards/*.log; \
+         else true; \
+         fi; \
          for subdir in `find $${dest} -type d -print` ; do \
            chmod a+rx $${subdir} ; \
            rm -f $${subdir}/.gitignore ; \
index 2c5bf37e3a7fdfb400cbc02a88e4e91aef7c5579..8b8667dce9e032d1b0d44f1f49bd251558c5b477 100644 (file)
@@ -1,3 +1,9 @@
+2013-08-15  Glenn Morris  <rgm@gnu.org>
+
+       * refcards/Makefile: Rewrite to use portable Makefile syntax.
+       Add language-specific targets.
+       (distclean, extraclean): New rules.
+
 2013-08-13  Glenn Morris  <rgm@gnu.org>
 
        * refcards/Makefile (all_pdf, all_ps, fr-survival.ps, dist):
index ebd7ca9e40872708e714c88218af83b4ff20c45d..5f7aedf799348c493706ef405c8584bfb02ef1df 100644 (file)
 ## You should have received a copy of the GNU General Public License
 ## along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
+### Commentary:
 
-## Top-level targets.
+## See README for details.
 
-## PDF files that are included with Emacs.
-all: refcards_pdf dired-refcards_pdf misc-refcards_pdf
+PDF_ENGLISH = \
+       calccard.pdf \
+       dired-ref.pdf \
+       gnus-booklet.pdf \
+       gnus-refcard.pdf \
+       orgcard.pdf \
+       refcard.pdf \
+       survival.pdf \
+       vipcard.pdf \
+       viperCard.pdf
 
-all_pdf: all survival-cards_pdf viper-cards_pdf
-all_ps: refcards_ps dired-refcards_ps misc-refcards_ps survival-cards_ps \
-       viper-cards_ps
+PDF_CZECH = \
+       cs-dired-ref.pdf \
+       cs-refcard.pdf \
+       cs-survival.pdf
 
-REFCARDS_PDF = refcard.pdf cs-refcard.pdf de-refcard.pdf fr-refcard.pdf \
-            pl-refcard.pdf pt-br-refcard.pdf ru-refcard.pdf sk-refcard.pdf
-refcards_pdf: ${REFCARDS_PDF}
-refcards_ps: ${REFCARDS_PDF:.pdf=.ps}
+PDF_FRENCH = \
+       fr-dired-ref.pdf \
+       fr-refcard.pdf \
+       fr-survival.pdf \
 
-DIRED_REFCARDS_PDF = dired-ref.pdf cs-dired-ref.pdf fr-dired-ref.pdf \
-               sk-dired-ref.pdf
-dired-refcards_pdf: ${DIRED_REFCARDS_PDF}
-dired-refcards_ps: ${DIRED_REFCARDS_PDF:.pdf=.ps}
+PDF_GERMAN = de-refcard.pdf
 
-MISC_REFCARDS_PDF = calccard.pdf gnus-booklet.pdf gnus-refcard.pdf orgcard.pdf
-misc-refcards_pdf: ${MISC_REFCARDS_PDF}
-misc-refcards_ps: ${MISC_REFCARDS_PDF:.pdf=.ps}
+PDF_POLISH = pl-refcard.pdf
 
+PDF_PORTUGUESE = pt-br-refcard.pdf
 
-## The following files are not included with Emacs.
-SURVIVAL_CARDS_PDF = survival.pdf cs-survival.pdf fr-survival.pdf sk-survival.pdf
-survival-cards_pdf: ${SURVIVAL_CARDS_PDF}
-survival-cards_ps: ${SURVIVAL_CARDS_PDF:.pdf=.ps}
+PDF_RUSSIAN = ru-refcard.pdf
 
-VIPER_CARDS_PDF = vipcard.pdf viperCard.pdf
-viper-cards_pdf: ${VIPER_CARDS_PDF}
-viper-cards_ps: ${VIPER_CARDS_PDF:.pdf=.ps}
+PDF_SLOVAKIAN = \
+       sk-dired-ref.pdf \
+       sk-refcard.pdf \
+       sk-survival.pdf
 
-ENVADD = TEXINPUTS=".:"
+PDF_TARGETS = $(PDF_ENGLISH) $(PDF_CZECH) $(PDF_FRENCH) $(PDF_GERMAN) \
+       $(PDF_POLISH) $(PDF_PORTUGUESE) $(PDF_RUSSIAN) $(PDF_SLOVAKIAN)
 
-## PDF files.
+PS_ENGLISH = \
+       calccard.ps \
+       dired-ref.ps \
+       gnus-booklet.ps \
+       gnus-refcard.ps \
+       orgcard.ps \
+       refcard.ps \
+       survival.ps \
+       vipcard.ps \
+       viperCard.ps
 
-## The page layouts (a4/letter) are written directly in the .tex files.
+PS_CZECH = \
+       cs-dired-ref.ps \
+       cs-refcard.ps \
+       cs-survival.ps
 
-cs-refcard.pdf cs-dired-ref.pdf cs-survival.pdf sk-refcard.pdf \
-sk-dired-ref.pdf sk-survival.pdf: %.pdf: %.tex emacsver.tex
-       if pdfcsplain --version > /dev/null 2> /dev/null; then \
-         ${ENVADD} pdfcsplain $<; \
-       else \
-         ${ENVADD} csplain "\pdfoutput=1\input $<"; \
-       fi
+PS_FRENCH = \
+       fr-dired-ref.ps \
+       fr-refcard.ps \
+       fr-survival.ps \
 
-## Some versions of pdfmex seem to create dvi by default, hence output-format.
-pl-refcard.pdf: %.pdf: %.tex emacsver.tex
-       if ! kpsewhich -format=fmt mex > /dev/null && \
-         ! pdfmex --version > /dev/null 2> /dev/null; then \
-         echo "No mex format found."; false; \
-       fi
-       ${ENVADD} pdftex -output-format=pdf $<
+PS_GERMAN = de-refcard.ps
 
-ru-refcard.pdf: %.pdf: %.tex
-       pdflatex $<
+PS_POLISH = pl-refcard.ps
 
-#gnus-logo.pdf: %.pdf: %.eps
-#      ps2pdf $<
+PS_PORTUGUESE = pt-br-refcard.ps
 
-gnus-refcard.pdf: %.pdf: %.tex gnus-logo.pdf
-       pdflatex $<
+PS_RUSSIAN = ru-refcard.ps
 
-gnus-booklet.pdf: gnus-refcard.tex gnus-logo.pdf
-       pdflatex -jobname=gnus-booklet '\def\booklettrue{}\def\letterpapertrue{}\input{gnus-refcard}'
+PS_SLOVAKIAN = \
+       sk-dired-ref.ps \
+       sk-refcard.ps \
+       sk-survival.ps
 
-## Everything not explicitly listed above.
-%.pdf: %.tex emacsver.tex
-       ${ENVADD} pdftex $<
+PS_TARGETS = $(PS_ENGLISH) $(PS_CZECH) $(PS_FRENCH) $(PS_GERMAN) \
+       $(PS_POLISH) $(PS_PORTUGUESE) $(PS_RUSSIAN) $(PS_SLOVAKIAN)
 
 
-## dvi files.
+## For emacsver.tex.
+ENVADD = TEXINPUTS=".:$(TEXINPUTS)"
 
-cs-refcard.dvi cs-dired-ref.dvi cs-survival.dvi sk-refcard.dvi \
-sk-dired-ref.dvi sk-survival.dvi: %.dvi: %.tex emacsver.tex
-       ${ENVADD} csplain $<
 
-pl-refcard.dvi: %.dvi: %.tex emacsver.tex
-       if ! kpsewhich -format=fmt mex > /dev/null; then \
-         echo "No mex format found."; false; \
-       fi
-       ${ENVADD} tex $<
+.PHONY: all pdf ps
 
-ru-refcard.dvi gnus-refcard.dvi: %.dvi: %.tex
-       latex $<
+all: pdf
+pdf: $(PDF_TARGETS)
+ps: $(PS_TARGETS)
 
-gnus-booklet.dvi: gnus-refcard.tex
-       latex '\def\booklettrue{}\def\letterpapertrue{}\input{gnus-refcard}'
-       mv gnus-refcard.dvi $@
 
-## Everything not explicitly listed above.
-%.dvi: %.tex emacsver.tex
-       ${ENVADD} tex $<
+.PHONY: english czech french german polish portuguese russian slovakian
+english: $(PDF_ENGLISH)
+czech: $(PDF_CZECH)
+french: $(PDF_FRENCH)
+german: $(PDF_GERMAN)
+polish: $(PDF_POLISH)
+portuguese: $(PDF_PORTUGUESE)
+russian: $(PDF_RUSSIAN)
+slovakian: $(PDF_SLOVAKIAN)
 
+.PHONY: english-ps czech-ps french-ps german-ps polish-ps portuguese-ps russian-ps slovakian-ps
+english-ps: $(PS_ENGLISH)
+czech-ps: $(PS_CZECH)
+french-ps: $(PS_FRENCH)
+german-ps: $(PS_GERMAN)
+polish-ps: $(PS_POLISH)
+portuguese-ps: $(PS_PORTUGUESE)
+russian-ps: $(PS_RUSSIAN)
+slovakian-ps: $(PS_SLOVAKIAN)
 
-## PostScript files.
 
-## Note that some of the tex files (refcard, de-refcard, fr-refcard,
-## pt-br-refcard) have settings for letter or a4 paper. Following are
-## the default paper sizes (letter for English, A4 for translations).
-## FIXME orgcard.ps does not fit on letter (see orgcard.tex).
+## Default for file that do not use a different paper size.
+.SUFFIXES: .ps .dvi
+.dvi.ps:
+       dvips -t letter -o $@ $<
+
+
+make_cs=if pdfcsplain --version > /dev/null 2> /dev/null; then \
+         $(ENVADD) pdfcsplain $$input; \
+       else \
+         $(ENVADD) csplain "\pdfoutput=1\input $$input"; \
+       fi
 
-## A4, landscape.
-de-refcard.ps fr-refcard.ps fr-survival.ps pt-br-refcard.ps orgcard.ps: %.ps: %.dvi
-       dvips -t a4 -t landscape $< -o $@
+## For pdf output, the page layouts (a4/letter) are written directly
+## in the .tex files.
 
-## A4, portrait.
-cs-dired-ref.ps cs-refcard.ps cs-survival.ps fr-dired-ref.ps \
-pl-refcard.ps ru-refcard.ps \
-sk-dired-ref.ps sk-refcard.ps sk-survival.ps: %.ps: %.dvi
-       dvips -t a4 $< -o $@
+## For PostScript output, note that some of the tex files (refcard,
+## de-refcard, fr-refcard, pt-br-refcard) have settings for letter or
+## a4 paper.  The Following are the default paper sizes (letter for English,
+## A4 for translations).
+## FIXME orgcard.ps does not fit on letter (see orgcard.tex).
 
-## letter, landscape.
-calccard.ps refcard.ps: %.ps: %.dvi
-       dvips -t letter -t landscape $< -o $@
+## A4, landscape: de-refcard, fr-refcard, pt-br-refcard orgcard
+## A4, portrait: cs-*, fr-dired-ref, sk-*, pl-refcard, ru-refcard
+## Letter, landscape: calccard, refcard
+## Letter, portrait (suffix rule): diref-ref, gnus-*, survival, vip*
+
+calccard_deps = calccard.tex emacsver.tex pdflayout.sty
+calccard.pdf: $(calccard_deps)
+       $(ENVADD) pdftex calccard.tex
+calccard.dvi: $(calccard_deps)
+       $(ENVADD) tex calccard.tex
+calccard.ps: calccard.dvi
+       dvips -t letter -t landscape -o $@ calccard.dvi
+
+cs_dired_ref_deps = cs-dired-ref.tex emacsver.tex pdflayout.sty
+cs-dired-ref.pdf: $(cs_dired_ref_deps)
+       input=cs-dired-ref.tex; $(make_cs)
+cs-dired-ref.dvi: $(cs_dired_ref_deps)
+       $(ENVADD) csplain cs-dired-ref.tex
+cs-dired-ref.ps: cs-dired-ref.dvi
+       dvips -t a4 -o $@ cs-dired-ref.dvi
+
+cs_refcard_deps = cs-refcard.tex emacsver.tex pdflayout.sty
+cs-refcard.pdf: $(cs_refcard_deps)
+       input=cs-refcard.tex; $(make_cs)
+cs-refcard.dvi: $(cs_refcard_deps)
+       $(ENVADD) csplain cs-refcard.tex
+cs-refcard.ps: cs-refcard.dvi
+       dvips -t a4 -o $@ cs-refcard.dvi
+
+cs_survival_deps = cs-survival.tex emacsver.tex pdflayout.sty
+cs-survival.pdf: $(cs_survival_deps)
+       input=cs-survival.tex; $(make_cs)
+cs-survival.dvi: $(cs_survival_deps)
+       $(ENVADD) csplain cs-survival.tex
+cs-survival.ps: cs-survival.dvi
+       dvips -t a4 -o $@ cs-survival.dvi
+
+de_refcard_deps = de-refcard.tex emacsver.tex pdflayout.sty
+de-refcard.pdf: $(de_refcard_deps)
+       $(ENVADD) pdftex de-refcard.tex
+de-refcard.dvi: $(de_refcard_deps)
+       $(ENVADD) tex de-refcard.tex
+de-refcard.ps: de-refcard.dvi
+       dvips -t a4 -t landscape -o $@ de-refcard.dvi
+
+dired_ref_deps = dired-ref.tex emacsver.tex pdflayout.sty
+dired-ref.pdf: $(dired_ref_deps)
+       $(ENVADD) pdftex dired-ref.tex
+dired-ref.dvi: $(dired_ref_deps)
+       $(ENVADD) tex dired-ref.tex
+
+fr_dired_ref_deps = fr-dired-ref.tex emacsver.tex pdflayout.sty
+fr-dired-ref.pdf: $(fr_dired_ref_deps)
+       $(ENVADD) pdftex fr-dired-ref.tex
+fr-dired-ref.dvi: $(fr_dired_ref_deps)
+       $(ENVADD) tex fr-dired-ref.tex
+fr-dired-ref.ps: fr-dired-ref.dvi
+       dvips -t a4 -o $@ fr-dired-ref.dvi
+
+fr_refcard_deps = fr-refcard.tex emacsver.tex pdflayout.sty
+fr-refcard.pdf: $(fr_refcard_deps)
+       $(ENVADD) pdftex fr-refcard.tex
+fr-refcard.dvi: $(fr_refcard_deps)
+       $(ENVADD) tex fr-refcard.tex
+fr-refcard.ps: fr-refcard.dvi
+       dvips -t a4 -t landscape -o $@ fr-refcard.dvi
+
+fr_survival_deps = fr-survival.tex emacsver.tex pdflayout.sty
+fr-survival.pdf: $(fr_survival_deps)
+       $(ENVADD) pdftex fr-survival.tex
+fr-survival.dvi: $(fr_survival_deps)
+       $(ENVADD) tex fr-survival.tex
+fr-survival.ps: fr-survival.dvi
+       dvips -t a4 -o $@ fr-survival.dvi
+
+## No dependency on emacsver.tex, pdflayout.sty; no need for ENVADD.
+gnus_booklet_deps = gnus-refcard.tex gnus-logo.pdf
+gnus-booklet.pdf: $(gnus_booklet_deps)
+       pdflatex -jobname=gnus-booklet '\def\booklettrue{}\def\letterpapertrue{}\input{gnus-refcard}'
+gnus-booklet.dvi: gnus-refcard.tex gnus-logo.eps
+       latex '\def\booklettrue{}\def\letterpapertrue{}\input{gnus-refcard}'
+       mv gnus-refcard.dvi $@
 
-## letter, portrait.
-dired-ref.ps gnus-booklet.ps gnus-refcard.ps survival.ps vipcard.ps \
-viperCard.ps: %.ps: %.dvi
-       dvips -t letter $< -o $@
+###gnus-logo.pdf: gnus-logo.eps
+###    ps2pdf gnus-logo.eps
+
+## No dependency on emacsver.tex, pdflayout.sty; no need for ENVADD.
+gnus_refcard_deps = gnus-refcard.tex gnus-logo.pdf
+gnus-refcard.pdf: $(gnus_refcard_deps)
+       pdflatex gnus-refcard.tex
+gnus-refcard.dvi: $(gnus_refcard_deps)
+       latex gnus-refcard.tex
+
+orgcard_deps = orgcard.tex emacsver.tex pdflayout.sty
+orgcard.pdf: $(orgcard_deps)
+       $(ENVADD) pdftex orgcard.tex
+orgcard.dvi: $(orgcard_deps)
+       $(ENVADD) tex orgcard.tex
+orgcard.ps: orgcard.dvi
+       dvips -t a4 -t landscape -o $@ orgcard.dvi
+
+pl_refcard_deps = pl-refcard.tex emacsver.tex pdflayout.sty
+## Some versions of pdfmex seem to create dvi by default, hence output-format.
+pl-refcard.pdf: $(pl_refcard_deps)
+       if ! kpsewhich -format=fmt mex > /dev/null && \
+         ! pdfmex --version > /dev/null 2> /dev/null; then \
+         echo "No mex format found."; false; \
+       fi
+       $(ENVADD) pdftex -output-format=pdf pl-refcard.tex
+pl-refcard.dvi: $(pl_refcard_deps)
+       if ! kpsewhich -format=fmt mex > /dev/null; then \
+         echo "No mex format found."; false; \
+       fi
+       $(ENVADD) tex pl-refcard.tex
+pl-refcard.ps: pl-refcard.dvi
+       dvips -t a4 -o $@ pl-refcard.dvi
+
+pt_br_refcard_deps = pt-br-refcard.tex emacsver.tex pdflayout.sty
+pt-br-refcard.pdf: $(pt_br_refcard_deps)
+       $(ENVADD) pdftex pt-br-refcard.tex
+pt-br-refcard.dvi: $(pt_br_refcard_deps)
+       $(ENVADD) tex pt-br-refcard.tex
+pt-br-refcard.ps: pt-br-refcard.dvi
+       dvips -t a4 -t landscape -o $@ pt-br-refcard.dvi
+
+refcard_deps = refcard.tex emacsver.tex pdflayout.sty
+refcard.pdf: $(refcard_deps)
+       $(ENVADD) pdftex refcard.tex
+refcard.dvi: $(refcard_deps)
+       $(ENVADD) tex refcard.tex
+refcard.ps: refcard.dvi
+       dvips -t letter -t landscape -o $@ refcard.dvi
+
+## No dependency on emacsver.tex, pdflayout.sty; no need for ENVADD.
+ru_refcard_deps = ru-refcard.tex
+ru-refcard.pdf: $(ru_refcard_deps)
+       pdflatex ru-refcard.tex
+ru-refcard.dvi: $(ru_refcard_deps)
+       latex ru-refcard.tex
+ru-refcard.ps: ru-refcard.dvi
+       dvips -t a4 -o $@ ru-refcard.dvi
+
+sk_dired_ref_deps = sk-dired-ref.tex emacsver.tex pdflayout.sty
+sk-dired-ref.pdf: $(sk_dired_ref_deps)
+       input=sk-dired-ref.tex; $(make_cs)
+sk-dired-ref.dvi: $(sk_dired_ref_deps)
+       $(ENVADD) csplain sk-dired-ref.tex
+sk-dired-ref.ps: sk-dired-ref.dvi
+       dvips -t a4 -o $@ sk-dired-ref.dvi
+
+sk_refcard_deps = sk-refcard.tex emacsver.tex pdflayout.sty
+sk-refcard.pdf: $(sk_refcard_deps)
+       input=sk-refcard.tex; $(make_cs)
+sk-refcard.dvi: $(sk_refcard_deps)
+       $(ENVADD) csplain sk-refcard.tex
+sk-refcard.ps: sk-refcard.dvi
+       dvips -t a4 -o $@ sk-refcard.dvi
+
+sk_survival_deps = sk-survival.tex emacsver.tex pdflayout.sty
+sk-survival.pdf: $(sk_survival_deps)
+       input=sk-survival.tex; $(make_cs)
+sk-survival.dvi: $(sk_survival_deps)
+       $(ENVADD) csplain sk-survival.tex
+sk-survival.ps: sk-survival.dvi
+       dvips -t a4 -o $@ sk-survival.dvi
+
+survival_deps = survival.tex emacsver.tex pdflayout.sty
+survival.pdf: $(survival_deps)
+       $(ENVADD) pdftex survival.tex
+survival.dvi: $(survival_deps)
+       $(ENVADD) tex survival.tex
+
+vipcard_deps = vipcard.tex emacsver.tex pdflayout.sty
+vipcard.pdf: $(vipcard_deps)
+       $(ENVADD) pdftex vipcard.tex
+vipcard.dvi: $(vipcard_deps)
+       $(ENVADD) tex vipcard.tex
+
+vipercard_deps = viperCard.tex emacsver.tex pdflayout.sty
+viperCard.pdf: $(vipercard_deps)
+       $(ENVADD) pdftex viperCard.tex
+viperCard.dvi: $(vipercard_deps)
+       $(ENVADD) tex viperCard.tex
 
 
 .PHONY: clean
@@ -146,6 +339,13 @@ viperCard.ps: %.ps: %.dvi
 clean:
        -rm -f *.dvi *.log *.aux
 
+distclean: clean
+
+## This should really by maintainer-clean, but the handling of the
+## refcards is funny.  So abuse extraclean for this.
+extraclean: clean
+       -rm -f $(PDF_TARGETS) $(PS_TARGETS)
+
 ## For the Emacs website.
 dist:
        rm -rf emacs-refcards
index 273f7ca317c976eff0a5b39d2b682302ffc7a91f..7a8c7c76bf41c45b24ca499d2b68d11ec6f9cdfc 100644 (file)
@@ -1,5 +1,11 @@
+Copyright (C) 2013 Free Software Foundation, Inc.
+See the end of the file for license conditions.
+
+
+REFERENCE CARDS FOR GNU EMACS
+
 To generate these refcards, you need to install the TeX document
-production system.  For example, http://www.tug.org/texlive/ .
+production system.  For example, <http://www.tug.org/texlive/>.
 
 All modern GNU/Linux distributions provide TeX packages, so the
 easiest way is just to install those.  Your distribution may have
@@ -7,7 +13,18 @@ split some of the files needed to process non-English output into
 separate, optional packages such as: texlive-lang-cyrillic,
 texlive-lang-czechslovak, texlive-lang-german, and texlive-lang-polish.
 
+Type `make all' (or `make pdf') to generate PDF versions of all the cards.
+For PostScript format, use `make ps'.
+To only generate the cards for a specific language, use e.g.
+`make french' or `make french-ps'.  As mentioned above, you may need
+to install extra TeX packages for some languages.
+
+PDF and PS copies of these cards are also available at
+<http://www.gnu.org/software/emacs/refcards>.  The FSF online
+store <http://shop.fsf.org/> sometimes has printed copies for sale.
+
 
+\f
 COPYRIGHT AND LICENSE INFORMATION FOR IMAGE FILES
 
 The file gnus-logo.eps contains copyright and license information, but
@@ -17,3 +34,20 @@ File: gnus-logo.eps, gnus-logo.pdf
   Author: Luis Fernandes <elf@ee.ryerson.ca>
   Copyright (C) 2001-2013 Free Software Foundation, Inc.
   License: GNU General Public License version 3 or later (see COPYING)
+
+
+\f
+This file is part of GNU Emacs.
+
+GNU Emacs 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.
+
+GNU Emacs 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 GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
index 75e4b22b2385ea12d587a77a9f314e7348da0eb3..920ca2bc78689fc94200d148273069aed6d609fb 100755 (executable)
--- a/make-dist
+++ b/make-dist
@@ -476,6 +476,9 @@ echo "Making links to \`etc' and its subdirectories"
 for f in `find etc -type f`; do
   case $f in
     etc/DOC*|etc/*.pyc) continue ;;
+    ## Arguably we should not exclude *.ps.
+    etc/refcards/*.aux|etc/refcards/*.dvi|etc/refcards/*.log|etc/refcards/*.ps)
+      continue ;;
   esac
   ln $f $tempdir/$f
 done