Update CHANGES.
[clive.git] / Makefile
blob167817fea4d5fdb8db5c160d012ac4e927c62721
1 # GNU Makefile
3 SHELL = /bin/sh
5 prefix = $(HOME)
6 bindir = $(prefix)/bin
7 datarootdir = $(prefix)/share
8 datadir = $(datarootdir)
9 mandir = $(datarootdir)/man
10 man1dir = $(mandir)/man1
12 INSTALL = install -c
13 INSTALL_D = install -d
14 INSTALL_M = install -c -m 444
15 RM = rm -f
16 PERL = perl
17 POD2MAN = pod2man
18 AWK = awk
19 TR = tr
21 WITH_MAN = yes
22 WITH_CHECK = yes
24 ifndef V
25 QUIET_POD2MAN = @echo POD2MAN clive.1;
26 endif
28 RELEASE := \
29 $(shell sh -c "$(AWK) '/constant VERSION/ {print \$$5}' clive | \
30 $(TR) -d '[\";]'")
32 .PHONY: all checks
33 all: checks
35 checks:
36 ifeq ($(WITH_CHECK),yes)
37 @echo Check for required Perl modules...
38 @echo -n URI::Escape ...
39 @echo `$(PERL) -MURI::Escape -e "print 'yes'" 2>/dev/null || \
40 echo 'no'`
41 @echo -n XML::Simple ...
42 @echo `$(PERL) -MXML::Simple -e "print 'yes'" 2>/dev/null || \
43 echo 'no'`
44 @echo -n WWW::Curl 4.05+ ...
45 @echo `$(PERL) -e "use WWW::Curl 4.05; print 'yes'" 2>/dev/null || \
46 echo 'no'`
47 @echo -n HTML::TokeParser ...
48 @echo `$(PERL) -MHTML::TokeParser -e "print 'yes'" 2>/dev/null || \
49 echo 'no'`
50 @echo -n Config::Tiny ...
51 @echo `$(PERL) -MConfig::Tiny -e "print 'yes'" 2>/dev/null || \
52 echo 'no'`
53 @echo -n BerkeleyDB ...
54 @echo `$(PERL) -MBerkeleyDB -e "print 'yes'" 2>/dev/null || \
55 echo 'no'`
56 else
57 @echo 'Skip checks.'
58 endif
60 .PHONY: install uninstall
61 install:
62 $(INSTALL_D) $(DESTDIR)$(bindir)
63 $(INSTALL) clive $(DESTDIR)$(bindir)/clive
64 ifeq ($(WITH_MAN),yes)
65 $(INSTALL_D) $(DESTDIR)$(man1dir)
66 $(INSTALL_M) clive.1 $(DESTDIR)$(man1dir)/clive.1
67 endif
69 uninstall:
70 $(RM) $(DESTDIR)$(bindir)/clive
71 ifeq ($(WITH_MAN),yes)
72 $(RM) $(DESTDIR)$(man1dir)/clive.1
73 endif
75 .PHONY: man
76 man:
77 $(QUIET_POD2MAN)$(POD2MAN) -c "clive manual" -n clive \
78 -s 1 -r $(RELEASE) clive.pod clive.1