qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

configure: Enable test and libs for zstd

Add it to several build systems to make testing good.

Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

+53 -4
+1
.gitlab-ci.yml
··· 21 21 script: 22 22 - apt-get install -y -qq libsdl2-dev libgcrypt-dev libbrlapi-dev libaio-dev 23 23 libfdt-dev liblzo2-dev librdmacm-dev libibverbs-dev libibumad-dev 24 + libzstd-dev 24 25 - mkdir build 25 26 - cd build 26 27 - ../configure --enable-werror --target-list="tricore-softmmu unicore32-softmmu
+1
.travis.yml
··· 49 49 - libusb-1.0-0-dev 50 50 - libvdeplug-dev 51 51 - libvte-2.91-dev 52 + - libzstd-dev 52 53 - sparse 53 54 - uuid-dev 54 55 - gcovr
+30
configure
··· 449 449 snappy="" 450 450 bzip2="" 451 451 lzfse="" 452 + zstd="" 452 453 guest_agent="" 453 454 guest_agent_with_vss="no" 454 455 guest_agent_ntddscsi="no" ··· 1371 1372 ;; 1372 1373 --disable-lzfse) lzfse="no" 1373 1374 ;; 1375 + --disable-zstd) zstd="no" 1376 + ;; 1377 + --enable-zstd) zstd="yes" 1378 + ;; 1374 1379 --enable-guest-agent) guest_agent="yes" 1375 1380 ;; 1376 1381 --disable-guest-agent) guest_agent="no" ··· 1829 1834 (for reading bzip2-compressed dmg images) 1830 1835 lzfse support of lzfse compression library 1831 1836 (for reading lzfse-compressed dmg images) 1837 + zstd support for zstd compression library 1838 + (for migration compression) 1832 1839 seccomp seccomp support 1833 1840 coroutine-pool coroutine freelist (better performance) 1834 1841 glusterfs GlusterFS backend ··· 2450 2457 feature_not_found "lzfse" "Install lzfse devel" 2451 2458 fi 2452 2459 lzfse="no" 2460 + fi 2461 + fi 2462 + 2463 + ########################################## 2464 + # zstd check 2465 + 2466 + if test "$zstd" != "no" ; then 2467 + if $pkg_config --exist libzstd ; then 2468 + zstd_cflags="$($pkg_config --cflags libzstd)" 2469 + zstd_libs="$($pkg_config --libs libzstd)" 2470 + LIBS="$zstd_libs $LIBS" 2471 + QEMU_CFLAGS="$QEMU_CFLAGS $zstd_cflags" 2472 + zstd="yes" 2473 + else 2474 + if test "$zstd" = "yes" ; then 2475 + feature_not_found "libzstd" "Install libzstd devel" 2476 + fi 2477 + zstd="no" 2453 2478 fi 2454 2479 fi 2455 2480 ··· 6668 6693 echo "snappy support $snappy" 6669 6694 echo "bzip2 support $bzip2" 6670 6695 echo "lzfse support $lzfse" 6696 + echo "zstd support $zstd" 6671 6697 echo "NUMA host support $numa" 6672 6698 echo "libxml2 $libxml2" 6673 6699 echo "tcmalloc support $tcmalloc" ··· 7240 7266 if test "$lzfse" = "yes" ; then 7241 7267 echo "CONFIG_LZFSE=y" >> $config_host_mak 7242 7268 echo "LZFSE_LIBS=-llzfse" >> $config_host_mak 7269 + fi 7270 + 7271 + if test "$zstd" = "yes" ; then 7272 + echo "CONFIG_ZSTD=y" >> $config_host_mak 7243 7273 fi 7244 7274 7245 7275 if test "$libiscsi" = "yes" ; then
+2 -1
tests/docker/dockerfiles/centos7.docker
··· 33 33 tar \ 34 34 vte-devel \ 35 35 xen-devel \ 36 - zlib-devel 36 + zlib-devel \ 37 + libzstd-devel 37 38 RUN yum install -y $PACKAGES 38 39 RUN rpm -q $PACKAGES | sort > /packages.txt
+2 -1
tests/docker/dockerfiles/fedora-i386-cross.docker
··· 7 7 gnutls-devel.i686 \ 8 8 nettle-devel.i686 \ 9 9 pixman-devel.i686 \ 10 - zlib-devel.i686 10 + zlib-devel.i686 \ 11 + libzstd-devel.i686 11 12 12 13 RUN dnf install -y $PACKAGES 13 14 RUN rpm -q $PACKAGES | sort > /packages.txt
+2 -1
tests/docker/dockerfiles/fedora.docker
··· 92 92 vte291-devel \ 93 93 which \ 94 94 xen-devel \ 95 - zlib-devel 95 + zlib-devel \ 96 + libzstd-devel 96 97 ENV QEMU_CONFIGURE_OPTS --python=/usr/bin/python3 97 98 98 99 RUN dnf install -y $PACKAGES
+1
tests/docker/dockerfiles/ubuntu.docker
··· 58 58 libvdeplug-dev \ 59 59 libvte-2.91-dev \ 60 60 libxen-dev \ 61 + libzstd-dev \ 61 62 make \ 62 63 python3-yaml \ 63 64 python3-sphinx \
+1
tests/docker/dockerfiles/ubuntu1804.docker
··· 44 44 libvdeplug-dev \ 45 45 libvte-2.91-dev \ 46 46 libxen-dev \ 47 + libzstd-dev \ 47 48 make \ 48 49 python3-yaml \ 49 50 python3-sphinx \
+4 -1
tests/vm/fedora
··· 53 53 # libs: audio 54 54 '"pkgconfig(libpulse)"', 55 55 '"pkgconfig(alsa)"', 56 - ] 56 + 57 + # libs: migration 58 + '"pkgconfig(libzstd)"', 59 + ] 57 60 58 61 BUILD_SCRIPT = """ 59 62 set -e;
+3
tests/vm/freebsd
··· 55 55 # libs: opengl 56 56 "libepoxy", 57 57 "mesa-libs", 58 + 59 + # libs: migration 60 + "zstd", 58 61 ] 59 62 60 63 BUILD_SCRIPT = """
+3
tests/vm/netbsd
··· 49 49 "SDL2", 50 50 "gtk3+", 51 51 "libxkbcommon", 52 + 53 + # libs: migration 54 + "zstd", 52 55 ] 53 56 54 57 BUILD_SCRIPT = """
+3
tests/vm/openbsd
··· 51 51 "sdl2", 52 52 "gtk+3", 53 53 "libxkbcommon", 54 + 55 + # libs: migration 56 + "zstd", 54 57 ] 55 58 56 59 BUILD_SCRIPT = """