aboutsummaryrefslogtreecommitdiff
path: root/block/Makefile.objs
diff options
context:
space:
mode:
authorFam Zheng <famz@redhat.com>2016-09-05 10:50:45 +0800
committerMax Reitz <mreitz@redhat.com>2016-10-07 14:14:06 +0200
commit27685a8dd08c051fa6d641fe46106fc0dfa51073 (patch)
treeefe15b0952ffe7eeec72c103479ca77d6a422837 /block/Makefile.objs
parentdffa41b48651c4002af02e80b7459e56a77152c7 (diff)
dmg: Move libbz2 code to dmg-bz2.so
dmg.o was moved to block-obj-m in 5505e8b76 to become a separate module, so that its reference to libbz2, since 6b383c08c, doesn't add an extra library to the main executable. Until recently, commit 06e60f70a (blockdev: Add dynamic module loading for block drivers) moved it back to block-obj-y to simplify the design of dynamic loading of block modules. But we don't want to lose the feature of less library dependency on the main executable. The solution here is to move only the bz2 related code to a separate DSO file, and load it when dmg_open is called. dmg_probe doesn't depend on bz2 support to work, and is the only code in this file which can run before dmg_open. While we are at it, fix the unhelpful cast of last argument passed to dmg_uncompress_bz2. Signed-off-by: Fam Zheng <famz@redhat.com> Message-id: 1473043845-13197-4-git-send-email-famz@redhat.com Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'block/Makefile.objs')
-rw-r--r--block/Makefile.objs3
1 files changed, 2 insertions, 1 deletions
diff --git a/block/Makefile.objs b/block/Makefile.objs
index 7d4031dae5..67a036a1df 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -41,6 +41,7 @@ gluster.o-libs := $(GLUSTERFS_LIBS)
ssh.o-cflags := $(LIBSSH2_CFLAGS)
ssh.o-libs := $(LIBSSH2_LIBS)
archipelago.o-libs := $(ARCHIPELAGO_LIBS)
-dmg.o-libs := $(BZIP2_LIBS)
+block-obj-$(if $(CONFIG_BZIP2),m,n) += dmg-bz2.o
+dmg-bz2.o-libs := $(BZIP2_LIBS)
qcow.o-libs := -lz
linux-aio.o-libs := -laio