1# top-level Makefile for xzgv
2
3# -----------------------------------------
4# >>> NB: if you're looking to edit this to
5# configure xzgv, edit `config.mk' instead.
6# -----------------------------------------
7
8
9# The main targets of interest are:
10#
11# all		the default; make everything except info
12# info		make info (requires texinfo's `makeinfo')
13# install	install everything
14# uninstall	can't imagine what use you could possibly have for this :^)
15# clean		clean up
16#
17# tgz		make distribution tar.gz
18
19
20# version number, needed for distrib-making stuff below.
21#
22VERS=0.9.2
23
24
25
26all: src man
27
28src: xzgv
29
30# We try this the whole time, as the dependancies are a bit
31# complicated to duplicate here.
32xzgv:
33	cd src && $(MAKE) xzgv
34
35#src/install-info: src/install-info.c
36#	cd src && $(MAKE) install-info
37
38man: doc/xzgv.1
39
40doc/xzgv.1: doc/xzgv.texi doc/makeman.awk
41	cd doc && $(MAKE) xzgv.1
42
43# Like in GNU stuff, info files aren't automatically remade,
44# as I don't want to assume everyone has texinfo's `makeinfo' handy.
45info: doc/xzgv.info.gz
46
47doc/xzgv.info.gz: doc/xzgv.texi
48	cd doc && $(MAKE) info
49
50clean:
51	cd src && $(MAKE) clean
52	cd doc && $(MAKE) clean
53	$(RM) *~
54
55realclean:
56	cd src && $(MAKE) realclean
57	cd doc && $(MAKE) realclean
58	$(RM) *~
59
60#install: all
61#	cd src && $(MAKE) install
62#	cd doc && $(MAKE) install
63install:
64#	cd src && $(MAKE) install
65#	cd doc && $(MAKE) install
66
67uninstall:
68#	cd src && $(MAKE) uninstall
69#	cd doc && $(MAKE) uninstall
70
71
72# The stuff below makes the distribution tgz.
73
74dist: ../xzgv-$(VERS).tar.gz
75
76# Based on the example in ESR's Software Release Practice HOWTO.
77#
78../xzgv-$(VERS).tar.gz: info man realclean
79	$(RM) ../xzgv-$(VERS)
80	@cd ..;ln -s xzgv xzgv-$(VERS)
81	cd ..;tar zchf xzgv-$(VERS).tar.gz --exclude=.svn xzgv-$(VERS)
82	@cd ..;$(RM) xzgv-$(VERS)
83