summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2020-08-17 06:58:22 -0400
committerAndrew Cady <d@jerkface.net>2020-10-27 17:45:23 -0400
commit4d34e8adab846e7e38ebd89acdfd1e73aff014dc (patch)
tree87aebcc3358db87fb7e9dd5411d1ad0305178601
parentbd969ee31c7811b39c225811e22179f411ab6c60 (diff)
add support for building submodules with make
-rw-r--r--Makefile48
1 files changed, 40 insertions, 8 deletions
diff --git a/Makefile b/Makefile
index b7fa8eadd..3d93c41aa 100644
--- a/Makefile
+++ b/Makefile
@@ -1,22 +1,54 @@
1define script 1define get_package_version
2(read _ v _; v=$${v%)}; echo $${v##*:}) 2IFS=' ()' read _ ver _ < $(1)/debian/changelog && echo $${ver##*:}
3endef 3endef
4 4
5arch := $(shell dpkg-architecture -q DEB_HOST_ARCH) 5arch := $(shell dpkg-architecture -q DEB_HOST_ARCH)
6version := $(shell head -n1 debian/changelog | $(script)) 6version := $(shell $(call get_package_version, .))
7 7
8build-stamp: 8fido_version := $(shell $(call get_package_version, libfido2))
9 mk-build-deps ./debian/control --install --root-cmd sudo --remove 9dh_runit_version := $(shell $(call get_package_version, dh-runit))
10 dpkg-buildpackage -us -uc -nc 10# fido_version = 1.4.0-2
11 touch $@ 11# dh_runit_version = 2.8.11
12 12
13packages = openssh-client openssh-server openssh-sftp-server 13packages = openssh-client openssh-server openssh-sftp-server
14 14
15package_files = $(addsuffix _$(version)_$(arch).deb,$(addprefix ../,$(packages))) 15package_files = $(addsuffix _$(version)_$(arch).deb,$(addprefix ../,$(packages)))
16 16
17fido_package_files = \
18 fido2-tools_$(fido_version)_$(arch).deb \
19 fido2-tools-dbgsym_$(fido_version)_$(arch).deb \
20 libfido2-1_$(fido_version)_$(arch).deb \
21 libfido2-1-dbgsym_$(fido_version)_$(arch).deb \
22 libfido2-dev_$(fido_version)_$(arch).deb \
23 libfido2-doc_$(fido_version)_all.deb
24
25dh_runit_package_files = \
26 dh-runit_$(dh_runit_version)_all.deb \
27 runit-helper_$(dh_runit_version)_all.deb
28
29build-stamp libfido2/build-stamp dh-runit/build-stamp:
30 cd $(dir $@) && mk-build-deps ./debian/control --install --root-cmd sudo --remove || true
31 cd $(dir $@) && dpkg-buildpackage -us -uc -nc
32 touch $@
33
17$(package_files): build-stamp 34$(package_files): build-stamp
18 35
19install: install-stamp 36$(fido_package_files): libfido2/build-stamp
37$(dh_runit_package_files): dh-runit/build-stamp
38
39install: libfido2/install-stamp dh-runit/install-stamp install-stamp
40
41libfido2/install-stamp: dh-runit/install-stamp libfido2/build-stamp
42 sudo dpkg -i \
43 libfido2-1_$(fido_version)_$(arch).deb \
44 libfido2-dev_$(fido_version)_$(arch).deb
45 touch $@
46
47dh-runit/install-stamp: dh-runit/build-stamp
48 sudo dpkg -i \
49 dh-runit_$(dh_runit_version)_all.deb \
50 runit-helper_$(dh_runit_version)_all.deb
51 touch $@
20 52
21install-stamp: $(package_files) 53install-stamp: $(package_files)
22 sudo dpkg -i $(package_files) 54 sudo dpkg -i $(package_files)