Commit | Line | Data |
---|---|---|
86965385 GM |
1 | ### Makefile for Emacs refcards |
2 | ||
b83446dd | 3 | ## Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007, |
5df4f04c | 4 | ## 2008, 2009, 2010, 2011 Free Software Foundation, Inc. |
86965385 GM |
5 | |
6 | ## This file is part of GNU Emacs. | |
b83446dd GM |
7 | # |
8 | ## GNU Emacs is free software: you can redistribute it and/or modify | |
86965385 | 9 | ## it under the terms of the GNU General Public License as published by |
b83446dd GM |
10 | ## the Free Software Foundation, either version 3 of the License, or |
11 | ## (at your option) any later version. | |
86965385 GM |
12 | |
13 | ## GNU Emacs is distributed in the hope that it will be useful, | |
14 | ## but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | ## GNU General Public License for more details. | |
17 | ||
18 | ## You should have received a copy of the GNU General Public License | |
b83446dd | 19 | ## along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
86965385 GM |
20 | |
21 | ||
22 | ## Top-level targets. | |
23 | ||
8fb9a9b6 MC |
24 | ## PDF files that are included with Emacs. |
25 | all: refcards_pdf dired-refcards_pdf misc-refcards_pdf | |
86965385 | 26 | |
8fb9a9b6 MC |
27 | REFCARDS_PDF = refcard.pdf cs-refcard.pdf de-refcard.pdf fr-refcard.pdf \ |
28 | pl-refcard.pdf pt-br-refcard.pdf ru-refcard.pdf sk-refcard.pdf | |
29 | refcards_pdf: ${REFCARDS_PDF} | |
30 | refcards_ps: ${REFCARDS_PDF:.pdf=.ps} | |
86965385 | 31 | |
ea404efc MC |
32 | DIRED-REFCARDS_PDF = dired-ref.pdf cs-dired-ref.pdf fr-dired-ref.pdf \ |
33 | sk-dired-ref.pdf | |
8fb9a9b6 MC |
34 | dired-refcards_pdf: ${DIRED-REFCARDS_PDF} |
35 | dired-refcards_ps: ${DIRED-REFCARDS_PDF:.pdf=.ps} | |
86965385 | 36 | |
8fb9a9b6 MC |
37 | MISC-REFCARDS_PDF = calccard.pdf gnus-booklet.pdf gnus-refcard.pdf orgcard.pdf |
38 | misc-refcards_pdf: ${MISC-REFCARDS_PDF} | |
39 | misc-refcards_ps: ${MISC-REFCARDS_PDF:.pdf=.ps} | |
86965385 | 40 | |
86965385 | 41 | |
8fb9a9b6 MC |
42 | ## The following files are not included with Emacs. |
43 | SURVIVAL-CARDS_PDF = survival.pdf cs-survival.pdf sk-survival.pdf | |
44 | survival-cards_pdf: ${SURVIVAL-CARDS_PDF} | |
45 | survival-cards_ps: ${SURVIVAL-CARDS_PDF:.pdf=.ps} | |
46 | ||
47 | VIPER-CARDS_PDF = vipcard.pdf viperCard.pdf | |
48 | viper-cards_pdf: ${VIPER-CARDS_PDF} | |
49 | viper-cards_ps: ${VIPER-CARDS_PDF:.pdf=.ps} | |
50 | ||
51 | ||
52 | ## PDF files. | |
53 | ||
54 | ## The page layouts (a4/letter) are written directly in the .tex files. | |
55 | ||
56 | cs-refcard.pdf cs-dired-ref.pdf cs-survival.pdf sk-refcard.pdf \ | |
57 | sk-dired-ref.pdf sk-survival.pdf: %.pdf: %.tex | |
3bb1fc91 GM |
58 | if pdfcsplain --version > /dev/null 2> /dev/null; then \ |
59 | pdfcsplain $<; \ | |
60 | else \ | |
61 | csplain "\pdfoutput=1\input $<"; \ | |
62 | fi | |
8fb9a9b6 | 63 | |
3bb1fc91 | 64 | ## Some versions of pdfmex seem to create dvi by default, hence output-format. |
8fb9a9b6 | 65 | pl-refcard.pdf: %.pdf: %.tex |
3bb1fc91 GM |
66 | if ! kpsewhich -format=fmt mex > /dev/null && \ |
67 | ! pdfmex --version > /dev/null 2> /dev/null; then \ | |
8fb9a9b6 MC |
68 | echo "No mex format found."; false; \ |
69 | fi | |
3bb1fc91 | 70 | pdftex -output-format=pdf $< |
8fb9a9b6 MC |
71 | |
72 | ru-refcard.pdf: %.pdf: %.tex | |
73 | pdflatex $< | |
74 | ||
31a9ab9d GM |
75 | #gnus-logo.pdf: %.pdf: %.eps |
76 | # ps2pdf $< | |
8fb9a9b6 MC |
77 | |
78 | gnus-refcard.pdf: %.pdf: %.tex gnus-logo.pdf | |
79 | pdflatex $< | |
80 | ||
81 | gnus-booklet.pdf: gnus-refcard.tex gnus-logo.pdf | |
298c6467 | 82 | pdflatex -jobname=gnus-booklet '\def\booklettrue{}\def\letterpapertrue{}\input{gnus-refcard}' |
8fb9a9b6 MC |
83 | |
84 | ## Everything not explicitly listed above. | |
85 | %.pdf: %.tex | |
86 | pdftex $< | |
86965385 | 87 | |
86965385 | 88 | |
86965385 GM |
89 | ## dvi files. |
90 | ||
8fb9a9b6 MC |
91 | cs-refcard.dvi cs-dired-ref.dvi cs-survival.dvi sk-refcard.dvi \ |
92 | sk-dired-ref.dvi sk-survival.dvi: %.dvi: %.tex | |
86965385 GM |
93 | csplain $< |
94 | ||
95 | pl-refcard.dvi: %.dvi: %.tex | |
96 | if ! kpsewhich -format=fmt mex > /dev/null; then \ | |
97 | echo "No mex format found."; false; \ | |
98 | fi | |
99 | tex $< | |
100 | ||
101 | ru-refcard.dvi gnus-refcard.dvi: %.dvi: %.tex | |
102 | latex $< | |
103 | ||
104 | gnus-booklet.dvi: gnus-refcard.tex | |
105 | latex '\def\booklettrue{}\def\letterpapertrue{}\input{gnus-refcard}' | |
106 | mv gnus-refcard.dvi $@ | |
107 | ||
108 | ## Everything not explicitly listed above. | |
109 | %.dvi: %.tex | |
110 | tex $< | |
111 | ||
112 | ||
113 | ## PostScript files. | |
114 | ||
115 | ## Note that some of the tex files (refcard, de-refcard, fr-refcard, | |
116 | ## pt-br-refcard) have settings for letter or a4 paper. Following are | |
117 | ## the default paper sizes (letter for English, A4 for translations). | |
118 | ## FIXME orgcard.ps does not fit on letter (see orgcard.tex). | |
119 | ||
120 | ## A4, landscape. | |
121 | de-refcard.ps fr-refcard.ps pt-br-refcard.ps orgcard.ps: %.ps: %.dvi | |
122 | dvips -t a4 -t landscape $< -o $@ | |
123 | ||
124 | ## A4, portrait. | |
ea404efc | 125 | cs-dired-ref.ps cs-refcard.ps cs-survival.ps fr-dired-ref.ps \ |
86965385 GM |
126 | pl-refcard.ps ru-refcard.ps \ |
127 | sk-dired-ref.ps sk-refcard.ps sk-survival.ps: %.ps: %.dvi | |
128 | dvips -t a4 $< -o $@ | |
129 | ||
130 | ## letter, landscape. | |
131 | calccard.ps refcard.ps: %.ps: %.dvi | |
132 | dvips -t letter -t landscape $< -o $@ | |
133 | ||
134 | ## letter, portrait. | |
135 | dired-ref.ps gnus-booklet.ps gnus-refcard.ps survival.ps vipcard.ps \ | |
136 | viperCard.ps: %.ps: %.dvi | |
137 | dvips -t letter $< -o $@ | |
138 | ||
139 | ||
140 | .PHONY: clean | |
141 | ||
142 | clean: | |
298c6467 | 143 | -rm -f *.dvi *.log *.aux |
86965385 GM |
144 | |
145 | ### Makefile ends here |