mirror of
https://git.proxmox.com/git/fwupd
synced 2025-05-16 08:00:41 +00:00
103 lines
3.7 KiB
Makefile
Executable File
103 lines
3.7 KiB
Makefile
Executable File
#!/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
|
|
|
|
#GPGME needs this for proper building on 32 bit archs
|
|
ifeq "$(DEB_HOST_ARCH_BITS)" "32"
|
|
export DEB_CFLAGS_MAINT_APPEND = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
|
|
endif
|
|
|
|
ifneq ($(CI),)
|
|
export CI=--werror --wrap-mode=default
|
|
endif
|
|
|
|
SB_STYLE := debian
|
|
deb_version := $(shell dpkg-parsechangelog --show-field Version)
|
|
ifeq (yes,$(shell dpkg-vendor --derives-from Ubuntu && echo yes))
|
|
SB_STYLE := ubuntu
|
|
tar_name := fwupd_$(deb_version)_$(DEB_HOST_ARCH).tar.gz
|
|
export FLASHROM=-Dplugin_flashrom=false
|
|
export DBX=-Defi_dbxdir=/usr/share/secureboot/updates/dbx
|
|
else
|
|
TMPLDIR := debian/fwupd-$(DEB_HOST_ARCH)-signed-template/usr/share/code-signing/fwupd-$(DEB_HOST_ARCH)-signed-template
|
|
export FLASHROM=-Dplugin_flashrom=true
|
|
endif
|
|
|
|
%:
|
|
dh $@ --with gir
|
|
|
|
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:
|
|
if pkg-config --exists libsmbios_c; then \
|
|
export DELL="-Dplugin_dell=true"; \
|
|
else \
|
|
export DELL="-Dplugin_dell=false"; \
|
|
fi; \
|
|
if pkg-config --exists efivar; then \
|
|
export UEFI="-Dplugin_uefi=true -Dplugin_redfish=true -Dplugin_nvme=true $$DBX"; \
|
|
else \
|
|
export UEFI="-Dplugin_uefi=false -Dplugin_redfish=false -Dplugin_nvme=false"; \
|
|
fi; \
|
|
dh_auto_configure -- $$UEFI $$DELL $$FLASHROM $$CI -Dplugin_dummy=true -Dgtkdoc=true
|
|
|
|
override_dh_install:
|
|
find debian/tmp/usr -type f -name "*a" -print | xargs rm -f
|
|
sed -i 's,wheel,sudo,' ./debian/tmp/usr/share/polkit-1/rules.d/org.freedesktop.fwupd.rules
|
|
dh_install
|
|
#install the EFI binaries if needed
|
|
if [ -d debian/tmp/usr/libexec/fwupd/efi/ ]; then \
|
|
dh_install -pfwupd usr/libexec/fwupd/efi ;\
|
|
fi
|
|
dh_missing -a --fail-missing
|
|
|
|
#this is placed in fwupd-tests
|
|
rm -f debian/fwupd/usr/lib/*/fwupd-plugins-3/libfu_plugin_test.so
|
|
rm -f debian/fwupd/usr/lib/*/fwupd-plugins-3/libfu_plugin_invalid.so
|
|
rm -f debian/fwupd/etc/fwupd/remotes.d/fwupd-tests.conf
|
|
|
|
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
|
|
cp debian/README.Debian $(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),"
|
|
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
|
|
install -m 0755 debian/fwupd.postinst $(TMPLDIR)/source-template/debian/fwupd-$(DEB_HOST_ARCH)-signed.postinst
|
|
install -m 0755 debian/fwupd.postrm $(TMPLDIR)/source-template/debian/fwupd-$(DEB_HOST_ARCH)-signed.postrm
|
|
./debian/gen_signing_changelog $(TMPLDIR)/source-template/debian fwupd $(DEB_HOST_ARCH)
|
|
./debian/gen_signing_json $(TMPLDIR) fwupd ${DEB_HOST_ARCH}
|
|
endif
|
|
|
|
override_dh_strip_nondeterminism:
|
|
dh_strip_nondeterminism -Xfirmware-example.xml.gz
|
|
|
|
override_dh_auto_test:
|
|
if [ -x /usr/bin/valgrind ] ; then \
|
|
dh_auto_test; \
|
|
fi
|
|
|
|
override_dh_builddeb:
|
|
dh_builddeb
|
|
ifeq (ubuntu,$(SB_STYLE))
|
|
if [ -d debian/tmp/usr/libexec/fwupd/efi/ ]; then \
|
|
mkdir -p debian/fwupd-images/$(deb_version) ;\
|
|
cp debian/tmp/usr/libexec/fwupd/efi/fwupd*.efi debian/fwupd-images/$(deb_version) ;\
|
|
echo $(deb_version) > debian/fwupd-images/$(deb_version)/version ;\
|
|
tar -C debian/fwupd-images -czvf ../$(tar_name) . ;\
|
|
dpkg-distaddfile $(tar_name) raw-uefi - ;\
|
|
fi
|
|
endif
|
|
|
|
override_dh_shlibdeps:
|
|
dh_shlibdeps $$DHSLIBS
|