blob: 625c74e1dd116c6e4d9c2cd3dd4927d871481479 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001#
2# Makefile for the Vim documentation on Unix
3#
4# If you get "don't know how to make scratch", first run make in the source
5# directory. Or remove the include below.
6
7AWK = awk
8
9# Set to $(VIMTARGET) when executed from src/Makefile.
10VIMEXE = vim
11
12# include the config.mk from the source directory. It's only needed to set
13# AWK, used for "make html". Comment this out if the include gives problems.
14include ../../src/auto/config.mk
15
16DOCS = \
17 arabic.txt \
18 autocmd.txt \
19 change.txt \
20 cmdline.txt \
21 debugger.txt \
Bram Moolenaare344bea2005-09-01 20:46:49 +000022 debug.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000023 develop.txt \
24 diff.txt \
25 digraph.txt \
26 editing.txt \
27 eval.txt \
28 farsi.txt \
29 filetype.txt \
30 fold.txt \
Bram Moolenaareee697b2006-03-21 21:20:39 +000031 getscript.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000032 gui.txt \
33 gui_w16.txt \
34 gui_w32.txt \
35 gui_x11.txt \
36 hangulin.txt \
37 hebrew.txt \
38 help.txt \
39 howto.txt \
40 if_cscop.txt \
Bram Moolenaar293ee4d2004-12-09 21:34:53 +000041 if_mzsch.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000042 if_ole.txt \
43 if_perl.txt \
44 if_pyth.txt \
45 if_ruby.txt \
46 if_sniff.txt \
47 if_tcl.txt \
48 indent.txt \
49 index.txt \
50 insert.txt \
51 intro.txt \
52 map.txt \
53 message.txt \
54 motion.txt \
55 mbyte.txt \
56 mlang.txt \
57 netbeans.txt \
58 options.txt \
59 os_390.txt \
60 os_amiga.txt \
61 os_beos.txt \
62 os_dos.txt \
63 os_mac.txt \
64 os_mint.txt \
65 os_msdos.txt \
66 os_os2.txt \
67 os_qnx.txt \
68 os_risc.txt \
69 os_unix.txt \
70 os_vms.txt \
71 os_win32.txt \
72 pattern.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000073 pi_gzip.txt \
74 pi_netrw.txt \
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +000075 pi_paren.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000076 pi_spec.txt \
Bram Moolenaara3957102005-11-28 22:56:19 +000077 pi_tar.txt \
78 pi_zip.txt \
Bram Moolenaar8299df92004-07-10 09:47:34 +000079 print.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000080 quickfix.txt \
81 quickref.txt \
82 quotes.txt \
83 recover.txt \
84 remote.txt \
85 repeat.txt \
86 rileft.txt \
87 russian.txt \
88 scroll.txt \
89 sign.txt \
90 sponsor.txt \
91 starting.txt \
Bram Moolenaar2e4096b2005-03-20 22:25:45 +000092 spell.txt \
Bram Moolenaar0fd92892006-03-09 22:27:48 +000093 sql.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000094 syntax.txt \
Bram Moolenaar7e8fd632006-02-18 22:14:51 +000095 tabpage.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +000096 tagsrch.txt \
97 term.txt \
98 tips.txt \
99 todo.txt \
100 uganda.txt \
101 undo.txt \
102 usr_01.txt \
103 usr_02.txt \
104 usr_03.txt \
105 usr_04.txt \
106 usr_05.txt \
107 usr_06.txt \
108 usr_07.txt \
109 usr_08.txt \
110 usr_09.txt \
111 usr_10.txt \
112 usr_11.txt \
113 usr_12.txt \
114 usr_20.txt \
115 usr_21.txt \
116 usr_22.txt \
117 usr_23.txt \
118 usr_24.txt \
119 usr_25.txt \
120 usr_26.txt \
121 usr_27.txt \
122 usr_28.txt \
123 usr_29.txt \
124 usr_30.txt \
125 usr_31.txt \
Bram Moolenaarc01140a2006-03-24 22:21:52 +0000126 usr_32.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000127 usr_40.txt \
128 usr_41.txt \
129 usr_42.txt \
130 usr_43.txt \
131 usr_44.txt \
132 usr_45.txt \
133 usr_90.txt \
134 usr_toc.txt \
135 various.txt \
136 version4.txt \
137 version5.txt \
138 version6.txt \
Bram Moolenaar8299df92004-07-10 09:47:34 +0000139 version7.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000140 vi_diff.txt \
Bram Moolenaareee697b2006-03-21 21:20:39 +0000141 vimball.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000142 visual.txt \
143 windows.txt \
144 workshop.txt
145
146HTMLS = \
147 arabic.html \
148 autocmd.html \
149 change.html \
150 cmdline.html \
Bram Moolenaare344bea2005-09-01 20:46:49 +0000151 debug.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000152 debugger.html \
153 develop.html \
154 diff.html \
155 digraph.html \
156 editing.html \
157 eval.html \
158 farsi.html \
159 filetype.html \
160 fold.html \
Bram Moolenaareee697b2006-03-21 21:20:39 +0000161 getscript.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000162 gui.html \
163 gui_w16.html \
164 gui_w32.html \
165 gui_x11.html \
166 hangulin.html \
167 hebrew.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000168 howto.html \
169 if_cscop.html \
Bram Moolenaar293ee4d2004-12-09 21:34:53 +0000170 if_mzsch.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000171 if_ole.html \
172 if_perl.html \
173 if_pyth.html \
174 if_ruby.html \
175 if_sniff.html \
176 if_tcl.html \
177 indent.html \
178 index.html \
Bram Moolenaar371d5402006-03-20 21:47:49 +0000179 vimindex.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000180 insert.html \
181 intro.html \
182 map.html \
183 message.html \
184 motion.html \
185 mbyte.html \
186 mlang.html \
187 netbeans.html \
188 options.html \
189 os_390.html \
190 os_amiga.html \
191 os_beos.html \
192 os_dos.html \
193 os_mac.html \
194 os_mint.html \
195 os_msdos.html \
196 os_os2.html \
197 os_qnx.html \
198 os_risc.html \
199 os_unix.html \
200 os_vms.html \
201 os_win32.html \
202 pattern.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000203 pi_gzip.html \
204 pi_netrw.html \
Bram Moolenaar5e3cb7e2006-02-27 23:58:35 +0000205 pi_paren.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000206 pi_spec.html \
Bram Moolenaar8299df92004-07-10 09:47:34 +0000207 print.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000208 quickfix.html \
209 quickref.html \
210 quotes.html \
211 recover.html \
212 remote.html \
213 repeat.html \
214 rileft.html \
215 russian.html \
216 scroll.html \
217 sign.html \
218 sponsor.html \
219 starting.html \
Bram Moolenaar2e4096b2005-03-20 22:25:45 +0000220 spell.html \
Bram Moolenaar0fd92892006-03-09 22:27:48 +0000221 sql.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000222 syntax.html \
Bram Moolenaar7e8fd632006-02-18 22:14:51 +0000223 tabpage.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000224 tagsrch.html \
225 tags.html \
226 term.html \
227 tips.html \
228 todo.html \
229 uganda.html \
230 undo.html \
231 usr_01.html \
232 usr_02.html \
233 usr_03.html \
234 usr_04.html \
235 usr_05.html \
236 usr_06.html \
237 usr_07.html \
238 usr_08.html \
239 usr_09.html \
240 usr_10.html \
241 usr_11.html \
242 usr_12.html \
243 usr_20.html \
244 usr_21.html \
245 usr_22.html \
246 usr_23.html \
247 usr_24.html \
248 usr_25.html \
249 usr_26.html \
250 usr_27.html \
251 usr_28.html \
252 usr_29.html \
253 usr_30.html \
254 usr_31.html \
Bram Moolenaarc01140a2006-03-24 22:21:52 +0000255 usr_32.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000256 usr_40.html \
257 usr_41.html \
258 usr_42.html \
259 usr_43.html \
260 usr_44.html \
261 usr_45.html \
262 usr_90.html \
263 usr_toc.html \
264 various.html \
265 version4.html \
266 version5.html \
267 version6.html \
Bram Moolenaar8299df92004-07-10 09:47:34 +0000268 version7.html \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000269 vi_diff.html \
Bram Moolenaareee697b2006-03-21 21:20:39 +0000270 vimball.txt \
Bram Moolenaar071d4272004-06-13 20:20:40 +0000271 visual.html \
272 windows.html \
273 workshop.html
274
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000275CONVERTED = \
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000276 vim-fr.UTF-8.1 \
277 evim-fr.UTF-8.1 \
278 vimdiff-fr.UTF-8.1 \
279 vimtutor-fr.UTF-8.1 \
280 xxd-fr.UTF-8.1 \
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000281 vim-it.UTF-8.1 \
282 evim-it.UTF-8.1 \
283 vimdiff-it.UTF-8.1 \
284 vimtutor-it.UTF-8.1 \
285 xxd-it.UTF-8.1 \
286 vim-ru.UTF-8.1 \
287 evim-ru.UTF-8.1 \
288 vimdiff-ru.UTF-8.1 \
289 vimtutor-ru.UTF-8.1 \
290 xxd-ru.UTF-8.1 \
291
Bram Moolenaar071d4272004-06-13 20:20:40 +0000292.SUFFIXES:
293.SUFFIXES: .c .o .txt .html
294
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000295all: tags vim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
Bram Moolenaar071d4272004-06-13 20:20:40 +0000296
297# Use Vim to generate the tags file. Can only be used when Vim has been
298# compiled and installed. Supports multiple languages.
299vimtags: $(DOCS)
300 $(VIMEXE) -u NONE -esX -c "helptags ." -c quit
301
302# Use "doctags" to generate the tags file. Only works for English!
303tags: doctags $(DOCS)
304 ./doctags $(DOCS) | LANG=C LC_ALL=C sort >tags
305 uniq -d -2 tags
306
307doctags: doctags.c
308 $(CC) doctags.c -o doctags
309
310vim.man: vim.1
311 nroff -man vim.1 | sed -e s/.//g > vim.man
312
313vimdiff.man: vimdiff.1
314 nroff -man vimdiff.1 | sed -e s/.//g > vimdiff.man
315
316vimtutor.man: vimtutor.1
317 nroff -man vimtutor.1 | sed -e s/.//g > vimtutor.man
318
319xxd.man: xxd.1
320 nroff -man xxd.1 | sed -e s/.//g > xxd.man
321
322uganda.nsis.txt: uganda.txt
323 sed -e 's/[ ]*\*[-a-zA-Z0-9.]*\*//g' -e 's/vim:tw=78://' \
324 uganda.txt | uniq >uganda.nsis.txt
325
326# Awk version of .txt to .html conversion.
327html: noerrors tags tags.ref $(HTMLS)
328 @if test -f errors.log; then more errors.log; fi
329
330noerrors:
331 -rm -f errors.log
332
333.txt.html:
334 $(AWK) -f makehtml.awk $< >$@
335
Bram Moolenaar371d5402006-03-20 21:47:49 +0000336# index.html is the starting point for HTML, but for the help files it is
337# help.txt. Therefore use vimindex.html for index.txt.
338index.html: help.txt
339 $(AWK) -f makehtml.awk help.txt >index.html
340
341vimindex.html: index.txt
342 $(AWK) -f makehtml.awk index.txt >vimindex.html
343
Bram Moolenaar071d4272004-06-13 20:20:40 +0000344tags.ref tags.html: tags
345 $(AWK) -f maketags.awk tags >tags.html
346
347# Perl version of .txt to .html conversion.
348# There can't be two rules to produce a .html from a .txt file.
349# Just run over all .txt files each time one changes. It's fast anyway.
350perlhtml: tags $(DOCS)
351 ./vim2html.pl tags $(DOCS)
352
353clean:
354 -rm doctags *.html tags.ref
355
356# These files are in the extra archive, skip if not present
357
358arabic.txt:
359 touch arabic.txt
360
361farsi.txt:
362 touch farsi.txt
363
364hebrew.txt:
365 touch hebrew.txt
366
367russian.txt:
368 touch russian.txt
369
370gui_w16.txt:
371 touch gui_w16.txt
372
373gui_w32.txt:
374 touch gui_w32.txt
375
376if_ole.txt:
377 touch if_ole.txt
378
379os_390.txt:
380 touch os_390.txt
381
382os_amiga.txt:
383 touch os_amiga.txt
384
385os_beos.txt:
386 touch os_beos.txt
387
388os_dos.txt:
389 touch os_dos.txt
390
391os_mac.txt:
392 touch os_mac.txt
393
394os_mint.txt:
395 touch os_mint.txt
396
397os_msdos.txt:
398 touch os_msdos.txt
399
400os_os2.txt:
401 touch os_os2.txt
402
403os_qnx.txt:
404 touch os_qnx.txt
405
406os_risc.txt:
407 touch os_risc.txt
408
409os_win32.txt:
410 touch os_win32.txt
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000411
Bram Moolenaarb475fb92006-03-02 22:40:52 +0000412# Note that $< works with GNU make while $> works for BSD make.
Bram Moolenaar3991dab2006-03-27 17:01:56 +0000413# Is there a solution that works for both??
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000414vim-fr.UTF-8.1: vim-fr.1
415 iconv -f latin1 -t utf-8 $< >$@
416
417evim-fr.UTF-8.1: evim-fr.1
418 iconv -f latin1 -t utf-8 $< >$@
419
420vimdiff-fr.UTF-8.1: vimdiff-fr.1
421 iconv -f latin1 -t utf-8 $< >$@
422
423vimtutor-fr.UTF-8.1: vimtutor-fr.1
424 iconv -f latin1 -t utf-8 $< >$@
425
426xxd-fr.UTF-8.1: xxd-fr.1
427 iconv -f latin1 -t utf-8 $< >$@
428
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000429vim-it.UTF-8.1: vim-it.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000430 iconv -f latin1 -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000431
432evim-it.UTF-8.1: evim-it.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000433 iconv -f latin1 -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000434
435vimdiff-it.UTF-8.1: vimdiff-it.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000436 iconv -f latin1 -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000437
438vimtutor-it.UTF-8.1: vimtutor-it.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000439 iconv -f latin1 -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000440
441xxd-it.UTF-8.1: xxd-it.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000442 iconv -f latin1 -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000443
444vim-ru.UTF-8.1: vim-ru.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000445 iconv -f KOI8-R -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000446
447evim-ru.UTF-8.1: evim-ru.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000448 iconv -f KOI8-R -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000449
450vimdiff-ru.UTF-8.1: vimdiff-ru.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000451 iconv -f KOI8-R -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000452
453vimtutor-ru.UTF-8.1: vimtutor-ru.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000454 iconv -f KOI8-R -t utf-8 $< >$@
Bram Moolenaar4317d9b2005-03-18 20:25:31 +0000455
456xxd-ru.UTF-8.1: xxd-ru.1
Bram Moolenaar402d2fe2005-04-15 21:00:38 +0000457 iconv -f KOI8-R -t utf-8 $< >$@