btrfs-progs: Convert man page for btrfs-quota.
[platform/upstream/btrfs-progs.git] / Documentation / Makefile
1 # Guard against environment variables
2 MAN8_TXT =
3
4 # Top level commands
5 MAN8_TXT += btrfs.txt
6 #MAN8_TXT += btrfsck.txt
7 #MAN8_TXT += btrfs-convert.txt
8 #MAN8_TXT += btrfs-debug-tree.txt
9 #MAN8_TXT += btrfs-find-root.txt
10 #MAN8_TXT += btrfs-image.txt
11 #MAN8_TXT += btrfs-map-logical.txt
12 #MAN8_TXT += btrfs-show-super.txt
13 #MAN8_TXT += btrfstune.txt
14 #MAN8_TXT += btrfs-zero-log.txt
15 #MAN8_TXT += fsck.btrfs.txt
16 #MAN8_TXT += mkfs.btrfs.txt
17
18 # Sub commands for btrfs
19 MAN8_TXT += btrfs-subvolume.txt
20 MAN8_TXT += btrfs-filesystem.txt
21 MAN8_TXT += btrfs-balance.txt
22 MAN8_TXT += btrfs-device.txt
23 MAN8_TXT += btrfs-scrub.txt
24 MAN8_TXT += btrfs-check.txt
25 MAN8_TXT += btrfs-rescue.txt
26 MAN8_TXT += btrfs-inspect-internal.txt
27 MAN8_TXT += btrfs-send.txt
28 MAN8_TXT += btrfs-receive.txt
29 MAN8_TXT += btrfs-quota.txt
30 #MAN8_TXT += btrfs-replace.txt
31 #MAN8_TXT += btrfs-dedup.txt
32
33 MAN_TXT = $(MAN8_TXT)
34 MAN_XML = $(patsubst %.txt,%.xml,$(MAN_TXT))
35 DOC_MAN8 = $(patsubst %.txt,%.8,$(MAN8_TXT))
36 GZ_MAN8 = $(patsubst %.txt,%.8.gz,$(MAN8_TXT))
37
38 mandir ?= $(prefix)/share/man
39 man8dir = $(mandir)/man8
40
41 ASCIIDOC = asciidoc
42 ASCIIDOC_EXTRA =
43 MANPAGE_XSL = manpage-normal.xsl
44 XMLTO = xmlto
45 XMLTO_EXTRA =
46 XMLTO_EXTRA = -m manpage-bold-literal.xsl
47 GZIP = gzip
48 INSTALL ?= install
49 RM ?= rm -f
50 BTRFS_VERSION = $(shell sed -n 's/.*BTRFS_BUILD_VERSION "Btrfs \(.*\)"/\1/p'\
51                   ../version.h)
52
53 ifneq ($(findstring $(MAKEFLAGS),s),s)
54 ifndef V
55         QUIET_ASCIIDOC  = @echo '   ' ASCIIDOC $@;
56         QUIET_XMLTO     = @echo '   ' XMLTO $@;
57         QUIET_GZIP      = @echo '   ' GZIP $@;
58         QUIET_STDERR    = 2> /dev/null
59         QUIET_SUBDIR0   = +@subdir=
60         QUIET_SUBDIR1   = ;$(NO_SUBDIR) echo '   ' SUBDIR $$subdir; \
61                           $(MAKE) $(PRINT_DIR) -C $$subdir
62         export V
63 endif
64 endif
65
66 all: man
67 man: man8
68 man8: $(GZ_MAN8)
69
70 install: install-man
71
72 install-man: man
73         $(INSTALL) -d -m 755 $(DESTDIR)$(man8dir)
74         $(INSTALL) -m 644 $(GZ_MAN8) $(DESTDIR)$(man8dir)
75
76 clean:
77         $(RM) *.xml *.xml+ *.8 *.8.gz
78
79 %.8.gz : %.8
80         $(QUIET_GZIP)$(GZIP) -n -c $< > $@
81
82 %.8 : %.xml 
83         $(QUIET_XMLTO)$(RM) $@ && \
84         $(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $<
85
86 %.xml : %.txt asciidoc.conf
87         $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \
88         $(ASCIIDOC) -b docbook -d manpage -f asciidoc.conf \
89                 $(ASCIIDOC_EXTRA) -abtrfs_version=$(BTRFS_VERSION) \
90                 -o $@+ $< && \
91         mv $@+ $@