]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
make: split storage driver build rules into storage/Makefile.inc.am
authorDaniel P. Berrangé <berrange@redhat.com>
Tue, 27 Feb 2018 11:30:54 +0000 (11:30 +0000)
committerDaniel P. Berrangé <berrange@redhat.com>
Mon, 5 Mar 2018 17:11:02 +0000 (17:11 +0000)
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
src/Makefile.am
src/storage/Makefile.inc.am [new file with mode: 0644]

index 8b56127755426082751c46962c9e41fa87109228..a47f0d43d99ec3c95f1f6357f0f15c66c8f9885d 100644 (file)
@@ -103,6 +103,7 @@ include network/Makefile.inc.am
 include nwfilter/Makefile.inc.am
 include node_device/Makefile.inc.am
 include secret/Makefile.inc.am
+include storage/Makefile.inc.am
 
 
 THREAD_LIBS = $(LIB_PTHREAD) $(LTLIBMULTITHREAD)
@@ -791,14 +792,8 @@ EXTRA_DIST += check-drivername.pl
 
 DRIVER_SOURCE_FILES += \
        $(REMOTE_DRIVER_SOURCES) \
-       $(STORAGE_DRIVER_SOURCES) \
        $(NULL)
 
-STATEFUL_DRIVER_SOURCE_FILES += \
-       $(STORAGE_DRIVER_SOURCES) \
-       $(NULL)
-
-
 check-driverimpls:
        $(AM_V_GEN)$(PERL) $(srcdir)/check-driverimpls.pl \
                $(filter /%,$(DRIVER_SOURCE_FILES)) \
@@ -829,53 +824,6 @@ SECURITY_DRIVER_APPARMOR_HELPER_SOURCES = \
                security/virt-aa-helper.c
 
 
-# Storage backend specific impls
-STORAGE_DRIVER_BACKEND_SOURCES = \
-               storage/storage_backend.h storage/storage_backend.c
-
-STORAGE_DRIVER_SOURCES = \
-               storage/storage_driver.h storage/storage_driver.c \
-               $(STORAGE_DRIVER_BACKEND_SOURCES) \
-               storage/storage_util.h storage/storage_util.c
-
-STORAGE_DRIVER_FS_SOURCES = \
-               storage/storage_backend_fs.h storage/storage_backend_fs.c
-
-STORAGE_DRIVER_LVM_SOURCES = \
-               storage/storage_backend_logical.h \
-               storage/storage_backend_logical.c
-
-STORAGE_DRIVER_ISCSI_SOURCES = \
-               storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
-
-STORAGE_DRIVER_SCSI_SOURCES = \
-               storage/storage_backend_scsi.h storage/storage_backend_scsi.c
-
-STORAGE_DRIVER_MPATH_SOURCES = \
-               storage/storage_backend_mpath.h storage/storage_backend_mpath.c
-
-STORAGE_DRIVER_DISK_SOURCES = \
-               storage/storage_backend_disk.h storage/storage_backend_disk.c
-
-STORAGE_DRIVER_RBD_SOURCES = \
-               storage/storage_backend_rbd.h storage/storage_backend_rbd.c
-
-STORAGE_DRIVER_SHEEPDOG_SOURCES = \
-               storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c \
-               storage/storage_backend_sheepdog_priv.h
-
-STORAGE_DRIVER_GLUSTER_SOURCES = \
-               storage/storage_backend_gluster.h storage/storage_backend_gluster.c
-
-STORAGE_DRIVER_ZFS_SOURCES = \
-                storage/storage_backend_zfs.h storage/storage_backend_zfs.c
-
-STORAGE_DRIVER_VSTORAGE_SOURCES = \
-                storage/storage_backend_vstorage.h \
-                storage/storage_backend_vstorage.c
-
-STORAGE_HELPER_DISK_SOURCES = \
-               storage/parthelper.c
 
 UTIL_IO_HELPER_SOURCES = \
                util/iohelper.c
@@ -1120,173 +1068,6 @@ EXTRA_DIST += \
 
 
 
-# Needed to keep automake quiet about conditionals
-libvirt_driver_storage_impl_la_SOURCES =
-libvirt_driver_storage_impl_la_CFLAGS = \
-               -I$(srcdir)/access \
-               -I$(srcdir)/conf \
-               -I$(srcdir)/secret \
-               $(AM_CFLAGS)
-libvirt_driver_storage_impl_la_LDFLAGS = $(AM_LDFLAGS)
-libvirt_driver_storage_impl_la_LIBADD =
-libvirt_driver_storage_impl_la_LIBADD += $(SECDRIVER_LIBS) $(LIBXML_LIBS)
-if WITH_BLKID
-libvirt_driver_storage_impl_la_CFLAGS += $(BLKID_CFLAGS)
-libvirt_driver_storage_impl_la_LIBADD += $(BLKID_LIBS)
-endif WITH_BLKID
-
-storagebackenddir = $(libdir)/libvirt/storage-backend
-storagebackend_LTLIBRARIES =
-
-if WITH_STORAGE
-noinst_LTLIBRARIES += libvirt_driver_storage_impl.la
-libvirt_driver_storage_la_SOURCES =
-libvirt_driver_storage_la_LIBADD = libvirt_driver_storage_impl.la
-mod_LTLIBRARIES += libvirt_driver_storage.la
-libvirt_driver_storage_la_LIBADD += libvirt.la ../gnulib/lib/libgnu.la
-libvirt_driver_storage_la_LDFLAGS = $(AM_LDFLAGS_MOD_NOUNDEF)
-libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
-
-
-libvirt_storage_backend_fs_la_SOURCES = $(STORAGE_DRIVER_FS_SOURCES)
-libvirt_storage_backend_fs_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_fs.la
-libvirt_storage_backend_fs_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_fs_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE
-
-if WITH_STORAGE_LVM
-libvirt_storage_backend_logical_la_SOURCES = \
-       $(STORAGE_DRIVER_LVM_SOURCES)
-libvirt_storage_backend_logical_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_logical.la
-libvirt_storage_backend_logical_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_logical_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_LVM
-
-if WITH_STORAGE_ISCSI
-libvirt_storage_backend_iscsi_la_SOURCES = \
-       $(STORAGE_DRIVER_ISCSI_SOURCES)
-libvirt_storage_backend_iscsi_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       -I$(srcdir)/secret \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_iscsi.la
-libvirt_storage_backend_iscsi_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_iscsi_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_ISCSI
-
-if WITH_STORAGE_SCSI
-libvirt_storage_backend_scsi_la_SOURCES = $(STORAGE_DRIVER_SCSI_SOURCES)
-libvirt_storage_backend_scsi_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_scsi.la
-libvirt_storage_backend_scsi_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_scsi_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_SCSI
-
-if WITH_STORAGE_MPATH
-libvirt_storage_backend_mpath_la_SOURCES = \
-       $(STORAGE_DRIVER_MPATH_SOURCES)
-libvirt_storage_backend_mpath_la_LIBADD = libvirt.la $(DEVMAPPER_LIBS)
-libvirt_storage_backend_mpath_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(DEVMAPPER_CFLAGS) \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_mpath.la
-libvirt_storage_backend_mpath_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_mpath_la_LIBADD += ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_MPATH
-
-if WITH_STORAGE_DISK
-libvirt_storage_backend_disk_la_SOURCES = $(STORAGE_DRIVER_DISK_SOURCES)
-libvirt_storage_backend_disk_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_disk.la
-libvirt_storage_backend_disk_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_disk_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_DISK
-
-if WITH_STORAGE_RBD
-libvirt_storage_backend_rbd_la_SOURCES = $(STORAGE_DRIVER_RBD_SOURCES)
-libvirt_storage_backend_rbd_la_LIBADD = libvirt.la $(LIBRBD_LIBS)
-libvirt_storage_backend_rbd_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       -I$(srcdir)/secret \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_rbd.la
-libvirt_storage_backend_rbd_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_rbd_la_LIBADD += ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_RBD
-
-if WITH_STORAGE_SHEEPDOG
-libvirt_storage_backend_sheepdog_la_SOURCES = \
-       $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
-libvirt_storage_backend_sheepdog_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-libvirt_storage_backend_sheepdog_priv_la_SOURCES = \
-       $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
-libvirt_storage_backend_sheepdog_priv_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-noinst_LTLIBRARIES += libvirt_storage_backend_sheepdog_priv.la
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_sheepdog.la
-libvirt_storage_backend_sheepdog_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_sheepdog_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_SHEEPDOG
-
-if WITH_STORAGE_GLUSTER
-libvirt_storage_backend_gluster_la_SOURCES = \
-       $(STORAGE_DRIVER_GLUSTER_SOURCES)
-libvirt_storage_backend_gluster_la_LIBADD = libvirt.la $(GLUSTERFS_LIBS)
-libvirt_storage_backend_gluster_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(GLUSTERFS_CFLAGS) \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_gluster.la
-libvirt_storage_backend_gluster_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_gluster_la_LIBADD += ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_GLUSTER
-
-if WITH_STORAGE_ZFS
-libvirt_storage_backend_zfs_la_SOURCES = $(STORAGE_DRIVER_ZFS_SOURCES)
-libvirt_storage_backend_zfs_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_zfs.la
-libvirt_storage_backend_zfs_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_zfs_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_ZFS
-
-if WITH_STORAGE_VSTORAGE
-libvirt_storage_backend_vstorage_la_SOURCES = \
-       $(STORAGE_DRIVER_VSTORAGE_SOURCES)
-libvirt_storage_backend_vstorage_la_CFLAGS = \
-       -I$(srcdir)/conf \
-       $(AM_CFLAGS)
-
-storagebackend_LTLIBRARIES += libvirt_storage_backend_vstorage.la
-libvirt_storage_backend_vstorage_la_LDFLAGS = $(AM_LDFLAGS_MOD)
-libvirt_storage_backend_vstorage_la_LIBADD = libvirt.la ../gnulib/lib/libgnu.la
-endif WITH_STORAGE_VSTORAGE
 
 
 
@@ -1401,18 +1182,6 @@ access/viraccessapichecklxc.c: $(srcdir)/rpc/gendispatch.pl \
 # Add all conditional sources just in case...
 EXTRA_DIST += \
                $(REMOTE_DRIVER_SOURCES) \
-               $(STORAGE_DRIVER_SOURCES) \
-               $(STORAGE_DRIVER_FS_SOURCES) \
-               $(STORAGE_DRIVER_LVM_SOURCES) \
-               $(STORAGE_DRIVER_ISCSI_SOURCES) \
-               $(STORAGE_DRIVER_SCSI_SOURCES) \
-               $(STORAGE_DRIVER_MPATH_SOURCES) \
-               $(STORAGE_DRIVER_DISK_SOURCES) \
-               $(STORAGE_DRIVER_RBD_SOURCES) \
-               $(STORAGE_DRIVER_SHEEPDOG_SOURCES) \
-               $(STORAGE_DRIVER_GLUSTER_SOURCES) \
-               $(STORAGE_DRIVER_ZFS_SOURCES) \
-               $(STORAGE_DRIVER_VSTORAGE_SOURCES) \
                $(SECURITY_DRIVER_SELINUX_SOURCES) \
                $(SECURITY_DRIVER_APPARMOR_SOURCES) \
                $(ACCESS_DRIVER_POLKIT_POLICY)
@@ -2519,32 +2288,6 @@ libvirt_iohelper_CFLAGS = \
 
 endif WITH_LIBVIRTD
 
-if WITH_STORAGE_DISK
-if WITH_LIBVIRTD
-libexec_PROGRAMS += libvirt_parthelper
-
-libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
-libvirt_parthelper_LDFLAGS = \
-               $(AM_LDFLAGS) \
-               $(PIE_LDFLAGS) \
-               $(NULL)
-libvirt_parthelper_LDADD = \
-               $(LIBPARTED_LIBS) \
-               libvirt_util.la \
-               ../gnulib/lib/libgnu.la
-if WITH_DTRACE_PROBES
-libvirt_parthelper_LDADD += libvirt_probes.lo
-endif WITH_DTRACE_PROBES
-
-libvirt_parthelper_CFLAGS = \
-               $(LIBPARTED_CFLAGS) \
-               $(AM_CFLAGS) \
-               $(PIE_CFLAGS) \
-               $(NULL)
-endif WITH_LIBVIRTD
-endif WITH_STORAGE_DISK
-EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)
-
 
 if WITH_SANLOCK
 libexec_PROGRAMS += libvirt_sanlock_helper
diff --git a/src/storage/Makefile.inc.am b/src/storage/Makefile.inc.am
new file mode 100644 (file)
index 0000000..ae9fdeb
--- /dev/null
@@ -0,0 +1,323 @@
+STORAGE_DRIVER_BACKEND_SOURCES = \
+       storage/storage_backend.h \
+       storage/storage_backend.c \
+       $(NULL)
+
+STORAGE_DRIVER_SOURCES = \
+       storage/storage_driver.h \
+       storage/storage_driver.c \
+       $(STORAGE_DRIVER_BACKEND_SOURCES) \
+       storage/storage_util.h \
+       storage/storage_util.c \
+       $(NULL)
+
+STORAGE_DRIVER_FS_SOURCES = \
+       storage/storage_backend_fs.h \
+       storage/storage_backend_fs.c \
+       $(NULL)
+
+STORAGE_DRIVER_LVM_SOURCES = \
+       storage/storage_backend_logical.h \
+       storage/storage_backend_logical.c \
+       $(NULL)
+
+STORAGE_DRIVER_ISCSI_SOURCES = \
+       storage/storage_backend_iscsi.h \
+       storage/storage_backend_iscsi.c \
+       $(NULL)
+
+STORAGE_DRIVER_SCSI_SOURCES = \
+       storage/storage_backend_scsi.h \
+       storage/storage_backend_scsi.c \
+       $(NULL)
+
+STORAGE_DRIVER_MPATH_SOURCES = \
+       storage/storage_backend_mpath.h \
+       storage/storage_backend_mpath.c \
+       $(NULL)
+
+STORAGE_DRIVER_DISK_SOURCES = \
+       storage/storage_backend_disk.h \
+       storage/storage_backend_disk.c \
+       $(NULL)
+
+STORAGE_DRIVER_RBD_SOURCES = \
+       storage/storage_backend_rbd.h \
+       storage/storage_backend_rbd.c \
+       $(NULL)
+
+STORAGE_DRIVER_SHEEPDOG_SOURCES = \
+       storage/storage_backend_sheepdog.h \
+       storage/storage_backend_sheepdog.c \
+       storage/storage_backend_sheepdog_priv.h \
+       $(NULL)
+
+STORAGE_DRIVER_GLUSTER_SOURCES = \
+       storage/storage_backend_gluster.h \
+       storage/storage_backend_gluster.c \
+       $(NULL)
+
+STORAGE_DRIVER_ZFS_SOURCES = \
+       storage/storage_backend_zfs.h \
+       storage/storage_backend_zfs.c \
+       $(NULL)
+
+STORAGE_DRIVER_VSTORAGE_SOURCES = \
+       storage/storage_backend_vstorage.h \
+       storage/storage_backend_vstorage.c \
+       $(NULL)
+
+STORAGE_HELPER_DISK_SOURCES = \
+       storage/parthelper.c \
+       $(NULL)
+
+DRIVER_SOURCE_FILES += $(STORAGE_DRIVER_SOURCES)
+STATEFUL_DRIVER_SOURCE_FILES += $(STORAGE_DRIVER_SOURCES)
+EXTRA_DIST += \
+       $(STORAGE_DRIVER_SOURCES) \
+       $(STORAGE_DRIVER_FS_SOURCES) \
+       $(STORAGE_DRIVER_LVM_SOURCES) \
+       $(STORAGE_DRIVER_ISCSI_SOURCES) \
+       $(STORAGE_DRIVER_SCSI_SOURCES) \
+       $(STORAGE_DRIVER_MPATH_SOURCES) \
+       $(STORAGE_DRIVER_DISK_SOURCES) \
+       $(STORAGE_DRIVER_RBD_SOURCES) \
+       $(STORAGE_DRIVER_SHEEPDOG_SOURCES) \
+       $(STORAGE_DRIVER_GLUSTER_SOURCES) \
+       $(STORAGE_DRIVER_ZFS_SOURCES) \
+       $(STORAGE_DRIVER_VSTORAGE_SOURCES) \
+       $(STORAGE_HELPER_DISK_SOURCES) \
+       $(NULL)
+
+storagebackenddir = $(libdir)/libvirt/storage-backend
+storagebackend_LTLIBRARIES =
+
+# Needed to keep automake quiet about conditionals
+libvirt_driver_storage_impl_la_SOURCES =
+libvirt_driver_storage_impl_la_CFLAGS = \
+       -I$(srcdir)/access \
+       -I$(srcdir)/conf \
+       -I$(srcdir)/secret \
+       $(AM_CFLAGS) \
+       $(NULL)
+libvirt_driver_storage_impl_la_LDFLAGS = $(AM_LDFLAGS)
+libvirt_driver_storage_impl_la_LIBADD = $(SECDRIVER_LIBS) $(LIBXML_LIBS)
+if WITH_BLKID
+libvirt_driver_storage_impl_la_CFLAGS += $(BLKID_CFLAGS)
+libvirt_driver_storage_impl_la_LIBADD += $(BLKID_LIBS)
+endif WITH_BLKID
+
+if WITH_STORAGE
+noinst_LTLIBRARIES += libvirt_driver_storage_impl.la
+libvirt_driver_storage_la_SOURCES =
+libvirt_driver_storage_la_LIBADD = \
+       libvirt_driver_storage_impl.la \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+mod_LTLIBRARIES += libvirt_driver_storage.la
+libvirt_driver_storage_la_LDFLAGS = $(AM_LDFLAGS_MOD_NOUNDEF)
+libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
+
+
+libvirt_storage_backend_fs_la_SOURCES = $(STORAGE_DRIVER_FS_SOURCES)
+libvirt_storage_backend_fs_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_fs.la
+libvirt_storage_backend_fs_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_fs_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE
+
+if WITH_STORAGE_LVM
+libvirt_storage_backend_logical_la_SOURCES = $(STORAGE_DRIVER_LVM_SOURCES)
+libvirt_storage_backend_logical_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_logical.la
+libvirt_storage_backend_logical_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_logical_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_LVM
+
+if WITH_STORAGE_ISCSI
+libvirt_storage_backend_iscsi_la_SOURCES = $(STORAGE_DRIVER_ISCSI_SOURCES)
+libvirt_storage_backend_iscsi_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       -I$(srcdir)/secret \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_iscsi.la
+libvirt_storage_backend_iscsi_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_iscsi_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_ISCSI
+
+if WITH_STORAGE_SCSI
+libvirt_storage_backend_scsi_la_SOURCES = $(STORAGE_DRIVER_SCSI_SOURCES)
+libvirt_storage_backend_scsi_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_scsi.la
+libvirt_storage_backend_scsi_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_scsi_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_SCSI
+
+if WITH_STORAGE_MPATH
+libvirt_storage_backend_mpath_la_SOURCES = $(STORAGE_DRIVER_MPATH_SOURCES)
+libvirt_storage_backend_mpath_la_LIBADD = \
+       libvirt.la \
+       $(DEVMAPPER_LIBS) \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+libvirt_storage_backend_mpath_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(DEVMAPPER_CFLAGS) \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_mpath.la
+libvirt_storage_backend_mpath_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+endif WITH_STORAGE_MPATH
+
+if WITH_STORAGE_DISK
+libvirt_storage_backend_disk_la_SOURCES = $(STORAGE_DRIVER_DISK_SOURCES)
+libvirt_storage_backend_disk_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_disk.la
+libvirt_storage_backend_disk_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_disk_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_DISK
+
+if WITH_STORAGE_RBD
+libvirt_storage_backend_rbd_la_SOURCES = $(STORAGE_DRIVER_RBD_SOURCES)
+libvirt_storage_backend_rbd_la_LIBADD = \
+       libvirt.la \
+       $(LIBRBD_LIBS) \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+libvirt_storage_backend_rbd_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       -I$(srcdir)/secret \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_rbd.la
+libvirt_storage_backend_rbd_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+endif WITH_STORAGE_RBD
+
+if WITH_STORAGE_SHEEPDOG
+libvirt_storage_backend_sheepdog_la_SOURCES = $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
+libvirt_storage_backend_sheepdog_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+libvirt_storage_backend_sheepdog_priv_la_SOURCES = $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
+libvirt_storage_backend_sheepdog_priv_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+noinst_LTLIBRARIES += libvirt_storage_backend_sheepdog_priv.la
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_sheepdog.la
+libvirt_storage_backend_sheepdog_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_sheepdog_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_SHEEPDOG
+
+if WITH_STORAGE_GLUSTER
+libvirt_storage_backend_gluster_la_SOURCES = $(STORAGE_DRIVER_GLUSTER_SOURCES)
+libvirt_storage_backend_gluster_la_LIBADD = \
+       libvirt.la \
+       $(GLUSTERFS_LIBS) \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+libvirt_storage_backend_gluster_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(GLUSTERFS_CFLAGS) \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_gluster.la
+libvirt_storage_backend_gluster_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+endif WITH_STORAGE_GLUSTER
+
+if WITH_STORAGE_ZFS
+libvirt_storage_backend_zfs_la_SOURCES = $(STORAGE_DRIVER_ZFS_SOURCES)
+libvirt_storage_backend_zfs_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_zfs.la
+libvirt_storage_backend_zfs_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_zfs_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_ZFS
+
+if WITH_STORAGE_VSTORAGE
+libvirt_storage_backend_vstorage_la_SOURCES = $(STORAGE_DRIVER_VSTORAGE_SOURCES)
+libvirt_storage_backend_vstorage_la_CFLAGS = \
+       -I$(srcdir)/conf \
+       $(AM_CFLAGS) \
+       $(NULL)
+
+storagebackend_LTLIBRARIES += libvirt_storage_backend_vstorage.la
+libvirt_storage_backend_vstorage_la_LDFLAGS = $(AM_LDFLAGS_MOD)
+libvirt_storage_backend_vstorage_la_LIBADD = \
+       libvirt.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+endif WITH_STORAGE_VSTORAGE
+
+if WITH_STORAGE_DISK
+libexec_PROGRAMS += libvirt_parthelper
+
+libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
+libvirt_parthelper_LDFLAGS = \
+       $(AM_LDFLAGS) \
+       $(PIE_LDFLAGS) \
+       $(NULL)
+libvirt_parthelper_LDADD = \
+       $(LIBPARTED_LIBS) \
+       libvirt_util.la \
+       ../gnulib/lib/libgnu.la \
+       $(NULL)
+if WITH_DTRACE_PROBES
+libvirt_parthelper_LDADD += libvirt_probes.lo
+endif WITH_DTRACE_PROBES
+
+libvirt_parthelper_CFLAGS = \
+       $(LIBPARTED_CFLAGS) \
+       $(AM_CFLAGS) \
+       $(PIE_CFLAGS) \
+       $(NULL)
+endif WITH_STORAGE_DISK