]> mj.ucw.cz Git - xsv.git/blob - Makefile
make release: Reorganized my directory structure
[xsv.git] / Makefile
1 VERSION=1.0.1
2 ARCHIVE=xsv-$(VERSION).tar.gz
3
4 PCRE_CFLAGS:=$(shell pcre-config --cflags)
5 PCRE_LIBS:=$(shell pcre-config --libs)
6
7 CFLAGS=-O2 -Wall -W -Wno-parentheses -Wstrict-prototypes -Wmissing-prototypes -Wundef -Wredundant-decls -std=gnu99 $(PCRE_CFLAGS) -DVERSION='"$(VERSION)"'
8 LDLIBS=$(PCRE_LIBS)
9
10 PREFIX=/usr/local
11 BINDIR=$(PREFIX)/bin
12 MANDIR=$(PREFIX)/share/man/man1
13
14 all: xsv xsv.1
15
16 tests: xsv
17         ./run-tests
18
19 xsv.1: xsv.1.txt
20         a2x -f manpage -a xsvversion=$(VERSION) $<
21
22 xsv.1.html: xsv.1.txt
23         a2x -f xhtml -a xsvversion=$(VERSION) $<
24
25 clean:
26         rm -f `find . -name "*~" -or -name "*.[oa]" -or -name "\#*\#" -or -name TAGS -or -name core -or -name .depend -or -name .#*`
27         rm -f xsv xsv.1 xsv.1.html docbook-xsl.css
28         rm -rf tmp
29
30 install: all
31         install -d -m 755 $(BINDIR) $(MANDIR)
32         install -m 755 xsv $(BINDIR)/
33         install -m 644 xsv.1 $(MANDIR)/
34
35 # Release target for private use by the maintainer
36 release: xsv.1.html
37         git tag v$(VERSION)
38         git push --tags
39         git archive --format=tar --prefix=xsv-$(VERSION)/ HEAD | gzip >$(ARCHIVE)
40         scp $(ARCHIVE) atrey:~ftp/pub/local/mj/linux/
41         rsync xsv.1.html docbook-xsl.css jw:web/sw/xsv/
42         ssh jw "cd web && bin/release-prog xsv $(VERSION)"
43         mv $(ARCHIVE) ~/archives/sw/xsv/