diff --git a/zfs/lib/libzfs/libzfs_pool.c b/zfs/lib/libzfs/libzfs_pool.c index ae4b19adba..113abc9d34 100644 --- a/zfs/lib/libzfs/libzfs_pool.c +++ b/zfs/lib/libzfs/libzfs_pool.c @@ -46,6 +46,7 @@ #include "zfs_namecheck.h" #include "zfs_prop.h" #include "libzfs_impl.h" +#include "zfs_config.h" static int read_efi_label(nvlist_t *config, diskaddr_t *sb); @@ -2808,6 +2809,7 @@ read_efi_label(nvlist_t *config, diskaddr_t *sb) * determine where a partition starts on a disk in the current * configuration */ +#ifdef HAVE_LIBEFI static diskaddr_t find_start_block(nvlist_t *config) { @@ -3060,3 +3062,4 @@ out: libzfs_fini(hdl); return (ret); } +#endif /* HAVE_LIBEFI */ diff --git a/zfs/zcmd/zpool/zpool_vdev.c b/zfs/zcmd/zpool/zpool_vdev.c index 519ff62e47..169ac2712d 100644 --- a/zfs/zcmd/zpool/zpool_vdev.c +++ b/zfs/zcmd/zpool/zpool_vdev.c @@ -364,6 +364,7 @@ check_file(const char *file, boolean_t force, boolean_t isspare) static boolean_t is_whole_disk(const char *arg) { +#ifdef HAVE_LIBEFI struct dk_gpt *label; int fd; char path[MAXPATHLEN]; @@ -379,6 +380,9 @@ is_whole_disk(const char *arg) efi_free(label); (void) close(fd); return (B_TRUE); +#else + return (B_FALSE); +#endif } /* @@ -888,6 +892,7 @@ check_replication(nvlist_t *config, nvlist_t *newroot) static int make_disks(zpool_handle_t *zhp, nvlist_t *nv) { +#ifdef HAVE_LIBEFI nvlist_t **child; uint_t c, children; char *type, *path, *diskname; @@ -975,7 +980,7 @@ make_disks(zpool_handle_t *zhp, nvlist_t *nv) for (c = 0; c < children; c++) if ((ret = make_disks(zhp, child[c])) != 0) return (ret); - +#endif return (0); }