OSDN Git Service

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