From f91e0730560acd314e03aa4d38370345b5040017 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Wed, 6 May 2026 17:36:26 +0200 Subject: [PATCH 1/2] ci: install pefile with pip as well Otherwise, ukify gets disabled, so its build wasn't being tested by this job. --- .github/workflows/build-test.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-test.sh b/.github/workflows/build-test.sh index 506479a558..d33229d429 100755 --- a/.github/workflows/build-test.sh +++ b/.github/workflows/build-test.sh @@ -156,8 +156,8 @@ if [ -n "$bpftool_dir" ]; then fi if [[ -n "$CUSTOM_PYTHON" ]]; then - # If CUSTOM_PYTHON is set we need to pull jinja2 from pip, as a local interpreter is used - pip3 install --user --break-system-packages jinja2 + # If CUSTOM_PYTHON is set we need to pull dependencies from pip, as a local interpreter is used + pip3 install --user --break-system-packages jinja2 pefile fi $CC --version From 106bb47d2d193e546821da593d1c446ea53414c3 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Wed, 6 May 2026 15:31:59 +0200 Subject: [PATCH 2/2] meson: improve precision of pefile checks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously, if boot was enabled but ukify wasn't, the check for the pefile Python module would be omitted. The check in want_ukify was incorrect — with Meson it's only possible to check for Python dependencies available for the build Python. When the build Python is not the same as the Python that will be used to run the installed ukify, this would incorrectly require ukify to be available to the build Python. The most common, but not the only case where this would happen would be when cross compiling. If bootloader and tests are disabled, there's no need for the build Python to have pefile even when installing ukify. Therefore, check in the more specific case of ukify's tests being enabled, in which case pefile is required at build time. --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson.build b/meson.build index d6fbd7c2b7..59bfde7f0c 100644 --- a/meson.build +++ b/meson.build @@ -1686,7 +1686,7 @@ if have and efi_arch == 'x64' and cc.links(''' efi_cpu_family_alt = 'x86' endif -want_ukify = pymod.find_installation('python3', required: get_option('ukify'), modules : ['pefile']).found() +want_ukify = get_option('ukify').allowed() conf.set10('ENABLE_UKIFY', want_ukify) #####################################################################