rpm: tell meson whether to use libssh or libssh2 explicitly

The %meson macro sets "--auto-features=enabled", thus any feature in the
RPM which has a "with_XXX" condition, needs to explicitly pass a
"-DXXX=state" arg to %meson to override the auto features setting.

The with_libssh and with_libssh2 conditions were not exposed to meson,
so if either was set disabled, then meson would fail the build if the
-devel packages were not found.

Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2020-10-28 12:24:38 +00:00
parent a44f4f3726
commit 0d669b2aa3

View File

@ -1109,6 +1109,18 @@ exit 1
%define arg_storage_iscsi_direct -Dstorage_iscsi_direct=disabled %define arg_storage_iscsi_direct -Dstorage_iscsi_direct=disabled
%endif %endif
%if %{with_libssh}
%define arg_libssh -Dlibssh=enabled
%else
%define arg_libssh -Dlibssh=disabled
%endif
%if %{with_libssh2}
%define arg_libssh2 -Dlibssh2=enabled
%else
%define arg_libssh2 -Dlibssh2=disabled
%endif
%define when %(date +"%%F-%%T") %define when %(date +"%%F-%%T")
%define where %(hostname) %define where %(hostname)
%define who %{?packager}%{!?packager:Unknown} %define who %{?packager}%{!?packager:Unknown}
@ -1170,6 +1182,8 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
-Dfirewalld=enabled \ -Dfirewalld=enabled \
%{?arg_firewalld_zone} \ %{?arg_firewalld_zone} \
%{?arg_wireshark} \ %{?arg_wireshark} \
%{?arg_libssh} \
%{?arg_libssh2} \
-Dpm_utils=disabled \ -Dpm_utils=disabled \
-Dnss=enabled \ -Dnss=enabled \
%{arg_packager} \ %{arg_packager} \