# $Id$ # $URL$ # WEBFETCH := wget SHA1SUM := sha1sum ALL += openvswitch openvswitch-URL := "http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=snapshot;h=ef72dd87d6ad4e511d1e0bddc31d4716f0914fab;sf=tgz" openvswitch-SHA1SUM := 74c41cb4bd95df3ad3567c5c8bca7624d7e7b534 openvswitch := $(notdir $(openvswitch-URL)) all: $(ALL) .PHONY: all ############################## define download_target $(1): $($(1)) .PHONY: $($(1)) $($(1)): @if [ ! -e "$($(1))" ] ; then echo "$(WEBFETCH) -Oopenvswitch-ef72dd8.tar.gz $($(1)-URL)" ; $(WEBFETCH) -Oopenvswitch-ef72dd8.tar.gz $($(1)-URL) ; fi @if [ ! -e "$($(1))" ] ; then echo "Could not download source file: $($(1)) does not exist" ; exit 1 ; fi @if test "$$$$($(SHA1SUM) $($(1)) | awk '{print $$$$1}')" != "$($(1)-SHA1SUM)" ; then \ echo "sha1sum of the downloaded $($(1)) does not match the one from 'Makefile'" ; \ echo "Local copy: $$$$($(SHA1SUM) $($(1)))" ; \ echo "In Makefile: $($(1)-SHA1SUM)" ; \ false ; \ else \ ls -l $($(1)) ; \ fi endef $(eval $(call download_target,openvswitch)) sources: $(ALL) .PHONY: sources #################### # default - overridden by the build SPECFILE = openvswitch.spec PWD=$(shell pwd) PREPARCH ?= noarch RPMDIRDEFS = --define "_sourcedir $(PWD)" --define "_builddir $(PWD)" --define "_srcrpmdir $(PWD)" --define "_rpmdir $(PWD)" trees: sources rpmbuild $(RPMDIRDEFS) $(RPMDEFS) --nodeps -bp --target $(PREPARCH) $(SPECFILE) srpm: sources rpmbuild $(RPMDIRDEFS) $(RPMDEFS) --nodeps -bs $(SPECFILE) TARGET ?= $(shell uname -m) rpm: sources rpmbuild $(RPMDIRDEFS) $(RPMDEFS) --nodeps --target $(TARGET) -bb $(SPECFILE) clean: rm -f *.rpm *.tgz *.bz2 *.gz ++%: varname=$(subst +,,$@) ++%: @echo "$(varname)=$($(varname))" +%: varname=$(subst +,,$@) +%: @echo "$($(varname))"