#!/usr/bin/make -f # -*- makefile -*- export LC_ALL := C.UTF-8 export DEB_BUILD_MAINT_OPTIONS = hardening=+all export DEB_LDFLAGS_MAINT_STRIP=-Wl,-Bsymbolic-functions CONFARGS = ifneq ($(CI),) CONFARGS += --werror --wrap-mode=default endif SB_STYLE := debian deb_version := $(shell debian/grab_version) deb_version_no_epoch := $(shell debian/grab_version | sed s/.*://) deb_next_version := $(shell debian/grab_version --next) ifeq (yes,$(shell dpkg-vendor --derives-from Ubuntu && echo yes)) SB_STYLE := ubuntu tar_name := fwupd_$(deb_version_no_epoch)_$(DEB_HOST_ARCH).tar.gz CONFARGS += -Defi_sbat_distro_id=ubuntu CONFARGS += -Defi_sbat_distro_summary=Ubuntu CONFARGS += -Defi_sbat_distro_pkgname=fwupd CONFARGS += -Defi_sbat_distro_version=$(deb_version) CONFARGS += -Defi_sbat_distro_url="https://launchpad.net/ubuntu/+source/fwupd" else TMPLDIR := debian/fwupd-$(DEB_HOST_ARCH)-signed-template/usr/share/code-signing/fwupd-$(DEB_HOST_ARCH)-signed-template CONFARGS += -Defi_sbat_distro_id=debian CONFARGS += -Defi_sbat_distro_summary=Debian CONFARGS += -Defi_sbat_distro_pkgname=fwupd CONFARGS += -Defi_sbat_distro_version=$(deb_version) CONFARGS += -Defi_sbat_distro_url="https://tracker.debian.org/pkg/fwupd" endif %: dh $@ override_dh_auto_clean: rm -fr obj-* rm -fr debian/build ifeq (ubuntu,$(SB_STYLE)) rm -rf debian/fwupd-images endif override_dh_auto_configure: dh_auto_configure -- $(CONFARGS) override_dh_install: dh_install ifeq (debian,$(SB_STYLE)) # Generate the template source for the Debian signing service to use mkdir -p $(TMPLDIR)/source-template/debian cp -a debian/signing-template/* $(TMPLDIR)/source-template/debian find $(TMPLDIR)/source-template/debian -type f | xargs sed -i "s,SIGNARCH,$(DEB_HOST_ARCH)," find $(TMPLDIR)/source-template/debian -type f | xargs sed -i "s,SIGNVERSION,$(deb_version)," find $(TMPLDIR)/source-template/debian -type f | xargs sed -i "s,NEXTVERSION,$(deb_next_version)," set -e; for file in $$(find $(TMPLDIR)/source-template/debian -type f -name '*SIGNARCH*'); do \ file1=$$(echo $$file | sed "s,SIGNARCH,$(DEB_HOST_ARCH),"); \ mv -v $$file $$file1; \ done debian/gen_signing_changelog $(TMPLDIR)/source-template/debian fwupd-efi $(DEB_HOST_ARCH) debian/gen_signing_json $(TMPLDIR) ${DEB_HOST_ARCH} endif override_dh_fixperms: dh_fixperms # This does *not* need to be executable - it's for the # firmware to run once installed chmod 644 debian/*/usr/libexec/fwupd/efi/*.efi override_dh_builddeb: dh_builddeb ifeq (ubuntu,$(SB_STYLE)) set -e; if [ -d debian/tmp/usr/libexec/fwupd/efi/ ]; then \ mkdir -p debian/fwupd-images/$(deb_version_no_epoch); \ cp debian/tmp/usr/libexec/fwupd/efi/fwupd*.efi debian/fwupd-images/$(deb_version_no_epoch); \ echo $(deb_version_no_epoch) > debian/fwupd-images/$(deb_version_no_epoch)/version; \ tar -C debian/fwupd-images -czvf ../$(tar_name) .; \ dpkg-distaddfile $(tar_name) raw-uefi -; \ fi endif