[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH V19 03/10] libqblock: build: add configure support
From: |
Wenchao Xia |
Subject: |
[Qemu-devel] [PATCH V19 03/10] libqblock: build: add configure support |
Date: |
Sat, 16 Feb 2013 10:48:10 +0800 |
Rule for libqblock.la will be included if it is enabled, and
will be added to 'all' to be automatically built.
Only support Linux now, to save trouble in building on windows.
Signed-off-by: Wenchao Xia <address@hidden>
---
Makefile | 3 +++
configure | 32 ++++++++++++++++++++++++++++++++
libqblock/Makefile | 4 ++++
3 files changed, 39 insertions(+), 0 deletions(-)
create mode 100644 libqblock/Makefile
diff --git a/Makefile b/Makefile
index b2d7798..a472fd3 100644
--- a/Makefile
+++ b/Makefile
@@ -114,6 +114,9 @@ endif
ifeq ($(CONFIG_SMARTCARD_NSS),y)
include $(SRC_PATH)/libcacard/Makefile
endif
+ifeq ($(CONFIG_LIBQBLOCK),y)
+include $(SRC_PATH)/libqblock/Makefile
+endif
all: $(DOCS) $(TOOLS) $(HELPERS-y) recurse-all
diff --git a/configure b/configure
index aa347cc..e8a119e 100755
--- a/configure
+++ b/configure
@@ -226,6 +226,8 @@ coroutine=""
seccomp=""
glusterfs=""
virtio_blk_data_plane=""
+libqblock=""
+libqblock_requires_y=""
# parse CC options first
for opt do
@@ -898,6 +900,10 @@ for opt do
;;
--enable-virtio-blk-data-plane) virtio_blk_data_plane="yes"
;;
+ --disable-libqblock) libqblock="no"
+ ;;
+ --enable-libqblock) libqblock="yes"
+ ;;
*) echo "ERROR: unknown option $opt"; show_help="yes"
;;
esac
@@ -1147,6 +1153,8 @@ echo " --enable-glusterfs enable GlusterFS backend"
echo " --disable-glusterfs disable GlusterFS backend"
echo " --enable-gcov enable test coverage analysis with gcov"
echo " --gcov=GCOV use specified gcov [$gcov_tool]"
+echo " --enable-libqblock enable shared library libqblock"
+echo " --disable-libqblock disable shared library libqblock"
echo ""
echo "NOTE: The object files are built at the place where configure is
launched"
exit 1
@@ -2445,6 +2453,23 @@ EOF
fi
fi
+##########################################
+# libqblock probe
+if test "$libqblock" != "no"; then
+ if test -n "$libtool" && test -n "$glib_libs" && \
+ test "$linux" = "yes" \
+ ; then
+ # Only support Linux now, check for librt and libz are missing,
add it later.
+ libqblock="yes"
+ libqblock_requires_y="gthread-2.0 glib-2.0 rt z"
+ else
+ if test "$libqblock" = "yes"; then
+ feature_not_found "libqblock"
+ fi
+ libqblock="no"
+ fi
+fi
+
#
# Check for xxxat() functions when we are building linux-user
# emulator. This is done because older glibc versions don't
@@ -3361,6 +3386,7 @@ echo "GlusterFS support $glusterfs"
echo "virtio-blk-data-plane $virtio_blk_data_plane"
echo "gcov $gcov_tool"
echo "gcov enabled $gcov"
+echo "libqblock support $libqblock"
if test "$sdl_too_old" = "yes"; then
echo "-> Your SDL version is too old - please upgrade to have SDL support"
@@ -3717,6 +3743,11 @@ if test "$virtio_blk_data_plane" = "yes" ; then
echo "CONFIG_VIRTIO_BLK_DATA_PLANE=y" >> $config_host_mak
fi
+if test "$libqblock" = "yes" ; then
+ echo "CONFIG_LIBQBLOCK=y" >> $config_host_mak
+ echo "libqblock-requires-y=$libqblock_requires_y" >> $config_host_mak
+fi
+
# USB host support
case "$usb" in
linux)
@@ -4301,6 +4332,7 @@ DIRS="tests tests/tcg tests/tcg/cris tests/tcg/lm32"
DIRS="$DIRS pc-bios/optionrom pc-bios/spapr-rtas"
DIRS="$DIRS roms/seabios roms/vgabios"
DIRS="$DIRS qapi-generated"
+DIRS="$DIRS libqblock"
FILES="Makefile tests/tcg/Makefile qdict-test-data.txt"
FILES="$FILES tests/tcg/cris/Makefile tests/tcg/cris/.gdbinit"
FILES="$FILES tests/tcg/lm32/Makefile"
diff --git a/libqblock/Makefile b/libqblock/Makefile
new file mode 100644
index 0000000..8173da7
--- /dev/null
+++ b/libqblock/Makefile
@@ -0,0 +1,4 @@
+all: libqblock.la
+
+libqblock.la:
+ @true
--
1.7.1
- [Qemu-devel] [PATCH V19 00/10] libqblock qemu block layer library, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 01/10] build: add command check-clean, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 03/10] libqblock: build: add configure support,
Wenchao Xia <=
- [Qemu-devel] [PATCH V19 02/10] build: hide symbols in *.lo, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 04/10] libqblock: build: add rule for libqblock.la, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 05/10] libqblock: build: add packaging support, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 06/10] block: export function path_has_protocol(), Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 07/10] libqblock: libqblock API design and type defines, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 09/10] libqblock: build: add rules for test case, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 10/10] libqblock: test: libqblock test example, Wenchao Xia, 2013/02/15
- [Qemu-devel] [PATCH V19 08/10] libqblock: libqblock API implement, Wenchao Xia, 2013/02/15