cleanup
[omf.git] / Makefile
1 # $Id: Makefile 16421 2010-01-04 11:29:55Z thierry $
2 # $URL: svn+ssh://thierry@svn.planet-lab.org/svn/madwifi/trunk/Makefile $
3 #
4 WEBFETCH                := curl -H Pragma: -O -R -S --fail --show-error
5 SHA1SUM                 := sha1sum
6
7 REPO := http://pkg.mytestbed.net/omf-5.3-federation-v1.1/yum/base/8/i386/
8
9 ALL += omf-resctl
10 omf-resctl-URL          := $(REPO)/omf-resctl-5.3-1ubuntu2-2.noarch.rpm
11 omf-resctl-SHA1SUM      := 73f65d323088d4b1f3eaf6d22a652dbac40c10e9
12 omf-resctl              := $(notdir $(omf-resctl-URL))
13 ALL += omf-common
14 omf-common-URL          := $(REPO)/omf-common-5.3-1ubuntu3-2.noarch.rpm
15 omf-common-SHA1SUM      := 1426245402343bc961984f7a243ea36e3415eecb
16 omf-common              := $(notdir $(omf-common-URL))
17 ALL += liblog4r
18 liblog4r-URL            := $(REPO)/liblog4r-ruby1.8-1.2-1.noarch.rpm
19 liblog4r-SHA1SUM        := 4301cc01e65fdd1c136356ea8735ef935d997ccc
20 liblog4r                := $(notdir $(liblog4r-URL))
21 ALL += libxmpp4r
22 libxmpp4r-URL           := $(REPO)/libxmpp4r-ruby1.8-1.0-1.noarch.rpm
23 libxmpp4r-SHA1SUM       := 3332f38a3de90a9e0947d50d48d955cb946eba35
24 libxmpp4r               := $(notdir $(libxmpp4r-URL))
25 ALL += imagezip
26 imagezip-URL            := $(REPO)/imagezip-1.0.0-3.i386.rpm
27 imagezip-SHA1SUM        := 88088ca0aed57edc2b6ad6acc65a0038486fe67e
28 imagezip                := $(notdir $(imagezip-URL))
29
30 ALL += omf-expctl
31 omf-expctl-URL          := $(REPO)/omf-expctl-5.3-1ubuntu2-2.noarch.rpm
32 omf-expctl-SHA1SUM      := ed8da06921ddf6870ae20ab3673276ec611106ed
33 omf-expctl              := $(notdir $(omf-expctl-URL))
34
35 all: $(ALL)
36 .PHONY: all
37
38 ##############################
39 define download_target
40 $(1): $($(1))
41 .PHONY: $($(1))
42 $($(1)): 
43         @if [ ! -e "$($(1))" ] ; then echo "$(WEBFETCH) $($(1)-URL)" ; $(WEBFETCH) $($(1)-URL) ; fi
44         @if [ ! -e "$($(1))" ] ; then echo "Could not download source file: $($(1)) does not exist" ; exit 1 ; fi
45         @if test "$$$$($(SHA1SUM) $($(1)) | awk '{print $$$$1}')" != "$($(1)-SHA1SUM)" ; then \
46             echo "sha1sum of the downloaded $($(1)) does not match the one from 'Makefile'" ; \
47             echo "Local copy: $$$$($(SHA1SUM) $($(1)))" ; \
48             echo "In Makefile: $($(1)-SHA1SUM)" ; \
49             false ; \
50         else \
51             ls -l $($(1)) ; \
52         fi
53 CLEAN += $($(1))
54 endef
55
56 $(eval $(call download_target,omf-resctl))
57 $(eval $(call download_target,omf-common))
58 $(eval $(call download_target,liblog4r))
59 $(eval $(call download_target,libxmpp4r))
60 $(eval $(call download_target,imagezip))
61
62 $(eval $(call download_target,omf-expctl))
63
64 clean:
65         rm -f $(CLEAN)
66 .PHONY: clean
67
68 #################### convenience, for debugging only
69 # make +foo : prints the value of $(foo)
70 # make ++foo : idem but verbose, i.e. foo=$(foo)
71 ++%: varname=$(subst +,,$@)
72 ++%:
73         @echo "$(varname)=$($(varname))"
74 +%: varname=$(subst +,,$@)
75 +%:
76         @echo "$($(varname))"