From 9ea6c3d39def9a1e25d2b8bc327667cf45d67409 Mon Sep 17 00:00:00 2001 From: Tony Hutter Date: Sun, 25 Mar 2018 15:00:47 -0700 Subject: [PATCH] Fedora 28: Fix "Macro %_dracutdir has empty body" If you run ./configure --with-config=srpm, it will not trigger the user m4 scripts to populate the dracut and udev directories. This causes a build error on Fedora 28. Make the dracut and udev lines conditional to get around this. Reviewed-by: Brian Behlendorf Signed-off-by: Tony Hutter Closes #7326 Closes #7328 --- config/zfs-build.m4 | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/config/zfs-build.m4 b/config/zfs-build.m4 index e6c386e821..818e999825 100644 --- a/config/zfs-build.m4 +++ b/config/zfs-build.m4 @@ -185,10 +185,23 @@ AC_DEFUN([ZFS_AC_RPM], [ RPM_DEFINE_COMMON+=' --define "$(DEBUGINFO_ZFS) 1"' RPM_DEFINE_COMMON+=' --define "$(ASAN_ZFS) 1"' - RPM_DEFINE_UTIL='--define "_dracutdir $(dracutdir)"' - RPM_DEFINE_UTIL+=' --define "_udevdir $(udevdir)"' - RPM_DEFINE_UTIL+=' --define "_udevruledir $(udevruledir)"' - RPM_DEFINE_UTIL+=' --define "_initconfdir $(DEFAULT_INITCONF_DIR)"' + + RPM_DEFINE_UTIL=' --define "_initconfdir $(DEFAULT_INITCONF_DIR)"' + + dnl # Make the next three RPM_DEFINE_UTIL additions conditional, since + dnl # their values may not be set when running: + dnl # + dnl # ./configure --with-config=srpm + dnl # + AS_IF([test -n "$dracutdir" ], [ + RPM_DEFINE_UTIL='--define "_dracutdir $(dracutdir)"' + ]) + AS_IF([test -n "$udevdir" ], [ + RPM_DEFINE_UTIL+=' --define "_udevdir $(udevdir)"' + ]) + AS_IF([test -n "$udevruledir" ], [ + RPM_DEFINE_UTIL+=' --define "_udevdir $(udevruledir)"' + ]) RPM_DEFINE_UTIL+=' $(DEFINE_INITRAMFS)' RPM_DEFINE_UTIL+=' $(DEFINE_SYSTEMD)'