Prepare to replace use of gnu-efi with the internal support

See https://github.com/systemd/systemd/pull/26641.
This will allow upstream pull request (and the main branch after the pull
request has been merged) to be built with the new code. This doesn't do
anything for official rpm builds until the new code is part of the sources.

[skip changelog]
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2023-03-05 14:03:12 +01:00
parent 9a0266ff7b
commit 01af054efc

View File

@ -172,9 +172,6 @@ BuildRequires: python3dist(pytest)
BuildRequires: python3dist(zstd) BuildRequires: python3dist(zstd)
# gzip and lzma are provided by the stdlib # gzip and lzma are provided by the stdlib
BuildRequires: firewalld-filesystem BuildRequires: firewalld-filesystem
%if 0%{?have_gnu_efi}
BuildRequires: gnu-efi gnu-efi-devel
%endif
BuildRequires: libseccomp-devel BuildRequires: libseccomp-devel
BuildRequires: meson >= 0.43 BuildRequires: meson >= 0.43
BuildRequires: gettext BuildRequires: gettext
@ -541,6 +538,16 @@ sed -r -i '/^enable systemd-boot-update.service/d' presets/90-systemd.preset
sed -r 's|/system/|/user/|g' %{SOURCE16} >10-timeout-abort.conf.user sed -r 's|/system/|/user/|g' %{SOURCE16} >10-timeout-abort.conf.user
%generate_buildrequires
%if 0%{?have_gnu_efi}
if grep -q gnu-efi meson_options.txt; then
echo 'gnu-efi'
echo 'gnu-efi-devel'
else
echo 'python3dist(pyelftools)'
fi
%endif
%build %build
%global ntpvendor %(source /etc/os-release; echo ${ID}) %global ntpvendor %(source /etc/os-release; echo ${ID})
%{!?ntpvendor: echo 'NTP vendor zone is not set!'; exit 1} %{!?ntpvendor: echo 'NTP vendor zone is not set!'; exit 1}
@ -589,7 +596,6 @@ CONFIGURE_OPTS=(
-Dlibcurl=true -Dlibcurl=true
-Dlibfido2=true -Dlibfido2=true
-Defi=true -Defi=true
-Dgnu-efi=%[%{?have_gnu_efi}?"true":"false"]
-Dtpm=true -Dtpm=true
-Dtpm2=true -Dtpm2=true
-Dhwdb=true -Dhwdb=true
@ -647,6 +653,15 @@ CONFIGURE_OPTS=(
# -Dsystemd-timesync-uid=, not set yet # -Dsystemd-timesync-uid=, not set yet
) )
if grep gnu-efi meson_options.txt; then
CONFIGURE_OPTS+=( -Dgnu-efi=%[%{?have_gnu_efi}?"true":"false"] )
else
# For now, let's build the bootloader in the same places where we
# built with gnu-efi. Later on, we might want to extend coverage, but
# considering that that support is untested, let's not do this now.
CONFIGURE_OPTS+=( -Dbootloader=%[%{?have_gnu_efi}?"true":"false"] )
fi
%if %{without lto} %if %{without lto}
%global _lto_cflags %nil %global _lto_cflags %nil
%endif %endif