OSDN Git Service

Work around coverity being a pretty lazy and poor tool.
[android-x86/external-efivar.git] / Makefile
1 TOPDIR = $(shell echo $$PWD)
2
3 include $(TOPDIR)/Make.version
4 include $(TOPDIR)/Make.rules
5 include $(TOPDIR)/Make.defaults
6 include $(TOPDIR)/Make.coverity
7
8 SUBDIRS := src docs
9
10 all : | efivar.spec Make.version
11 all :
12         @set -e ; for x in $(SUBDIRS) ; do \
13                 $(MAKE) -C $$x $@ ; \
14         done
15
16 install :
17         @set -e ; for x in $(SUBDIRS) ; do \
18                 $(MAKE) -C $$x $@ ; \
19         done
20
21 abidw abicheck efivar efivar-static static:
22         $(MAKE) -C src $@
23
24 $(SUBDIRS) :
25         $(MAKE) -C $@
26
27 brick : all
28         @set -e ; for x in $(SUBDIRS) ; do $(MAKE) -C $${x} test ; done
29
30 a :
31         @if [ $${EUID} != 0 ]; then \
32                 echo no 1>&2 ; \
33                 exit 1 ; \
34         fi
35
36 .PHONY: $(SUBDIRS) a brick
37
38 GITTAG = $(shell bash -c "echo $$(($(VERSION) + 1))")
39
40 efivar.spec : | Makefile Make.version
41
42 clean :
43         @set -e ; for x in $(SUBDIRS) ; do \
44                 $(MAKE) -C $$x $@ ; \
45         done
46         @rm -vf efivar.spec
47
48 test-archive: abicheck efivar.spec
49         @rm -rf /tmp/efivar-$(GITTAG) /tmp/efivar-$(GITTAG)-tmp
50         @mkdir -p /tmp/efivar-$(GITTAG)-tmp
51         @git archive --format=tar $(shell git branch | awk '/^*/ { print $$2 }') | ( cd /tmp/efivar-$(GITTAG)-tmp/ ; tar x )
52         @git diff | ( cd /tmp/efivar-$(GITTAG)-tmp/ ; patch -s -p1 -b -z .gitdiff )
53         @mv /tmp/efivar-$(GITTAG)-tmp/ /tmp/efivar-$(GITTAG)/
54         @cp efivar.spec /tmp/efivar-$(GITTAG)/
55         @dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/efivar-$(GITTAG).tar.bz2 efivar-$(GITTAG)
56         @rm -rf /tmp/efivar-$(GITTAG)
57         @echo "The archive is in efivar-$(GITTAG).tar.bz2"
58
59 bumpver :
60         @echo VERSION=$(GITTAG) > Make.version
61         @git add Make.version
62         git commit -m "Bump version to $(GITTAG)" -s
63
64 tag:
65         git tag -s $(GITTAG) refs/heads/master
66
67 archive: abicheck bumpver abidw tag efivar.spec
68         @rm -rf /tmp/efivar-$(GITTAG) /tmp/efivar-$(GITTAG)-tmp
69         @mkdir -p /tmp/efivar-$(GITTAG)-tmp
70         @git archive --format=tar $(GITTAG) | ( cd /tmp/efivar-$(GITTAG)-tmp/ ; tar x )
71         @mv /tmp/efivar-$(GITTAG)-tmp/ /tmp/efivar-$(GITTAG)/
72         @cp efivar.spec /tmp/efivar-$(GITTAG)/
73         @dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/efivar-$(GITTAG).tar.bz2 efivar-$(GITTAG)
74         @rm -rf /tmp/efivar-$(GITTAG)
75         @echo "The archive is in efivar-$(GITTAG).tar.bz2"
76
77