File: Makefile

package info (click to toggle)
fwupdate 12-7
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 588 kB
  • sloc: ansic: 4,329; makefile: 358; sh: 49
file content (64 lines) | stat: -rw-r--r-- 2,180 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
default : all

ifneq ($(origin TOPDIR),undefined)
TOP	:= $(abspath $(TOPDIR))
else
TOP	= $(abspath $(shell pwd))
endif

include $(TOP)/Make.defaults
include $(TOP)/Make.rules
include $(TOP)/Make.coverity
include $(TOP)/Make.scan-build
SUBDIRS ?= efi linux docs include

all abicheck clean install : | check_efidir_error
	@set -e ; for x in $(SUBDIRS) ; do \
		if [ ! -d $${x} ]; then \
			install -m 0755 -d $${x} ; \
		fi ; \
		$(MAKE) DESTDIR=$(DESTDIR) TOPDIR=$(TOP) VERSION=$(VERSION) \
			LIBDIR=$(LIBDIR) bindir=$(bindir) mandir=$(mandir) \
			-C $$x/ -f $(TOP)/$$x/Makefile $@ ; \
	done

abiupdate :
	$(MAKE) clean all
	$(MAKE) -C linux TOPDIR=$(TOP) abiclean abiupdate

GITTAG = $(shell bash -c "echo $$(($(VERSION) + 1))")

fwupdate.spec : | Makefile
fwupdate.spec : $(TOP)/fwupdate.spec.in
	@sed -e "s,@@VERSION@@,$(VERSION),g" $< > $@

test-archive: abicheck fwupdate.spec
	@rm -rf /tmp/fwupdate-$(GITTAG) /tmp/fwupdate-$(GITTAG)-tmp
	@mkdir -p /tmp/fwupdate-$(GITTAG)-tmp
	@git archive --format=tar $(shell git branch | awk '/^*/ { print $$2 }') | ( cd /tmp/fwupdate-$(GITTAG)-tmp/ ; tar x )
	@git diff | ( cd /tmp/fwupdate-$(GITTAG)-tmp/ ; patch -s -p1 -b -z .gitdiff )
	@mv /tmp/fwupdate-$(GITTAG)-tmp/ /tmp/fwupdate-$(GITTAG)/
	@cp fwupdate.spec /tmp/fwupdate-$(GITTAG)/
	@dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/fwupdate-$(GITTAG).tar.bz2 fwupdate-$(GITTAG)
	@rm -rf /tmp/fwupdate-$(GITTAG)
	@echo "The archive is in fwupdate-$(GITTAG).tar.bz2"

bumpver:
	@echo VERSION=$(GITTAG) > Make.version
	@git add Make.version
	git commit -m "Bump version to $(GITTAG)" -s

tag:
	git tag -s $(GITTAG) refs/heads/master

archive: abicheck abiupdate bumpver tag fwupdate.spec
	@rm -rf /tmp/fwupdate-$(GITTAG) /tmp/fwupdate-$(GITTAG)-tmp
	@mkdir -p /tmp/fwupdate-$(GITTAG)-tmp
	@git archive --format=tar $(GITTAG) | ( cd /tmp/fwupdate-$(GITTAG)-tmp/ ; tar x )
	@mv /tmp/fwupdate-$(GITTAG)-tmp/ /tmp/fwupdate-$(GITTAG)/
	@cp fwupdate.spec /tmp/fwupdate-$(GITTAG)/
	@dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/fwupdate-$(GITTAG).tar.bz2 fwupdate-$(GITTAG)
	@rm -rf /tmp/fwupdate-$(GITTAG)
	@echo "The archive is in fwupdate-$(GITTAG).tar.bz2"

.PHONY: $(SUBDIRS) abiupdate