@@ -221,6 +221,10 @@ qemu-img$(EXESUF) qemu-nbd$(EXESUF) qemu-io$(EXESUF): LIBS += -lz
qemu-img-cmds.h: $(SRC_PATH)/qemu-img-cmds.hx
$(call quiet-command,sh $(SRC_PATH)/hxtool -h < $< > $@," GEN $@")
+ifdef CONFIG_CHECK
+LIBS += $(CHECK_LIBS)
+endif
+
clean:
# avoid old build problems by removing potentially incorrect old files
rm -f config.mak config.h op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h
@@ -190,6 +190,7 @@ build_docs="yes"
uname_release=""
curses="yes"
curl="yes"
+check="no"
pthread="yes"
aio="yes"
io_thread="no"
@@ -503,6 +504,8 @@ for opt do
;;
--disable-curl) curl="no"
;;
+ --enable-check) check="yes"
+ ;;
--disable-nptl) nptl="no"
;;
--enable-mixemu) mixemu="yes"
@@ -651,6 +654,7 @@ echo " --disable-vnc-tls disable TLS encryption for VNC server"
echo " --disable-vnc-sasl disable SASL encryption for VNC server"
echo " --disable-curses disable curses output"
echo " --disable-curl disable curl connectivity"
+echo " --enable-check enable check unit-tests"
echo " --disable-bluez disable bluez stack connectivity"
echo " --disable-kvm disable KVM acceleration support"
echo " --disable-nptl disable usermode NPTL support"
@@ -1132,6 +1136,25 @@ EOF
fi # test "$curl"
##########################################
+# check probe
+
+if test "$check" = "yes" ; then
+ `pkg-config --libs check > /dev/null 2> /dev/null` || check="no"
+fi
+
+if test "$check" = "yes" ; then
+ check="no"
+ cat > $TMPC << EOF
+#include <check.h>
+int main(void) { suite_create("yeah"); return 0; }
+EOF
+ check_libs=`pkg-config --libs check`
+ if $cc ${ARCH_CFLAGS} $check_libs -o $TMPE $TMPC > /dev/null 2> /dev/null ; then
+ check="yes"
+ fi
+fi # test "$check"
+
+##########################################
# bluez support probe
if test "$bluez" = "yes" ; then
`pkg-config bluez 2> /dev/null` || bluez="no"
@@ -1438,6 +1461,7 @@ fi
echo "SDL support $sdl"
echo "curses support $curses"
echo "curl support $curl"
+echo "check support $check"
echo "mingw32 support $mingw32"
echo "Audio drivers $audio_drv_list"
echo "Extra audio cards $audio_card_list"
@@ -1646,6 +1670,11 @@ if test "$curl" = "yes" ; then
echo "CONFIG_CURL=y" >> $config_host_mak
echo "CURL_LIBS=$curl_libs" >> $config_host_mak
fi
+if test "$check" = "yes" ; then
+ echo "CONFIG_CHECK=y" >> $config_host_mak
+ echo "CHECK_LIBS=$check_libs" >> $config_host_mak
+ echo "#define CONFIG_CHECK 1" >> $config_host_h
+fi
if test "$brlapi" = "yes" ; then
echo "CONFIG_BRLAPI=y" >> $config_host_mak
echo "BRLAPI_LIBS=$brlapi_libs" >> $config_host_mak
@@ -1735,6 +1764,9 @@ if test `expr "$target_list" : ".*softmmu.*"` != 0 ; then
tools="qemu-img\$(EXESUF) $tools"
if [ "$linux" = "yes" ] ; then
tools="qemu-nbd\$(EXESUF) qemu-io\$(EXESUF) $tools"
+ if [ "$check" = "yes" ]; then
+ tools="$tools"
+ fi
fi
fi
echo "TOOLS=$tools" >> $config_host_mak
Check is a unit testing framework for C. New monitor code and QDict have unit-tests written with it and more unit-tests will be written for the next high level data types. More info about check can be found at: http://check.sourceforge.net/ Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> --- Makefile | 4 ++++ configure | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 0 deletions(-)