From 25bb7814606facff3a9b54eed0eb9b8c8efe0eaf Mon Sep 17 00:00:00 2001 From: siv0 Date: Fri, 6 Oct 2023 18:53:23 +0200 Subject: [PATCH] rpm: Fix `make rpm` on Debian/Ubuntu The recent patch to change the bash completion install location based on the Distribution, ignored that it should still be possible to create RPMs on Debian derived systems. Additionally `make deb` itself creates RPMs and converts them via `alien`. This patch adds the bashcompletiondir variable to the rpm defines and uses this for the location, where to get the bash completion file. It still changes the location on Debian/Ubuntu systems in the final packages from /etc/bash_completion.d to /usr/share/bash-completion/completions Fixes: e69ade32e116e72d03068c03799924c3f1a15c95 Reviewed-by: Brian Behlendorf Signed-off-by: Stoiko Ivanov Closes #15355 Closes #15365 --- config/zfs-build.m4 | 3 +++ rpm/generic/zfs.spec.in | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/config/zfs-build.m4 b/config/zfs-build.m4 index 5ea6aa29a3de..e4197dc1424e 100644 --- a/config/zfs-build.m4 +++ b/config/zfs-build.m4 @@ -358,6 +358,9 @@ AC_DEFUN([ZFS_AC_RPM], [ AS_IF([test -n "$udevruledir" ], [ RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' --define "_udevruledir $(udevruledir)"' ]) + AS_IF([test -n "$bashcompletiondir" ], [ + RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' --define "_bashcompletiondir $(bashcompletiondir)"' + ]) RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' $(DEFINE_SYSTEMD)' RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' $(DEFINE_PYZFS)' RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' $(DEFINE_PAM)' diff --git a/rpm/generic/zfs.spec.in b/rpm/generic/zfs.spec.in index 8c538a00d203..711e6c751dc0 100644 --- a/rpm/generic/zfs.spec.in +++ b/rpm/generic/zfs.spec.in @@ -522,7 +522,7 @@ systemctl --system daemon-reload >/dev/null || true %config(noreplace) %{_sysconfdir}/%{name}/vdev_id.conf.*.example %attr(440, root, root) %config(noreplace) %{_sysconfdir}/sudoers.d/* -%config(noreplace) %{_sysconfdir}/bash_completion.d/zfs +%config(noreplace) %{_bashcompletiondir}/zfs %files -n libzpool5 %{_libdir}/libzpool.so.*