xref: /vim-8.2.3635/runtime/doc/Makefile (revision 24552bed)
1#
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 \
22	debug.txt \
23	develop.txt \
24	diff.txt \
25	digraph.txt \
26	editing.txt \
27	eval.txt \
28	farsi.txt \
29	filetype.txt \
30	fold.txt \
31	gui.txt \
32	gui_w16.txt \
33	gui_w32.txt \
34	gui_x11.txt \
35	hangulin.txt \
36	hebrew.txt \
37	help.txt \
38	howto.txt \
39	if_cscop.txt \
40	if_mzsch.txt \
41	if_ole.txt \
42	if_perl.txt \
43	if_pyth.txt \
44	if_ruby.txt \
45	if_sniff.txt \
46	if_tcl.txt \
47	indent.txt \
48	index.txt \
49	insert.txt \
50	intro.txt \
51	map.txt \
52	message.txt \
53	motion.txt \
54	mbyte.txt \
55	mlang.txt \
56	netbeans.txt \
57	options.txt \
58	os_390.txt \
59	os_amiga.txt \
60	os_beos.txt \
61	os_dos.txt \
62	os_mac.txt \
63	os_mint.txt \
64	os_msdos.txt \
65	os_os2.txt \
66	os_qnx.txt \
67	os_risc.txt \
68	os_unix.txt \
69	os_vms.txt \
70	os_win32.txt \
71	pattern.txt \
72	pi_gzip.txt \
73	pi_netrw.txt \
74	pi_spec.txt \
75	pi_tar.txt \
76	pi_zip.txt \
77	print.txt \
78	quickfix.txt \
79	quickref.txt \
80	quotes.txt \
81	recover.txt \
82	remote.txt \
83	repeat.txt \
84	rileft.txt \
85	russian.txt \
86	scroll.txt \
87	sign.txt \
88	sponsor.txt \
89	starting.txt \
90	spell.txt \
91	syntax.txt \
92	tagsrch.txt \
93	term.txt \
94	tips.txt \
95	todo.txt \
96	uganda.txt \
97	undo.txt \
98	usr_01.txt \
99	usr_02.txt \
100	usr_03.txt \
101	usr_04.txt \
102	usr_05.txt \
103	usr_06.txt \
104	usr_07.txt \
105	usr_08.txt \
106	usr_09.txt \
107	usr_10.txt \
108	usr_11.txt \
109	usr_12.txt \
110	usr_20.txt \
111	usr_21.txt \
112	usr_22.txt \
113	usr_23.txt \
114	usr_24.txt \
115	usr_25.txt \
116	usr_26.txt \
117	usr_27.txt \
118	usr_28.txt \
119	usr_29.txt \
120	usr_30.txt \
121	usr_31.txt \
122	usr_40.txt \
123	usr_41.txt \
124	usr_42.txt \
125	usr_43.txt \
126	usr_44.txt \
127	usr_45.txt \
128	usr_90.txt \
129	usr_toc.txt \
130	various.txt \
131	version4.txt \
132	version5.txt \
133	version6.txt \
134	version7.txt \
135	vi_diff.txt \
136	visual.txt \
137	windows.txt \
138	workshop.txt
139
140HTMLS = \
141	arabic.html \
142	autocmd.html \
143	change.html \
144	cmdline.html \
145	debug.html \
146	debugger.html \
147	develop.html \
148	diff.html \
149	digraph.html \
150	editing.html \
151	eval.html \
152	farsi.html \
153	filetype.html \
154	fold.html \
155	gui.html \
156	gui_w16.html \
157	gui_w32.html \
158	gui_x11.html \
159	hangulin.html \
160	hebrew.html \
161	help.html \
162	howto.html \
163	if_cscop.html \
164	if_mzsch.html \
165	if_ole.html \
166	if_perl.html \
167	if_pyth.html \
168	if_ruby.html \
169	if_sniff.html \
170	if_tcl.html \
171	indent.html \
172	index.html \
173	insert.html \
174	intro.html \
175	map.html \
176	message.html \
177	motion.html \
178	mbyte.html \
179	mlang.html \
180	netbeans.html \
181	options.html \
182	os_390.html \
183	os_amiga.html \
184	os_beos.html \
185	os_dos.html \
186	os_mac.html \
187	os_mint.html \
188	os_msdos.html \
189	os_os2.html \
190	os_qnx.html \
191	os_risc.html \
192	os_unix.html \
193	os_vms.html \
194	os_win32.html \
195	pattern.html \
196	pi_gzip.html \
197	pi_netrw.html \
198	pi_spec.html \
199	print.html \
200	quickfix.html \
201	quickref.html \
202	quotes.html \
203	recover.html \
204	remote.html \
205	repeat.html \
206	rileft.html \
207	russian.html \
208	scroll.html \
209	sign.html \
210	sponsor.html \
211	starting.html \
212	spell.html \
213	syntax.html \
214	tagsrch.html \
215	tags.html \
216	term.html \
217	tips.html \
218	todo.html \
219	uganda.html \
220	undo.html \
221	usr_01.html \
222	usr_02.html \
223	usr_03.html \
224	usr_04.html \
225	usr_05.html \
226	usr_06.html \
227	usr_07.html \
228	usr_08.html \
229	usr_09.html \
230	usr_10.html \
231	usr_11.html \
232	usr_12.html \
233	usr_20.html \
234	usr_21.html \
235	usr_22.html \
236	usr_23.html \
237	usr_24.html \
238	usr_25.html \
239	usr_26.html \
240	usr_27.html \
241	usr_28.html \
242	usr_29.html \
243	usr_30.html \
244	usr_31.html \
245	usr_40.html \
246	usr_41.html \
247	usr_42.html \
248	usr_43.html \
249	usr_44.html \
250	usr_45.html \
251	usr_90.html \
252	usr_toc.html \
253	various.html \
254	version4.html \
255	version5.html \
256	version6.html \
257	version7.html \
258	vi_diff.html \
259	visual.html \
260	windows.html \
261	workshop.html
262
263CONVERTED = \
264	vim-fr.UTF-8.1 \
265	evim-fr.UTF-8.1 \
266	vimdiff-fr.UTF-8.1 \
267	vimtutor-fr.UTF-8.1 \
268	xxd-fr.UTF-8.1 \
269	vim-it.UTF-8.1 \
270	evim-it.UTF-8.1 \
271	vimdiff-it.UTF-8.1 \
272	vimtutor-it.UTF-8.1 \
273	xxd-it.UTF-8.1 \
274	vim-ru.UTF-8.1 \
275	evim-ru.UTF-8.1 \
276	vimdiff-ru.UTF-8.1 \
277	vimtutor-ru.UTF-8.1 \
278	xxd-ru.UTF-8.1 \
279
280.SUFFIXES:
281.SUFFIXES: .c .o .txt .html
282
283all: tags vim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED)
284
285# Use Vim to generate the tags file.  Can only be used when Vim has been
286# compiled and installed.  Supports multiple languages.
287vimtags: $(DOCS)
288	$(VIMEXE) -u NONE -esX -c "helptags ." -c quit
289
290# Use "doctags" to generate the tags file.  Only works for English!
291tags: doctags $(DOCS)
292	./doctags $(DOCS) | LANG=C LC_ALL=C sort >tags
293	uniq -d -2 tags
294
295doctags: doctags.c
296	$(CC) doctags.c -o doctags
297
298vim.man: vim.1
299	nroff -man vim.1 | sed -e s/.//g > vim.man
300
301vimdiff.man: vimdiff.1
302	nroff -man vimdiff.1 | sed -e s/.//g > vimdiff.man
303
304vimtutor.man: vimtutor.1
305	nroff -man vimtutor.1 | sed -e s/.//g > vimtutor.man
306
307xxd.man: xxd.1
308	nroff -man xxd.1 | sed -e s/.//g > xxd.man
309
310uganda.nsis.txt: uganda.txt
311	sed -e 's/[ 	]*\*[-a-zA-Z0-9.]*\*//g' -e 's/vim:tw=78://' \
312		uganda.txt | uniq >uganda.nsis.txt
313
314# Awk version of .txt to .html conversion.
315html: noerrors tags tags.ref $(HTMLS)
316	@if test -f errors.log; then more errors.log; fi
317
318noerrors:
319	-rm -f errors.log
320
321.txt.html:
322	$(AWK) -f makehtml.awk $< >$@
323
324tags.ref tags.html: tags
325	$(AWK) -f maketags.awk tags >tags.html
326
327# Perl version of .txt to .html conversion.
328# There can't be two rules to produce a .html from a .txt file.
329# Just run over all .txt files each time one changes.  It's fast anyway.
330perlhtml: tags $(DOCS)
331	./vim2html.pl tags $(DOCS)
332
333clean:
334	-rm doctags *.html tags.ref
335
336# These files are in the extra archive, skip if not present
337
338arabic.txt:
339	touch arabic.txt
340
341farsi.txt:
342	touch farsi.txt
343
344hebrew.txt:
345	touch hebrew.txt
346
347russian.txt:
348	touch russian.txt
349
350gui_w16.txt:
351	touch gui_w16.txt
352
353gui_w32.txt:
354	touch gui_w32.txt
355
356if_ole.txt:
357	touch if_ole.txt
358
359os_390.txt:
360	touch os_390.txt
361
362os_amiga.txt:
363	touch os_amiga.txt
364
365os_beos.txt:
366	touch os_beos.txt
367
368os_dos.txt:
369	touch os_dos.txt
370
371os_mac.txt:
372	touch os_mac.txt
373
374os_mint.txt:
375	touch os_mint.txt
376
377os_msdos.txt:
378	touch os_msdos.txt
379
380os_os2.txt:
381	touch os_os2.txt
382
383os_qnx.txt:
384	touch os_qnx.txt
385
386os_risc.txt:
387	touch os_risc.txt
388
389os_win32.txt:
390	touch os_win32.txt
391
392vim-fr.UTF-8.1: vim-fr.1
393	iconv -f latin1 -t utf-8 $< >$@
394
395evim-fr.UTF-8.1: evim-fr.1
396	iconv -f latin1 -t utf-8 $< >$@
397
398vimdiff-fr.UTF-8.1: vimdiff-fr.1
399	iconv -f latin1 -t utf-8 $< >$@
400
401vimtutor-fr.UTF-8.1: vimtutor-fr.1
402	iconv -f latin1 -t utf-8 $< >$@
403
404xxd-fr.UTF-8.1: xxd-fr.1
405	iconv -f latin1 -t utf-8 $< >$@
406
407vim-it.UTF-8.1: vim-it.1
408	iconv -f latin1 -t utf-8 $< >$@
409
410evim-it.UTF-8.1: evim-it.1
411	iconv -f latin1 -t utf-8 $< >$@
412
413vimdiff-it.UTF-8.1: vimdiff-it.1
414	iconv -f latin1 -t utf-8 $< >$@
415
416vimtutor-it.UTF-8.1: vimtutor-it.1
417	iconv -f latin1 -t utf-8 $< >$@
418
419xxd-it.UTF-8.1: xxd-it.1
420	iconv -f latin1 -t utf-8 $< >$@
421
422vim-ru.UTF-8.1: vim-ru.1
423	iconv -f KOI8-R -t utf-8 $< >$@
424
425evim-ru.UTF-8.1: evim-ru.1
426	iconv -f KOI8-R -t utf-8 $< >$@
427
428vimdiff-ru.UTF-8.1: vimdiff-ru.1
429	iconv -f KOI8-R -t utf-8 $< >$@
430
431vimtutor-ru.UTF-8.1: vimtutor-ru.1
432	iconv -f KOI8-R -t utf-8 $< >$@
433
434xxd-ru.UTF-8.1: xxd-ru.1
435	iconv -f KOI8-R -t utf-8 $< >$@
436