]> granicus.if.org Git - zfs/commitdiff
Fix libudev dependency in libzutil
authorDon Brady <don.brady@delphix.com>
Wed, 7 Nov 2018 01:47:52 +0000 (18:47 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 7 Nov 2018 01:47:52 +0000 (17:47 -0800)
ZFS should be able to build without libudev installed. The recent
change for libzutil inadvertently broke that.  Make the libudev code
conditional in zutil_import.c to resolve the build failure.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Signed-off-by: Don Brady <don.brady@delphix.com>
Closes #8097

include/libzutil.h
lib/libzutil/zutil_import.c

index 39fc5554b39cbcca75d20dae6203966f989bb67b..69d1e6bbd6380d7cfbac32184daf57a4eab894ec 100644 (file)
@@ -79,10 +79,16 @@ extern const char * const * zpool_default_search_paths(size_t *count);
 extern int zpool_read_label(int, nvlist_t **, int *);
 extern int zpool_label_disk_wait(const char *, int);
 
+#ifdef HAVE_LIBUDEV
 struct udev_device;
 
 extern int zfs_device_get_devid(struct udev_device *, char *, size_t);
 extern int zfs_device_get_physical(struct udev_device *, char *, size_t);
+#else
+#define        zfs_device_get_devid(dev, bufptr, buflen)       (ENODATA)
+#define        zfs_device_get_physical(dev, bufptr, buflen)    (ENODATA)
+#endif
+
 extern void update_vdev_config_dev_strs(nvlist_t *);
 
 /*
@@ -108,7 +114,7 @@ extern char *zfs_get_enclosure_sysfs_path(const char *);
 #ifdef HAVE_LIBUDEV
 extern boolean_t is_mpath_whole_disk(const char *);
 #else
-#define        is_mpath_whole_disk(path) (B_FALSE);
+#define        is_mpath_whole_disk(path) (B_FALSE)
 #endif
 
 /*
index f6e56fabf03218c858afd36e29ce43bd01d8040a..4284efa757facb2ef5841c5abd6232fc2eaab55c 100644 (file)
@@ -224,6 +224,7 @@ typedef struct vdev_dev_strs {
        char    vds_devphys[128];
 } vdev_dev_strs_t;
 
+#ifdef HAVE_LIBUDEV
 /*
  * Obtain the persistent device id string (describes what)
  *
@@ -398,6 +399,7 @@ udev_device_is_ready(struct udev_device *dev)
        return (udev_device_get_property_value(dev, "DEVLINKS") != NULL);
 #endif
 }
+#endif /* HAVE_LIBUDEV */
 
 /*
  * Wait up to timeout_ms for udev to set up the device node.  The device is