From 4d34e8adab846e7e38ebd89acdfd1e73aff014dc Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Mon, 17 Aug 2020 06:58:22 -0400 Subject: add support for building submodules with make --- Makefile | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index b7fa8eadd..3d93c41aa 100644 --- a/Makefile +++ b/Makefile @@ -1,22 +1,54 @@ -define script -(read _ v _; v=$${v%)}; echo $${v##*:}) +define get_package_version +IFS=' ()' read _ ver _ < $(1)/debian/changelog && echo $${ver##*:} endef arch := $(shell dpkg-architecture -q DEB_HOST_ARCH) -version := $(shell head -n1 debian/changelog | $(script)) +version := $(shell $(call get_package_version, .)) -build-stamp: - mk-build-deps ./debian/control --install --root-cmd sudo --remove - dpkg-buildpackage -us -uc -nc - touch $@ +fido_version := $(shell $(call get_package_version, libfido2)) +dh_runit_version := $(shell $(call get_package_version, dh-runit)) +# fido_version = 1.4.0-2 +# dh_runit_version = 2.8.11 packages = openssh-client openssh-server openssh-sftp-server package_files = $(addsuffix _$(version)_$(arch).deb,$(addprefix ../,$(packages))) +fido_package_files = \ + fido2-tools_$(fido_version)_$(arch).deb \ + fido2-tools-dbgsym_$(fido_version)_$(arch).deb \ + libfido2-1_$(fido_version)_$(arch).deb \ + libfido2-1-dbgsym_$(fido_version)_$(arch).deb \ + libfido2-dev_$(fido_version)_$(arch).deb \ + libfido2-doc_$(fido_version)_all.deb + +dh_runit_package_files = \ + dh-runit_$(dh_runit_version)_all.deb \ + runit-helper_$(dh_runit_version)_all.deb + +build-stamp libfido2/build-stamp dh-runit/build-stamp: + cd $(dir $@) && mk-build-deps ./debian/control --install --root-cmd sudo --remove || true + cd $(dir $@) && dpkg-buildpackage -us -uc -nc + touch $@ + $(package_files): build-stamp -install: install-stamp +$(fido_package_files): libfido2/build-stamp +$(dh_runit_package_files): dh-runit/build-stamp + +install: libfido2/install-stamp dh-runit/install-stamp install-stamp + +libfido2/install-stamp: dh-runit/install-stamp libfido2/build-stamp + sudo dpkg -i \ + libfido2-1_$(fido_version)_$(arch).deb \ + libfido2-dev_$(fido_version)_$(arch).deb + touch $@ + +dh-runit/install-stamp: dh-runit/build-stamp + sudo dpkg -i \ + dh-runit_$(dh_runit_version)_all.deb \ + runit-helper_$(dh_runit_version)_all.deb + touch $@ install-stamp: $(package_files) sudo dpkg -i $(package_files) -- cgit v1.2.3