imagezip also needed
[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 ALL += omf-resctl
8 omf-resctl-URL          := http://pkg.mytestbed.net/yum/base/8/i386/omf-resctl-5.3-1ubuntu2-2.noarch.rpm
9 omf-resctl-SHA1SUM      := 6f48dd1cb7505ba9301c55f9889fd78842510b68
10 omf-resctl              := $(notdir $(omf-resctl-URL))
11 ALL += omf-common
12 omf-common-URL          := http://pkg.mytestbed.net/yum/base/8/i386/omf-common-5.3-1ubuntu3-2.noarch.rpm
13 omf-common-SHA1SUM      := aceaca433ffa6b3ea2b8f62dd57fc739ed01c442
14 omf-common              := $(notdir $(omf-common-URL))
15 ALL += liblog4r
16 liblog4r-URL            := http://pkg.mytestbed.net/yum/base/8/i386/liblog4r-ruby1.8-1.2-1.noarch.rpm
17 liblog4r-SHA1SUM        := daf29f5e23665d835a922cb2dda693ba9aca4e07
18 liblog4r                := $(notdir $(liblog4r-URL))
19 ALL += libxmpp4r
20 libxmpp4r-URL           := http://pkg.mytestbed.net/yum/base/8/i386/libxmpp4r-ruby1.8-1.0-1.noarch.rpm
21 libxmpp4r-SHA1SUM       := 7db1a6260435aca494f9b5e36517568a7f63e5c8
22 libxmpp4r               := $(notdir $(libxmpp4r-URL))
23 ALL += imagezip
24 imagezip-URL            := http://pkg.mytestbed.net/yum/base/8/i386/imagezip-1.0.0-3.i386.rpm
25 imagezip-SHA1SUM        := b96297e480dfbc2360bcb62ff4ee130794124849
26 imagezip                := $(notdir $(imagezip-URL))
27
28 all: $(ALL)
29 .PHONY: all
30
31 ##############################
32 define download_target
33 $(1): $($(1))
34 .PHONY: $($(1))
35 $($(1)): 
36         @if [ ! -e "$($(1))" ] ; then echo "$(WEBFETCH) $($(1)-URL)" ; $(WEBFETCH) $($(1)-URL) ; fi
37         @if [ ! -e "$($(1))" ] ; then echo "Could not download source file: $($(1)) does not exist" ; exit 1 ; fi
38         @if test "$$$$($(SHA1SUM) $($(1)) | awk '{print $$$$1}')" != "$($(1)-SHA1SUM)" ; then \
39             echo "sha1sum of the downloaded $($(1)) does not match the one from 'Makefile'" ; \
40             echo "Local copy: $$$$($(SHA1SUM) $($(1)))" ; \
41             echo "In Makefile: $($(1)-SHA1SUM)" ; \
42             false ; \
43         else \
44             ls -l $($(1)) ; \
45         fi
46 endef
47
48 $(eval $(call download_target,omf-resctl))
49 $(eval $(call download_target,omf-common))
50 $(eval $(call download_target,liblog4r))
51 $(eval $(call download_target,libxmpp4r))
52 $(eval $(call download_target,imagezip))
53
54 #################### convenience, for debugging only
55 # make +foo : prints the value of $(foo)
56 # make ++foo : idem but verbose, i.e. foo=$(foo)
57 ++%: varname=$(subst +,,$@)
58 ++%:
59         @echo "$(varname)=$($(varname))"
60 +%: varname=$(subst +,,$@)
61 +%:
62         @echo "$($(varname))"