File: Makefile

package info (click to toggle)
clive-utils 2.1.6-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 192 kB
  • ctags: 90
  • sloc: perl: 1,256; makefile: 95
file content (97 lines) | stat: -rw-r--r-- 2,152 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# GNU Makefile

SHELL = /bin/sh

prefix      = $(HOME)
bindir      = $(prefix)/bin
datarootdir = $(prefix)/share
datadir     = $(datarootdir)
mandir      = $(datarootdir)/man
man1dir     = $(mandir)/man1

INSTALL     = install -c
INSTALL_D   = install -d
INSTALL_M   = install -c -m 444
RM          = rm -f
PERL        = perl
POD2MAN     = pod2man
AWK         = awk
TR          = tr

WITH_MAN    = yes
WITH_CHECK  = yes

.PHONY: all checks
all: checks

MODULES = \
 Config::Tiny  WWW::Curl  Tk  Tk::Tree  Tk::DialogBox  HTML::TokeParser \
 XML::RSS::LibXML  URI::Escape  HTML::Strip  Crypt::PasswdMD5  Crypt::Twofish \

MODULES_OPTIONAL = \
 Clipboard  Tk::FontDialog

checks:
ifeq ($(WITH_CHECK),yes)
	@echo == Required Perl modules:
	@for m in $(MODULES); \
	do \
        result=`$(PERL) -M$$m -e "print 'yes'" 2>/dev/null || echo no`;\
		echo "$$m ...$$result"; \
	done
	@echo == Optional Perl modules:
	@for m in $(MODULES_OPTIONAL); \
	do \
        result=`$(PERL) -M$$m -e "print 'yes'" 2>/dev/null || echo no`;\
		echo "$$m ...$$result"; \
	done
else
	@echo Disable module checking.
endif

.PHONY: install uninstall

SCRIPTS = clivefeed clivescan clivepass

install:
	$(INSTALL_D) $(DESTDIR)$(bindir)
	@for s in $(SCRIPTS); \
	do \
		echo "$(INSTALL) $$s $(DESTDIR)$(bindir)/$$s"; \
		$(INSTALL) $$s $(DESTDIR)$(bindir)/$$s; \
	done
ifeq ($(WITH_MAN),yes)
	$(INSTALL_D) $(DESTDIR)$(man1dir)
	@for s in $(SCRIPTS); \
	do \
		echo "$(INSTALL_M) $$s.1 $(DESTDIR)$(man1dir)/$$s.1"; \
		$(INSTALL_M) $$s.1 $(DESTDIR)$(man1dir)/$$s.1; \
	done
endif

uninstall:
	# TODO: Merge these two loops
	@for s in $(SCRIPTS); \
	do \
		echo "$(RM) $(DESTDIR)$(bindir)/$$s"; \
		$(RM) $(DESTDIR)$(bindir)/$$s; \
	done
ifeq ($(WITH_MAN),yes)
	@for s in $(SCRIPTS); \
	do \
		echo "$(RM) $(DESTDIR)$(man1dir)/$$s.1"; \
		$(RM) $(DESTDIR)$(man1dir)/$$s.1; \
	done
endif

.PHONY: man
man:
	@for s in $(SCRIPTS); \
	do \
		release=`$(AWK) '/constant VERSION/ {print \$$5}' $$s | \
			$(TR) -d '["\;]'`; \
		echo $(POD2MAN) -c "$$s manual" -n $$s \
			-s 1 -r $$release $$s.pod $$s.1; \
		$(POD2MAN) -c "$$s manual" -n $$s \
			-s 1 -r $$release $$s.pod $$s.1; \
	done