4 docdir
= $(prefix)/share
/doc
7 # Get version either via git or from VERSION file
8 ifneq (,$(wildcard .git
))
9 GITDESC
= $(subst tig-
,,$(shell git describe
))
10 WTDIRTY
= $(if
$(shell git-diff-index HEAD
2>/dev
/null
),-dirty
)
11 VERSION
= $(GITDESC
)$(WTDIRTY
)
13 VERSION
= $(shell test -f VERSION
&& cat VERSION || echo
"unknown-version")
15 RPM_VERSION
= $(subst -,.
,$(VERSION
))
18 CFLAGS
= -Wall
-O2
'-DVERSION="$(VERSION)"'
19 DFLAGS
= -g
-DDEBUG
-Werror
21 DOCS_MAN
= tig
.1 tigrc
.5
22 DOCS_HTML
= tig
.1.html tigrc
.5.html \
23 manual.html manual.html-chunked \
25 DOCS
= $(DOCS_MAN
) $(DOCS_HTML
) \
28 TARNAME
= tig-
$(RPM_VERSION
)
32 all-debug
: CFLAGS
+= $(DFLAGS
)
35 doc-html
: $(DOCS_HTML
)
38 mkdir
-p
$(DESTDIR
)$(bindir) && \
39 for prog in
$(PROGS
); do \
40 install $$prog $(DESTDIR
)$(bindir); \
43 install-doc-man
: doc-man
44 mkdir
-p
$(DESTDIR
)$(mandir)/man1 \
45 $(DESTDIR
)$(mandir)/man5
46 for doc in
$(DOCS
); do \
48 *.1) install $$doc $(DESTDIR
)$(mandir)/man1
;; \
49 *.5) install $$doc $(DESTDIR
)$(mandir)/man5
;; \
53 install-doc-html
: doc-html
54 mkdir
-p
$(DESTDIR
)$(docdir
)/tig
55 for doc in
$(DOCS
); do \
57 *.html
) install $$doc $(DESTDIR
)$(docdir
)/tig
;; \
61 install-doc
: install-doc-man install-doc-html
64 rm -rf manual.html-chunked
65 rm -f
$(PROGS
) $(DOCS
) core
*.xml
68 rm -f
$(TARNAME
).
tar.gz
71 aspell
--lang
=en
--check tig
.1.txt tigrc
.5.txt manual.txt
77 git-archive
--format
=tar --prefix=$(TARNAME
)/ HEAD
> $(TARNAME
).
tar
79 @cp tig.spec
$(TARNAME
)
80 tar rf
$(TARNAME
).
tar $(TARNAME
)/tig.spec
82 gzip
-f
-9 $(TARNAME
).
tar
85 rpmbuild
-ta
$(TARNAME
).
tar.gz
87 .PHONY
: all all-debug doc doc-man doc-html
install install-doc install-doc-man install-doc-html
clean spell-check
dist rpm
90 sed
-e
's/@@VERSION@@/$(RPM_VERSION)/g' < $< > $@
+
95 manual.html
: manual.toc
96 manual.toc
: manual.txt
97 sed
-n
'/^\[\[/,/\(---\|~~~\)/p' < $< | while read line
; do \
99 "-----"*) echo
". <<$$ref>>"; ref
= ;; \
100 "~~~~~"*) echo
"- <<$$ref>>"; ref
= ;; \
101 "[["*"]]") ref
="$$line" ;; \
102 *) ref
="$$ref, $$line" ;; \
103 esac
; done | sed
's/\[\[\(.*\)\]\]/\1/' > $@
106 asciidoc
-b xhtml11
-d article
-a readme
$<
112 asciidoc
-b xhtml11
-d manpage
$<
115 asciidoc
-b docbook
-d manpage
-aversion
=$(VERSION
) $<
118 xmlto
-m manpage.xsl man
$<
121 asciidoc
-b xhtml11
-d manpage
$<
124 asciidoc
-b docbook
-d manpage
-aversion
=$(VERSION
) $<
127 xmlto
-m manpage.xsl man
$<
130 asciidoc
-b xhtml11
-d article
-n
$<
133 asciidoc
-b docbook
-d article
$<
135 %.html-chunked
: %.xml
142 cg commit
-m
"Merge with master"
144 cg commit
-m
"Sync docs"