Formatting. Added new screenshot.
[gpg4win.git] / doc / manual / Makefile.am
1 # Makefile.am - Building the manuals
2 # Copyright (C) 2005, 2008 g10 Code GmbH
3
4 # This file is part of GPG4Win.
5
6 # GPG4Win is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
10
11 # GPG4Win is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
19
20
21 png_files = \
22                 sc-kleopatra-startmenu_de.png\
23                 sc-kleopatra-mainwindow-empty_de.png\
24                 sc-kleopatra-ChooseCertificateFormat_de.png\
25                 sc-kleopatra-openpgp-decrypt-email_de.png\
26                 sc-kleopatra-openpgp-personalDetails_de.png\
27                 sc-kleopatra-openpgp-reviewParameters_de.png\
28                 sc-kleopatra-openpgp-createKey_de.png\
29                 sc-kleopatra-openpgp-pinentry_de.png\
30                 sc-kleopatra-openpgp-keyPairCreated_de.png\
31                 sc-kleopatra-openpgp-exportSecretKey_de.png\
32                 sc-kleopatra-withOpenpgpTestkey_de.png\
33                 sc-kleopatra-withAdeleKey_de.png\
34                 sc-kleopatra-openpgp-certificateDetails_de.png\
35                 sc-kleopatra-x509-personalDetails_de.png\
36                 sc-kleopatra-x509-reviewParameters_de.png\
37                 sc-kleopatra-x509-createKey_de.png\
38                 sc-kleopatra-x509-pinentry_de.png\
39                 sc-kleopatra-x509-keyPairCreated_de.png\
40                 sc-kleopatra-exportCertificateToServer_de.png\
41                 sc-kleopatra-certificateSearchOnKeyserver_de.png\
42                 sc-kleopatra-encryptVerify_de.png \
43                 sc-kleopatra-certifyCertificate1_de.png \
44                 sc-kleopatra-certifyCertificate2_de.png \
45                 sc-kleopatra-certifyCertificate3_de.png \
46                 sc-kleopatra-configureKeyserver_de.png\
47                 sc-kleopatra-openpgp-encryptDialog_de.png \
48                 sc-ol-adele-sendOpenpgpKey-inline_de.png\
49                 sc-ol-adele-sendOpenpgpKey-attachment_de.png\
50                 sc-kleopatra-import-certificate_de.png\
51                 sc-kleopatra-import-openpgp-secret-key_de.png\
52                 sc-kleopatra-encryption-chooseOpenpgpCertificate_de.png\
53                 sc-kleopatra-encryption-successful_de.png\
54                 sc-ol-sendEncryptedMail_de.png\
55                 sc-ol-sendSignedMail_de.png\
56                 sc-gpgol-options_de.png\
57                 sc-gpgol-options-textformat_de.png\
58                 sc-kleopatra-openpgp-signDialog_de.png\
59                 sc-kleopatra-sign-chooseOpenpgpCertificate_de.png\
60                 sc-kleopatra-sign-OpenpgpPinentry_de.png\
61                 sc-kleopatra-sign-successful_de.png\
62                 sc-kleopatra-encryptFile1_de.png\
63                 sc-kleopatra-encryptFile2_de.png\
64                 sc-kleopatra-encryptFile3_de.png\
65                 sc-kleopatra-signFile1_de.png\
66                 sc-kleopatra-signFile2_de.png\
67                 sc-kleopatra-signFile3_de.png\
68                 sc-kleopatra-decryptFile1_de.png\
69                 sc-kleopatra-decryptFile2_de.png\
70                 sc-kleopatra-verifyFile1_de.png\
71                 sc-kleopatra-verifyFile2_de.png\
72                 sc-kleopatra-verifyFile2a-badSignature_de.png\
73                 sc-gpgex-contextmenu-signEncrypt_de.png\
74                 sc-gpgex-contextmenu-verifyDecrypt_de.png\
75                 sc-wordpad-editOpenpgpKey_de.png\
76                 sc-pinentry-p12-import-a_de.png\
77                 sc-pinentry-p12-import-b_de.png\
78                 sc-inst-language_de.png\
79                 \
80                 sc-inst-welcome_de.png\
81                 sc-inst-welcome.png sc-inst-license_de.png \
82                 sc-inst-components_de.png sc-inst-directory_de.png \
83                 sc-inst-options_de.png \
84                 sc-inst-startmenu_de.png sc-inst-ready_de.png \
85                 sc-inst-progress_de.png \
86                 sc-inst-finished_de.png sc-inst-finished2_de.png \
87                 sc-inst-finished2.png\
88                 sc-winpt-sign-passwd.png \
89                 sc-gpgee-ctxmenu.png sc-gpgee-signmenu.png \
90                 sc-gpa-gen-backup.png sc-gpa-gen-backup-warn.png \
91                 sc-gpgol-options.png sc-gpgol-noword.png \
92                 sc-en-inst-welcome.png sc-en-inst-license.png \
93                 sc-en-inst-components.png sc-en-inst-directory.png \
94                 sc-en-inst-options.png \
95                 sc-en-inst-startmenu.png sc-en-inst-ready.png \
96                 sc-en-inst-finished.png \
97                 sc-en-gpa-gen-backup.png sc-en-gpa-gen-backup-warn.png \
98                 sc-en-gpa-first-key.png sc-en-gpa-gen-email.png \
99                 sc-en-gpa-gen-name.png sc-en-gpa-gen-passwd.png \
100                 sc-en-gpa-ks-export-p.png sc-en-gpa-nokey.png \
101                 sc-en-gpa-rungpa.png sc-en-gpa-two-keys.png
102
103
104 web_png_files = blank.png next.png previous.png up.png \
105                 home.png nonext.png noprevious.png noup.png
106
107
108 eps_files = adele01.eps.gz adele02.eps.gz man-with-signed-key.eps.gz \
109             egyptian-stone.eps.gz sealed-envelope.eps.gz \
110             schlapphut-with-key.eps.gz tangled-schlapphut.eps.gz \
111             verleihnix.eps.gz key-with-shadow-bit.eps.gz \
112             letter-into-safe.eps.gz letter-out-of-safe.eps.gz \
113             secret-key-exchange.eps.gz pk-safe-open.eps.gz \
114             pk-safe-opened-with-sk.eps.gz think-passphrase.eps.gz \
115             keyserver-world.eps.gz key-with-sigs.eps.gz \
116             clock-face.eps.gz mileage-indicator.eps.gz \
117             table-1.eps.gz table-2.eps.gz table-3.eps.gz \
118             sc-gpa-first-key.eps.gz \
119             sc-gpa-gen-email.eps.gz sc-gpa-gen-name.eps.gz \
120             sc-gpa-gen-passwd.eps.gz sc-gpa-nokey.eps.gz \
121             sc-gpa-rungpa.eps.gz sc-gpa-ks-export-p.eps.gz \
122             sc-gpa-two-keys.eps.gz \
123             sc-ol-send-test-key.eps.gz sc-ol-send-enc-msg1.eps.gz \
124             sc-ol-send-enc-msg2.eps.gz \
125             sc-gpgol-set-icon.eps.gz \
126             sc-winpt-startmenu.eps.gz sc-winpt-trayicon.eps.gz \
127             sc-winpt-clip-decrypt.eps.gz sc-winpt-good-sig.eps.gz \
128             sc-winpt-sel-enc-key.eps.gz sc-winpt-enctoself.eps.gz \
129             sc-misc-mein-key-asc.eps.gz \
130             openpgp-icon.eps.gz smime-icon.eps.gz
131
132 eps_files_bb  = $(eps_files:.gz=.bb)
133 eps_files_png  = $(eps_files:.eps.gz=.png)
134 #eps_files_pdf = $(eps_files:.eps.gz=.pdf)
135 png_files_eps = $(png_files:.png=.eps) 
136
137 EXTRA_DIST = fdl.tex fdl-book.tex gpg4win-compendium-de.tex \
138              einsteiger.tex durchblicker.tex novices.tex \
139              $(eps_files) $(png_files) $(web_png_files) \
140              was-ist-gpg4win.tex what-is-gpg4win.tex \
141              macros.tex macros-en.tex version.tex.in \
142              gpg4win-logo.eps gpg4win-logo.png
143 # advanced.tex
144
145 CLEANFILES = $(eps_files_bb) $(png_files_eps) \
146              *.dvi *.pdf *.pdf *.toc *.log *.aux *.out \
147              *.html.d-stamp  *.html.d/*
148 DISTCLEANFILES = version.tex $(eps_files_png)
149
150 pkgdata_DATA = gpg4win-compendium-de.pdf novices.pdf 
151 # advanced.pdf
152
153 BUILT_SOURCES = $(eps_files_bb) $(png_files_eps) $(eps_files_png)
154
155 all-local: gpg4win-compendium-de.pdf novices.pdf \
156            gpg4win-compendium-de.html.d-stamp
157 # advanced.pdf
158
159
160 gpg4win-compendium-de.pdf : $(eps_files_bb) $(png_files_eps) $(eps_files_png)
161 gpg4win-compendium-de.dvi : version.tex macros.tex $(eps_files_bb)
162 gpg4win-compendium-de.html.d-stamp : version.tex macros.tex $(eps_files_png) $(web_png_files)
163 einsteiger.pdf : $(eps_files_bb) $(png_files_eps) $(eps_files_png)
164 einsteiger.dvi : version.tex macros.tex $(eps_files_bb)
165 einsteiger.html.d-stamp : version.tex macros.tex $(eps_files_png)
166 durchblicker.pdf : $(eps_files_bb) $(png_files_eps) $(eps_files_png)
167 durchblicker.dvi : version.tex macros.tex $(eps_files_bb)
168 durchblicker.html.d-stamp : version.tex macros.tex $(eps_files_png)
169 novices.pdf : $(eps_files_bb) $(png_files_eps) $(eps_files_png)
170 novices.dvi : version.tex macros-en.tex $(eps_files_bb) $(eps_files_png)
171 novices.html.d-stamp : version.tex macros-en.tex $(eps_files_png)
172 #advanced.pdf : $(eps_files_bb) $(png_files_eps) $(eps_files_png)
173 #advanced.dvi : version.tex macros-en.tex $(eps_files_bb)
174 #advanced.html : version.tex macros-en.tex $(eps_files_png)
175
176 online: gpg4win-compendium-de.html.d-stamp novices.html.d-stamp
177         set -e; \
178         echo "Going to put current manuals online for www.gpg4win.org ..."; \
179         user=`svn info | sed -n '/^URL:/ s,.*svn+ssh://\\([^@]*\\).*,\\1,p'`;\
180         for d in $^; do \
181           (x=$$(echo $$d | sed  's/.d-stamp$$/.d/') ;\
182            echo "Cding to: $$x";\
183            cd $$x ;\
184            rsync -v * \
185              $${user}@wald.intevation.org:/gpg4win/htdocs/handbuecher/ ); \
186         done
187
188
189 preview: gpg4win-compendium-de.html.d-stamp novices.html.d-stamp
190         set -e; \
191         echo "Rsyncing the HTML manuals to the preview host ..."; \
192         for d in $^; do \
193           (x=$$(echo $$d | sed  's/.d-stamp$$/.d/') ;\
194            echo "cd to $$x" ;\
195            cd $$x ;\
196            rsync -v * ${PREVIEWHOST}/ ) ;\
197         done
198
199 %.eps.bb : %.eps.gz
200         $(ZCAT) `test -f '$<' || echo '$(srcdir)/'`$< \
201           | grep '^%%BoundingBox' | head -1 > $@
202
203 %.eps : %.png
204         $(CONVERT) `test -f '$<' || echo '$(srcdir)/'`$< $@
205
206 %.png : %.eps.gz
207         $(CONVERT) -density 100x100 `test -f '$<' || echo '$(srcdir)/'`$< $@
208
209 %.dvi : %.tex
210         $(TEXI2DVI) `test -f '$<' || echo '$(srcdir)/'`$< 
211
212 %.pdf : %.dvi
213         TEXPICTS=$(srcdir) $(DVIPDF)  $< $@
214
215 #%.pdf : %.eps.gz
216 #       $(ZCAT) `test -f '$<' || echo '$(srcdir)/'`$< \
217 #         | epstopdf -f > $@
218
219 # The html.d directories are used to collect all relevant files for
220 # the NSI scripts.  This is also required because hyperlatex is not
221 # able to work in VPATH environment. 
222 %.html.d-stamp : %.tex
223         @rm -f $@.tmp
224         @touch $@.tmp
225         set -e; LC_CTYPE=C; export LC_CTYPE; \
226          src=$$(test -f '$<' || echo '$(srcdir)/')$< ; \
227          wdir=$$(echo $@ | sed  's/.d-stamp$$/.d/') ; \
228          rm -rf $$wdir || true;\
229          mkdir $$wdir;\
230          files=$$( (echo $$src; \
231             sed -n 's/.*\\IncludeImage\[.*\]{\([^}]*\).*/\1.png/p' $$src;\
232             sed -n 's/.*\\IncludeImage{\([^}]*\).*/\1.png/p' $$src ;\
233             sed -n 's/.*\\input{\([^}]*\).*/\1/p' $$src ) \
234           | sort | uniq) ;\
235          for f in $$files $(web_png_files); do \
236            if [ -f "$$f" ]; then cp "$$f" $$wdir ;\
237            elif [ -f "$(srcdir)/$$f" ]; then cp "$(srcdir)/$$f" $$wdir ;\
238            fi ;\
239          done ;\
240          cd $$wdir ;\
241          hyperlatex $$(basename $$src) ;\
242          for f in $$files; do \
243             x=$$(basename "$$f") ;\
244             case $$x in *.png) : ;; *) rm -f $$x ;; esac ;\
245          done
246         @mv -f $@.tmp $@