summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules43
1 files changed, 43 insertions, 0 deletions
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..cf799825
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,43 @@
+#!/usr/bin/make -f
+
+# Other vendors, add your certs here. No sense in using
+# dpkg-vendor --derives-from, because only Canonical-generated binaries will
+# be signed with this key; so if you are building your own shim binary you
+# should be building the other binaries also.
+ifeq ($(shell dpkg-vendor --is ubuntu && echo yes),yes)
+ cert=debian/canonical-uefi-ca.der
+ distributor=ubuntu
+else
+ cert=debian/debian-uefi-ca.der
+ distributor=debian
+endif
+
+ifeq ($(DEB_HOST_ARCH),amd64)
+export EFI_ARCH := x64
+endif
+
+COMMON_OPTIONS = \
+ MAKELEVEL=0 \
+ EFI_PATH=/usr/lib \
+ ENABLE_SHIM_CERT=1 \
+ ENABLE_SBSIGN=1 \
+ VENDOR_CERT_FILE=$(cert) \
+ EFIDIR=$(distributor) \
+ $(NULL)
+
+%:
+ dh $@ --parallel
+
+override_dh_auto_clean:
+ dh_auto_clean -- MAKELEVEL=0
+ rm -f *.signed
+
+override_dh_auto_build:
+ dh_auto_build -- $(COMMON_OPTIONS)
+
+override_dh_auto_install:
+ dh_auto_install --destdir=debian/tmp -- $(COMMON_OPTIONS)
+
+override_dh_fixperms:
+ dh_fixperms
+ chmod a-x debian/shim/usr/lib/shim/shim$(EFI_ARCH).efi