configure.ac 28.8 KB
Newer Older
D
Daniel Veillard 已提交
1
dnl Process this file with autoconf to produce a configure script.
2

3
dnl Copyright (C) 2005-2015 Red Hat, Inc.
E
Eric Blake 已提交
4 5 6 7 8 9 10 11 12 13 14 15 16 17
dnl
dnl This library is free software; you can redistribute it and/or
dnl modify it under the terms of the GNU Lesser General Public
dnl License as published by the Free Software Foundation; either
dnl version 2.1 of the License, or (at your option) any later version.
dnl
dnl This library is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
dnl Lesser General Public License for more details.
dnl
dnl You should have received a copy of the GNU Lesser General Public
dnl License along with this library.  If not, see
dnl <http://www.gnu.org/licenses/>.
18

19
AC_INIT([libvirt], [6.2.0], [libvir-list@redhat.com], [], [https://libvirt.org])
20 21 22 23 24 25

if test $srcdir = "."
then
  AC_MSG_ERROR([Build directory must be different from source directory])
fi

26 27
AC_CONFIG_SRCDIR([src/libvirt.c])
AC_CONFIG_AUX_DIR([build-aux])
E
Eric Blake 已提交
28
AC_CONFIG_HEADERS([config.h])
29
AH_BOTTOM([#include <config-post.h>])
30
AC_CONFIG_MACRO_DIR([m4])
31
dnl Make automake keep quiet about wildcards & other GNUmake-isms
32
AM_INIT_AUTOMAKE([
33
    foreign
34 35 36 37 38 39
    -Wno-portability
    tar-pax
    no-dist-gzip
    dist-xz
    subdir-objects
    ])
40 41 42 43
dnl older automake's default of ARFLAGS=cru is noisy on newer binutils;
dnl we don't really need the 'u' even in older toolchains.  Then there is
dnl older libtool, which spelled it AR_FLAGS
m4_divert_text([DEFAULTS], [: "${ARFLAGS=cr} ${AR_FLAGS=cr}"])
44

E
Eric Blake 已提交
45 46 47 48 49
# Default to using the silent-rules feature when possible.  Formatting
# chosen to bypass 'grep' checks that cause older automake to warn.
# Users (include rpm) can still change the default at configure time.
m4_ifndef([AM_SILENT_RULES],
 [m4_define([AM_SILENT_RULES],[])])AM_SILENT_RULES([yes])
50

D
Daniel Veillard 已提交
51 52
AC_CANONICAL_HOST

53 54
AC_USE_SYSTEM_EXTENSIONS

55
# First extract pieces from the version number string
56 57 58
LIBVIRT_MAJOR_VERSION=`echo $VERSION | awk -F. '{print $1}'`
LIBVIRT_MINOR_VERSION=`echo $VERSION | awk -F. '{print $2}'`
LIBVIRT_MICRO_VERSION=`echo $VERSION | awk -F. '{print $3}'`
59 60
LIBVIRT_VERSION=$LIBVIRT_MAJOR_VERSION.$LIBVIRT_MINOR_VERSION.$LIBVIRT_MICRO_VERSION$LIBVIRT_MICRO_VERSION_SUFFIX
LIBVIRT_VERSION_NUMBER=`expr $LIBVIRT_MAJOR_VERSION \* 1000000 + $LIBVIRT_MINOR_VERSION \* 1000 + $LIBVIRT_MICRO_VERSION`
D
Daniel Veillard 已提交
61

62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
# In libtool terminology we need to figure out:
#
# CURRENT
#     The most recent interface number that this library implements.
#
# REVISION
#     The implementation number of the CURRENT interface.
#
# AGE
#     The difference between the newest and oldest interfaces that this
#     library implements.
#
# In other words, the library implements all the interface numbers
# in the range from number `CURRENT - AGE' to `CURRENT'.
#
# Libtool assigns the soname version from `CURRENT - AGE', and we
# don't want that to ever change in libvirt. ie it must always be
# zero, to produce libvirt.so.0.
#
# We would, however, like the libvirt version number reflected
# in the so version'd symlinks, and this is based on AGE.REVISION
# eg  libvirt.so.0.AGE.REVISION
#
# Assuming we do ever want to break soname version, this can
# toggled. But seriously, don't ever touch this.
LIBVIRT_SONUM=0

# The following examples show what libtool will do
#
# Input: 0.9.14 ->   libvirt.so.0.9.14
# Input: 1.0.0  ->   libvirt.so.0.1000.0
# Input: 2.5.8  ->   libvirt.so.0.2005.8
#
AGE=`expr $LIBVIRT_MAJOR_VERSION '*' 1000 + $LIBVIRT_MINOR_VERSION`
REVISION=$LIBVIRT_MICRO_VERSION
CURRENT=`expr $LIBVIRT_SONUM + $AGE`
LIBVIRT_VERSION_INFO=$CURRENT:$REVISION:$AGE

100 101 102
AC_SUBST([LIBVIRT_MAJOR_VERSION])
AC_SUBST([LIBVIRT_MINOR_VERSION])
AC_SUBST([LIBVIRT_MICRO_VERSION])
103
AC_SUBST([LIBVIRT_SONUM])
104 105 106
AC_SUBST([LIBVIRT_VERSION])
AC_SUBST([LIBVIRT_VERSION_INFO])
AC_SUBST([LIBVIRT_VERSION_NUMBER])
D
Daniel Veillard 已提交
107

108 109
LIBVIRT_ARG_WITH([PACKAGER], [Extra packager name], [no])
LIBVIRT_ARG_WITH([PACKAGER_VERSION], [Extra packager version], [no])
110 111 112 113 114 115 116 117 118 119 120
if test "x$with_packager" != "xno"
then
  AC_DEFINE_UNQUOTED([PACKAGER], ["$with_packager"],
                     [Extra package name])
fi
if test "x$with_packager_version" != "xno"
then
  AC_DEFINE_UNQUOTED([PACKAGER_VERSION], ["$with_packager_version"],
                     [Extra package version])
fi

121 122
dnl Where we look for daemons and admin binaries during configure
LIBVIRT_SBIN_PATH="$PATH:/sbin:/usr/sbin:/usr/local/sbin"
123

124
dnl Checks for C compiler.
125 126 127
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_CPP
128

129 130 131
dnl autoconf 2.70 adds a --runstatedir option so that downstreams
dnl can point to /run instead of the historic /var/run, but
dnl autoconf hasn't had a release since 2012.
132 133 134 135
if test "x$runstatedir" = x; then
  AC_SUBST([runstatedir], ['${localstatedir}/run'])
fi

136
dnl we introduce --with-runstatedir and then overwrite the
137
dnl value of $runstatedir so configmake.h is more useful
138 139 140 141 142 143 144 145 146 147 148 149
AC_ARG_WITH(
    [runstatedir],
    [AS_HELP_STRING(
        [--with-runstatedir],
        [State directory for temporary sockets, pid files, etc])])

if test -n "$with_runstatedir"
then
  runstatedir=$with_runstatedir
fi


150 151 152
dnl get 64-int interfaces on 32-bit platforms
AC_SYS_LARGEFILE

153
AC_TYPE_UID_T
154

155 156 157
dnl Support building Win32 DLLs (must appear *before* AM_PROG_LIBTOOL)
AC_LIBTOOL_WIN32_DLL

158 159
AC_HEADER_MAJOR

160 161 162 163 164
m4_ifndef([LT_INIT], [
  AM_PROG_LIBTOOL
], [
  LT_INIT([shared disable-static])
])
165
AM_PROG_CC_C_O
166
AM_PROG_LD
167

168 169 170 171 172 173 174 175
AC_MSG_CHECKING([for how to mark DSO non-deletable at runtime])
LIBVIRT_NODELETE=
`$LD --help 2>&1 | grep -- "-z nodelete" >/dev/null` && \
    LIBVIRT_NODELETE="-Wl,-z -Wl,nodelete"
AC_MSG_RESULT([$LIBVIRT_NODELETE])
AC_SUBST([LIBVIRT_NODELETE])

AC_MSG_CHECKING([for how to set DSO symbol versions])
176 177 178 179 180 181 182 183 184 185 186 187 188
case "$host" in
  *-*-mingw* | *-*-msvc* )
    # mingw's ld has the --version-script parameter, but it requires a .def file
    # instead to work properly, therefore clear --version-script here and use
    # -Wl, to pass the .def file to the linker
    VERSION_SCRIPT_FLAGS="-Wl,"
    ;;
  * )
    VERSION_SCRIPT_FLAGS=-Wl,--version-script=
      `$LD --help 2>&1 | grep -- --version-script >/dev/null` || \
        VERSION_SCRIPT_FLAGS="-Wl,-M -Wl,"
    ;;
esac
189
AC_MSG_RESULT([$VERSION_SCRIPT_FLAGS])
190
AC_SUBST([VERSION_SCRIPT_FLAGS])
191

192 193 194 195 196 197 198
dnl Specify if we rely on ifconfig instead of iproute2 (e.g. in case
dnl we're working on BSD)
want_ifconfig=no

dnl Make some notes about which OS we're compiling for, as the lxc and qemu
dnl drivers require linux headers, and storage_mpath, dtrace, and nwfilter
dnl are also linux specific.  The "network" and storage_fs drivers are known
A
Andrea Bolognani 已提交
199
dnl to not work on macOS presently, so we also make a note if compiling
200 201
dnl for that

202
with_linux=no with_macos=no with_freebsd=no with_win=no
203 204
case $host in
  *-*-linux*) with_linux=yes ;;
A
Andrea Bolognani 已提交
205
  *-*-darwin*) with_macos=yes ;;
206
  *-*-freebsd*) with_freebsd=yes ;;
207
  *-*-mingw* | *-*-msvc* ) with_win=yes ;;
208 209 210 211 212 213 214 215
esac

if test $with_linux = no; then
    if test "x$with_lxc" != xyes
    then
        with_lxc=no
    fi
    with_dtrace=no
216
    with_storage_scsi=no
217 218 219
fi

if test $with_freebsd = yes; then
E
Eric Blake 已提交
220 221 222
    want_ifconfig=yes
    with_firewalld=no
fi
223 224 225 226


AM_CONDITIONAL([WITH_LINUX], [test "$with_linux" = "yes"])
AM_CONDITIONAL([WITH_FREEBSD], [test "$with_freebsd" = "yes"])
227
AM_CONDITIONAL([WITH_MACOS], [test "$with_macos" = "yes"])
228

229
if test "$with_win" = "yes" ; then
230
  # We don't support the daemon yet
231
  with_libvirtd=no
232 233 234 235

  # For AI_ADDRCONFIG
  AC_DEFINE([_WIN32_WINNT], [0x0600], [Win Vista / Server 2008])
  AC_DEFINE([WINVER], [0x0600], [Win Vista / Server 2008])
236 237
fi

E
Eric Blake 已提交
238 239 240 241 242 243
# The daemon requires remote support.  Likewise, if we are not using
# RPC, we don't need several libraries.
if test "$with_remote" = "no" ; then
  with_libvirtd=no
  with_ssh2=no
  with_sasl=no
244
  with_libssh=no
E
Eric Blake 已提交
245 246
fi
# Stateful drivers are useful only when building the daemon.
247 248
if test "$with_libvirtd" = "no" ; then
  with_qemu=no
E
Eric Blake 已提交
249 250 251
  with_lxc=no
  with_libxl=no
  with_vbox=no
252 253 254 255
fi

# Check for compiler and library settings.

256
LIBVIRT_COMPILE_WARNINGS
D
Daniel P. Berrange 已提交
257
LIBVIRT_COMPILE_PIE
D
Daniel P. Berrange 已提交
258
LIBVIRT_LINKER_RELRO
259
LIBVIRT_LINKER_NO_INDIRECT
260
LIBVIRT_LINKER_NO_UNDEFINED
261

262 263 264
LIBVIRT_ARG_APPARMOR
LIBVIRT_ARG_ATTR
LIBVIRT_ARG_AUDIT
265
LIBVIRT_ARG_BASH_COMPLETION
266 267 268 269
LIBVIRT_ARG_BLKID
LIBVIRT_ARG_CAPNG
LIBVIRT_ARG_CURL
LIBVIRT_ARG_DBUS
270
LIBVIRT_ARG_FIREWALLD
271
LIBVIRT_ARG_FIREWALLD_ZONE
272 273 274
LIBVIRT_ARG_FUSE
LIBVIRT_ARG_GLUSTER
LIBVIRT_ARG_HAL
275
LIBVIRT_ARG_LIBISCSI
276
LIBVIRT_ARG_LIBPCAP
277
LIBVIRT_ARG_LIBSSH
278 279
LIBVIRT_ARG_LIBXML
LIBVIRT_ARG_MACVTAP
280
LIBVIRT_ARG_NETCF
281
LIBVIRT_ARG_NLS
282 283 284 285
LIBVIRT_ARG_NSS
LIBVIRT_ARG_NUMACTL
LIBVIRT_ARG_OPENWSMAN
LIBVIRT_ARG_PCIACCESS
286 287
LIBVIRT_ARG_PM_UTILS
LIBVIRT_ARG_POLKIT
288 289 290 291 292 293
LIBVIRT_ARG_READLINE
LIBVIRT_ARG_SANLOCK
LIBVIRT_ARG_SASL
LIBVIRT_ARG_SELINUX
LIBVIRT_ARG_SSH2
LIBVIRT_ARG_UDEV
294
LIBVIRT_ARG_VIRTUALPORT
295 296 297
LIBVIRT_ARG_WIRESHARK
LIBVIRT_ARG_YAJL

298
LIBVIRT_CHECK_ACL
299
LIBVIRT_CHECK_APPARMOR
300
LIBVIRT_CHECK_ATTR
301
LIBVIRT_CHECK_AUDIT
302
LIBVIRT_CHECK_BASH_COMPLETION
303
LIBVIRT_CHECK_BLKID
304
LIBVIRT_CHECK_CAPNG
305
LIBVIRT_CHECK_CURL
306
LIBVIRT_CHECK_DBUS
307 308 309
LIBVIRT_CHECK_DEVMAPPER
LIBVIRT_CHECK_DLOPEN
LIBVIRT_CHECK_FIREWALLD
310
LIBVIRT_CHECK_FIREWALLD_ZONE
311
LIBVIRT_CHECK_FUSE
312
LIBVIRT_CHECK_GLIB
313
LIBVIRT_CHECK_GLUSTER
P
Pavel Hrdina 已提交
314
LIBVIRT_CHECK_GNUTLS
315
LIBVIRT_CHECK_HAL
316
LIBVIRT_CHECK_LIBISCSI
317 318 319
LIBVIRT_CHECK_LIBNL
LIBVIRT_CHECK_LIBPARTED
LIBVIRT_CHECK_LIBPCAP
320
LIBVIRT_CHECK_LIBSSH
321 322
LIBVIRT_CHECK_LIBXML
LIBVIRT_CHECK_MACVTAP
323
LIBVIRT_CHECK_NETCF
324
LIBVIRT_CHECK_NLS
325
LIBVIRT_CHECK_NUMACTL
326
LIBVIRT_CHECK_NWFILTER
327
LIBVIRT_CHECK_OPENWSMAN
328
LIBVIRT_CHECK_PCIACCESS
329 330 331
LIBVIRT_CHECK_PM_UTILS
LIBVIRT_CHECK_POLKIT
LIBVIRT_CHECK_PTHREAD
332
LIBVIRT_CHECK_READLINE
333
LIBVIRT_CHECK_SANLOCK
334
LIBVIRT_CHECK_SASL
335
LIBVIRT_CHECK_SELINUX
336
LIBVIRT_CHECK_SSH2
337
LIBVIRT_CHECK_UDEV
338
LIBVIRT_CHECK_VIRTUALPORT
339
LIBVIRT_CHECK_WIRESHARK
340
LIBVIRT_CHECK_XDR
341 342
LIBVIRT_CHECK_YAJL

343
AC_CHECK_SIZEOF([long])
J
Jiri Denemark 已提交
344

345 346
dnl Availability of various common functions (non-fatal if missing),
dnl and various less common threadsafe functions
347 348
AC_CHECK_FUNCS_ONCE([\
  fallocate \
349
  getegid \
350 351
  geteuid \
  getgid \
352
  getifaddrs \
353 354 355 356
  getmntent_r \
  getpwuid_r \
  getrlimit \
  getuid \
M
Michal Privoznik 已提交
357
  getutxid \
358 359 360 361 362
  if_indextoname \
  mmap \
  newlocale \
  posix_fallocate \
  posix_memalign \
363
  pipe2 \
364 365
  prlimit \
  sched_getaffinity \
366
  sched_setscheduler \
367 368 369 370 371 372 373
  setgroups \
  setns \
  setrlimit \
  symlink \
  sysctlbyname \
  unshare \
  ])
374

375
dnl Availability of various common headers (non-fatal if missing).
376
AC_CHECK_HEADERS([\
377 378
  ifaddrs.h \
  libtasn1.h \
379 380
  util.h \
  libutil.h \
381 382 383
  linux/magic.h \
  mntent.h \
  net/ethernet.h \
384
  net/if.h \
385
  pty.h \
386
  pwd.h \
387
  stdarg.h \
388
  syslog.h \
389
  sys/ioctl.h \
390
  sys/mount.h \
391 392 393
  sys/syscall.h \
  sys/sysctl.h \
  sys/ucred.h \
394
  xlocale.h \
395
  ])
E
Eric Blake 已提交
396 397
dnl Check whether endian provides handy macros.
AC_CHECK_DECLS([htole64], [], [], [[#include <endian.h>]])
398
AC_CHECK_FUNCS([stat stat64 __xstat __xstat64 lstat lstat64 __lxstat __lxstat64])
E
Eric Blake 已提交
399

400 401 402 403 404 405
AC_CHECK_TYPE([struct ifreq],
  [AC_DEFINE([HAVE_STRUCT_IFREQ],[1],
    [Defined if struct ifreq exists in net/if.h])],
  [], [[#include <sys/socket.h>
        #include <net/if.h>
  ]])
406

407 408 409 410 411 412
AC_CHECK_TYPE([struct sockpeercred],
  [AC_DEFINE([HAVE_STRUCT_SOCKPEERCRED], [1],
    [Defined if struct sockpeercred is available])],
  [], [[#include <sys/socket.h>
  ]])

413
AC_CHECK_DECLS([ETH_FLAG_TXVLAN, ETH_FLAG_NTUPLE, ETH_FLAG_RXHASH, ETH_FLAG_LRO,
414 415
                ETHTOOL_GGSO, ETHTOOL_GGRO, ETHTOOL_GFLAGS, ETHTOOL_GFEATURES,
                ETHTOOL_SCOALESCE, ETHTOOL_GCOALESCE],
416 417 418
  [], [], [[#include <linux/ethtool.h>
  ]])

419 420 421 422 423
AC_CHECK_DECLS([SEEK_HOLE], [], [],
               [#include <sys/types.h>
                #include <unistd.h>])


E
Eric Blake 已提交
424 425 426 427
dnl Our only use of libtasn1.h is in the testsuite, and can be skipped
dnl if the header is not present.  Assume -ltasn1 is present if the
dnl header could be found.
AM_CONDITIONAL([HAVE_LIBTASN1], [test "x$ac_cv_header_libtasn1_h" = "xyes"])
428

D
Daniel P. Berrange 已提交
429
AC_CHECK_LIB([intl],[gettext],[])
430
AC_CHECK_LIB([util],[openpty],[])
D
Daniel P. Berrange 已提交
431

432 433 434 435 436 437 438

dnl
dnl Check for external programs
dnl

LIBVIRT_CHECK_EXTERNAL_PROGRAMS

439 440 441 442
dnl if --prefix is /usr, don't use /usr/var for localstatedir
dnl or /usr/etc for sysconfdir
dnl as this makes a lot of things break in testing situations

443
if test "$prefix" = "/usr" && test "$localstatedir" = '${prefix}/var' ; then
444 445
    localstatedir='/var'
fi
446
if test "$prefix" = "/usr" && test "$sysconfdir" = '${prefix}/etc' ; then
447 448 449
    sysconfdir='/etc'
fi

450 451 452 453
dnl
dnl Virtualization drivers check
dnl

454
LIBVIRT_DRIVER_ARG_QEMU
455
LIBVIRT_DRIVER_ARG_OPENVZ
456
LIBVIRT_DRIVER_ARG_VMWARE
457
LIBVIRT_DRIVER_ARG_LIBXL
458
LIBVIRT_DRIVER_ARG_VBOX
459
LIBVIRT_DRIVER_ARG_LXC
460 461
LIBVIRT_DRIVER_ARG_VZ
LIBVIRT_DRIVER_ARG_BHYVE
462
LIBVIRT_DRIVER_ARG_ESX
463
LIBVIRT_DRIVER_ARG_HYPERV
464
LIBVIRT_DRIVER_ARG_TEST
465
LIBVIRT_DRIVER_ARG_REMOTE
466
LIBVIRT_DRIVER_ARG_LIBVIRTD
467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485
LIBVIRT_DRIVER_ARG_NETWORK
LIBVIRT_DRIVER_ARG_INTERFACE

LIBVIRT_DRIVER_CHECK_QEMU
LIBVIRT_DRIVER_CHECK_OPENVZ
LIBVIRT_DRIVER_CHECK_VMWARE
LIBVIRT_DRIVER_CHECK_LIBXL
LIBVIRT_DRIVER_CHECK_VBOX
LIBVIRT_DRIVER_CHECK_LXC
LIBVIRT_DRIVER_CHECK_VZ
LIBVIRT_DRIVER_CHECK_BHYVE
LIBVIRT_DRIVER_CHECK_ESX
LIBVIRT_DRIVER_CHECK_HYPERV
LIBVIRT_DRIVER_CHECK_TEST
LIBVIRT_DRIVER_CHECK_REMOTE
LIBVIRT_DRIVER_CHECK_LIBVIRTD
LIBVIRT_DRIVER_CHECK_NETWORK
LIBVIRT_DRIVER_CHECK_INTERFACE

486

487
dnl
488 489
dnl in case someone want to build static binaries
dnl STATIC_BINARIES="-static"
490
dnl
491
STATIC_BINARIES=
492
AC_SUBST([STATIC_BINARIES])
493

494 495 496
dnl
dnl Miscellaneous checks
dnl
497

498 499 500
LIBVIRT_ARG_DEBUG
LIBVIRT_ARG_DTRACE
LIBVIRT_ARG_NUMAD
501
LIBVIRT_ARG_INIT_SCRIPT
502 503 504 505 506 507
LIBVIRT_ARG_CHRDEV_LOCK_FILES
LIBVIRT_ARG_DEFAULT_EDITOR
LIBVIRT_ARG_LOADER_NVRAM
LIBVIRT_ARG_LOGIN_SHELL
LIBVIRT_ARG_HOST_VALIDATE
LIBVIRT_ARG_TLS_PRIORITY
508
LIBVIRT_ARG_SYSCTL_CONFIG
509 510 511 512 513 514 515 516 517 518 519 520


LIBVIRT_CHECK_DEBUG
LIBVIRT_CHECK_DTRACE
LIBVIRT_CHECK_NUMAD
LIBVIRT_CHECK_INIT_SCRIPT
LIBVIRT_CHECK_CHRDEV_LOCK_FILES
LIBVIRT_CHECK_DEFAULT_EDITOR
LIBVIRT_CHECK_LOADER_NVRAM
LIBVIRT_CHECK_LOGIN_SHELL
LIBVIRT_CHECK_HOST_VALIDATE
LIBVIRT_CHECK_TLS_PRIORITY
521
LIBVIRT_CHECK_SYSCTL_CONFIG
522
LIBVIRT_CHECK_NSS
523

S
Stefan Berger 已提交
524

525

526

527 528
dnl
dnl check for kvm headers
529
dnl
530 531
AC_CHECK_HEADERS([linux/kvm.h])

532 533 534 535

dnl
dnl check for kernel headers required by src/bridge.c
dnl
R
Roman Bogorodskiy 已提交
536
if test "$with_linux" = "yes"; then
537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557
    # Various kernel versions have headers that are not self-standing, but
    # yet are incompatible with the corresponding glibc headers.  In order
    # to guarantee compilation across a wide range of versions (from RHEL 5
    # to rawhide), we first have to probe whether glibc and kernel can be
    # used in tandem; and if not, provide workarounds that ensure that
    # ABI-compatible IPv6 types are present for use by the kernel headers.
    # These probes mirror the usage in virnetdevbridge.c
    AC_CACHE_CHECK(
      [whether <linux/*.h> and <netinet/*.h> headers are compatible],
      [lv_cv_netinet_linux_compatible],
      [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
        #include <netinet/in.h>
        #include <linux/in6.h>
      ]])],
      [lv_cv_netinet_linux_compatible=yes],
      [lv_cv_netinet_linux_compatible=no])])
    if test "x$lv_cv_netinet_linux_compatible" != xyes; then
      AC_DEFINE([NETINET_LINUX_WORKAROUND], [1],
        [define to 1 if Linux kernel headers require a workaround to avoid
        compilation errors when mixed with glibc netinet headers])
    fi
R
Roman Bogorodskiy 已提交
558
    AC_CHECK_HEADERS([linux/param.h linux/sockios.h linux/if_bridge.h linux/if_tun.h],,
559
      [AC_MSG_ERROR([You must install kernel-headers in order to compile libvirt with QEMU or LXC support])],
560 561 562 563 564 565 566 567
      [[#include <netinet/in.h>
        #if NETINET_LINUX_WORKAROUND
        # define in6_addr in6_addr_
        # define sockaddr_in6 sockaddr_in6_
        # define ipv6_mreq ipv6_mreq_
        # define in6addr_any in6addr_any_
        # define in6addr_loopback in6addr_loopback_
        #endif
568
        #include <linux/in6.h>
569
      ]])
570 571
fi

572

D
Daniel P. Berrange 已提交
573 574 575
dnl Need to test if pkg-config exists
PKG_PROG_PKG_CONFIG

D
Daniel Veillard 已提交
576

577 578
dnl Security driver checks
LIBVIRT_SECDRIVER_ARG_SELINUX
579
LIBVIRT_SECDRIVER_ARG_APPARMOR
J
Jamie Strandboge 已提交
580

581 582
LIBVIRT_SECDRIVER_CHECK_SELINUX
LIBVIRT_SECDRIVER_CHECK_APPARMOR
J
Jamie Strandboge 已提交
583

D
Daniel P. Berrange 已提交
584

585
LIBVIRT_ARG_WITH_FEATURE([SECRETS], [local secrets management driver], [yes])
586

D
Daniel P. Berrange 已提交
587 588 589 590 591 592 593 594 595
if test "$with_libvirtd" = "no"; then
  with_secrets=no
fi
if test "$with_secrets" = "yes" ; then
  AC_DEFINE_UNQUOTED([WITH_SECRETS], 1, [whether local secrets management driver is available])
fi
AM_CONDITIONAL([WITH_SECRETS], [test "$with_secrets" = "yes"])


596 597 598 599
dnl
dnl Storage driver checks
dnl

600
LIBVIRT_STORAGE_ARG_DIR
601
LIBVIRT_STORAGE_ARG_FS
602
LIBVIRT_STORAGE_ARG_LVM
603
LIBVIRT_STORAGE_ARG_ISCSI
604
LIBVIRT_STORAGE_ARG_ISCSI_DIRECT
605
LIBVIRT_STORAGE_ARG_SCSI
606
LIBVIRT_STORAGE_ARG_MPATH
607
LIBVIRT_STORAGE_ARG_DISK
608
LIBVIRT_STORAGE_ARG_RBD
609
LIBVIRT_STORAGE_ARG_SHEEPDOG
610
LIBVIRT_STORAGE_ARG_GLUSTER
611
LIBVIRT_STORAGE_ARG_ZFS
612
LIBVIRT_STORAGE_ARG_VSTORAGE
613

D
Daniel P. Berrange 已提交
614 615 616 617 618
if test "$with_libvirtd" = "no"; then
  with_storage_dir=no
  with_storage_fs=no
  with_storage_lvm=no
  with_storage_iscsi=no
619
  with_storage_iscsi_direct=no
620
  with_storage_scsi=no
D
Dave Allan 已提交
621
  with_storage_mpath=no
D
Daniel P. Berrange 已提交
622
  with_storage_disk=no
623
  with_storage_rbd=no
624
  with_storage_sheepdog=no
625
  with_storage_gluster=no
R
Roman Bogorodskiy 已提交
626
  with_storage_zfs=no
627
  with_storage_vstorage=no
D
Daniel P. Berrange 已提交
628
fi
629

A
Andrea Bolognani 已提交
630
dnl storage-fs does not work on macOS
631

A
Andrea Bolognani 已提交
632
if test "$with_macos" = "yes"; then
633 634
  with_storage_fs=no
fi
D
Daniel P. Berrange 已提交
635

636
LIBVIRT_STORAGE_CHECK_DIR
637
LIBVIRT_STORAGE_CHECK_FS
638
LIBVIRT_STORAGE_CHECK_LVM
639
LIBVIRT_STORAGE_CHECK_ISCSI
640
LIBVIRT_STORAGE_CHECK_ISCSI_DIRECT
641
LIBVIRT_STORAGE_CHECK_SCSI
642
LIBVIRT_STORAGE_CHECK_MPATH
643
LIBVIRT_STORAGE_CHECK_DISK
644
LIBVIRT_STORAGE_CHECK_RBD
645
LIBVIRT_STORAGE_CHECK_SHEEPDOG
646
LIBVIRT_STORAGE_CHECK_GLUSTER
647
LIBVIRT_STORAGE_CHECK_ZFS
648
LIBVIRT_STORAGE_CHECK_VSTORAGE
649

650
with_storage=no
651
for backend in dir fs lvm iscsi iscsi_direct scsi mpath rbd disk; do
652 653 654 655 656 657 658 659 660 661 662
    if eval test \$with_storage_$backend = yes; then
        with_storage=yes
        break
    fi
done
if test $with_storage = yes; then
    AC_DEFINE([WITH_STORAGE], [1],
      [Define to 1 if at least one storage backend is in use])
fi
AM_CONDITIONAL([WITH_STORAGE], [test "$with_storage" = "yes"])

663 664 665 666 667 668 669
dnl
dnl check for kernel headers required by btrfs ioctl
dnl
if test "$with_linux" = "yes"; then
    AC_CHECK_HEADERS([linux/btrfs.h])
fi

670 671 672 673 674 675 676
dnl
dnl check for xfs dev headers required by xfs ioctl
dnl
if test "$with_linux" = "yes"; then
    AC_CHECK_HEADERS([xfs/xfs.h])
fi

677
dnl
678 679 680 681 682 683
dnl check for DEVLINK_CMD_ESWITCH_GET
dnl
dnl Assume DEVLINK_ESWITCH_MODE_SWITCHDEV is also
dnl available, as it was introudced in kernel 4.8
dnl along with the original spelling of this constant
dnl (DEVLINK_CMD_ESWITCH_MODE_GET, not supported by libvirt)
684 685 686
dnl
if test "$with_linux" = "yes"; then
    AC_CHECK_HEADERS([linux/devlink.h])
687
    AC_CHECK_DECLS([DEVLINK_CMD_ESWITCH_GET], [], [],
688 689 690
                   [[#include <linux/devlink.h>]])
fi

J
Ján Tomko 已提交
691 692 693 694 695 696 697 698
dnl
dnl check for VHOST_VSOCK_SET_GUEST_CID
dnl
if test "$with_linux" = "yes"; then
    AC_CHECK_DECLS([VHOST_VSOCK_SET_GUEST_CID], [], [],
                   [[#include <linux/vhost.h>]])
fi

D
Daniel P. Berrange 已提交
699
dnl Allow perl/python overrides
700
AC_PATH_PROGS([PYTHON], [python3])
701
if test -z "$PYTHON"; then
702
    AC_MSG_ERROR(['python3' binary is required to build libvirt])
703
fi
704
AC_DEFINE_UNQUOTED([PYTHON], "$PYTHON", [path to python binary])
S
Shi Lei 已提交
705 706 707 708
AC_PATH_PROG([FLAKE8], [flake8])
if test -z "$FLAKE8"; then
    AC_MSG_WARN(['flake8' binary is required to check python code style])
fi
709 710 711 712 713 714 715 716

dnl Python3 < 3.7 treats the C locale as 7-bit only.
dnl We must force env vars so it treats it as UTF-8
dnl regardless of the user's locale.
RUNUTF8="LC_ALL= LANG=C LC_CTYPE=en_US.UTF-8"
AC_SUBST(RUNUTF8)


717
AC_PATH_PROG([PERL], [perl])
718
if test -z "$PERL"; then
719
         AC_MSG_ERROR(['perl' binary is required to build libvirt])
720
fi
721

722
LIBVIRT_ARG_WITH([TEST_SUITE], [build test suite by default], [check])
723 724 725 726
case "$with_test_suite" in
    yes|no|check) ;;
    *) AC_MSG_ERROR([bad value ${withval} for tests option]) ;;
esac
727 728

AC_MSG_CHECKING([Whether to build test suite by default])
729
if test "$with_test_suite" = "check" ; then
730
  if test -d $srcdir/.git ; then
731
    with_test_suite=yes
732
  else
733
    with_test_suite=no
734 735
  fi
fi
736 737
AC_MSG_RESULT([$with_test_suite])
AM_CONDITIONAL([WITH_TESTS], [test "$with_test_suite" = "yes"])
738

739 740
LIBVIRT_ARG_ENABLE([EXPENSIVE_TESTS],
                   [set the default for enabling expensive tests ]
741
                     [(long timeouts), use VIR_TEST_EXPENSIVE to ]
742 743 744 745 746 747 748 749 750
                     [override during make],
                   [check])
case "$enable_expensive_tests" in
  0|no) VIR_TEST_EXPENSIVE_DEFAULT=0 ;;
  1|yes) VIR_TEST_EXPENSIVE_DEFAULT=1 ;;
  check) ;;
  *) AC_MSG_ERROR([bad value ${enable_expensive_tests} for enable-expensive-tests option]) ;;
esac
if test "$enable_expensive_tests" = check; then
751 752 753 754 755 756 757 758 759
  if test -d $srcdir/.git ; then
    VIR_TEST_EXPENSIVE_DEFAULT=0
  else
    VIR_TEST_EXPENSIVE_DEFAULT=1
  fi
fi
AC_SUBST([VIR_TEST_EXPENSIVE_DEFAULT])
AM_CONDITIONAL([WITH_EXPENSIVE_TESTS], [test $VIR_TEST_EXPENSIVE_DEFAULT = 1])

760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776
LIBVIRT_ARG_ENABLE([TEST_COVERAGE], [turn on code coverage instrumentation], [no])
case "$enable_test_coverage" in
  yes|no) ;;
  *) AC_MSG_ERROR([bad value ${enable_test_coverga} for test-coverage option]) ;;
esac

if test "$enable_test_coverage" = yes; then
  save_WARN_CFLAGS=$WARN_CFLAGS
  WARN_CFLAGS=
  gl_WARN_ADD([-fprofile-arcs])
  gl_WARN_ADD([-ftest-coverage])
  COVERAGE_FLAGS=$WARN_CFLAGS
  AC_SUBST([COVERAGE_CFLAGS], [$COVERAGE_FLAGS])
  AC_SUBST([COVERAGE_LDFLAGS], [$COVERAGE_FLAGS])
  WARN_CFLAGS=$save_WARN_CFLAGS
fi

777
dnl MinGW checks
778
LIBVIRT_WIN_CHECK_COMMON
779
LIBVIRT_WIN_CHECK_MINGW
780
LIBVIRT_WIN_CHECK_SYMBOLS
781
LIBVIRT_WIN_CHECK_WINDRES
782 783


784 785 786
dnl Driver-Modules library support
LIBVIRT_ARG_DRIVER_MODULES
LIBVIRT_CHECK_DRIVER_MODULES
787 788


789 790 791 792 793
# Set LV_LIBTOOL_OBJDIR to "." or $lt_cv_objdir, depending on whether
# we're building shared libraries.  This is the name of the directory
# in which .o files will be created.
test "$enable_shared" = no && lt_cv_objdir=.
LV_LIBTOOL_OBJDIR=${lt_cv_objdir-.}
794
AC_SUBST([LV_LIBTOOL_OBJDIR])
795

796 797

with_nodedev=no;
798
if test "$with_hal" = "yes" || test "$with_udev" = "yes";
799 800 801 802 803 804
then
  with_nodedev=yes
  AC_DEFINE_UNQUOTED([WITH_NODE_DEVICES], 1, [with node device driver])
fi
AM_CONDITIONAL([WITH_NODE_DEVICES], [test "$with_nodedev" = "yes"])

805 806
dnl GET_VLAN_VID_CMD is required for virNetDevGetVLanID
AC_CHECK_DECLS([GET_VLAN_VID_CMD], [], [], [[#include <linux/if_vlan.h>]])
807

808 809 810
# Check for Linux vs. BSD ifreq members
AC_CHECK_MEMBERS([struct ifreq.ifr_newname,
                  struct ifreq.ifr_ifindex,
811 812
                  struct ifreq.ifr_index,
                  struct ifreq.ifr_hwaddr],
813 814 815 816
                 [], [],
                 [#include <sys/socket.h>
                  #include <net/if.h>
                 ])
817

818
# Check for BSD approach for setting MAC addr
819 820 821 822 823 824 825
AC_LINK_IFELSE([AC_LANG_PROGRAM(
     [[
        #include <sys/types.h>
        #include <sys/socket.h>
        #include <net/if_dl.h>
     ]],
     [[
R
Roman Bogorodskiy 已提交
826
        link_addr(0, 0)]])],
827 828 829
     [AC_DEFINE([HAVE_DECL_LINK_ADDR],
                [1],
                [whether link_addr is available])])
830

831 832 833 834 835 836
# Check for BSD approach for bridge management
AC_CHECK_DECLS([BRDGSFD, BRDGADD, BRDGDEL],
               [AC_DEFINE([HAVE_BSD_BRIDGE_MGMT],
                          [1],
                          [whether BSD style bridge management is available])],
               [],
837 838
               [#include <stdint.h>
                #include <net/if.h>
839 840 841 842
                #include <net/ethernet.h>
                #include <net/if_bridgevar.h>
               ])

843 844 845 846 847 848 849 850 851 852
# Check for BSD CPU affinity availability
AC_CHECK_DECLS([cpuset_getaffinity],
               [AC_DEFINE([HAVE_BSD_CPU_AFFINITY],
                          [1],
                          [whether BSD CPU affinity management is available])],
               [],
               [#include <sys/param.h>
                #include <sys/cpuset.h>
               ])

853 854 855 856 857 858 859
# Check for BSD kvm (kernel memory interface)
if test $with_freebsd = yes; then
     AC_CHECK_LIB([kvm], [kvm_getprocs], [],
                  [AC_MSG_ERROR([BSD kernel memory interface library is required to build on FreeBSD])]
                 )
fi

860 861 862 863 864 865 866 867 868 869 870
# FreeBSD 10-STABLE requires _IFI_OQDROPS to be defined for if_data.ifi_oqdrops
# field be available
old_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -D_IFI_OQDROPS"

AC_CHECK_MEMBERS([struct if_data.ifi_oqdrops],
		 [],
		 [CFLAGS="$old_CFLAGS"],
		 [#include <net/if.h>
		 ])

871 872 873 874 875 876 877 878 879
AC_CHECK_DECLS([clock_serv_t, host_get_clock_service, clock_get_time],
               [AC_DEFINE([HAVE_MACH_CLOCK_ROUTINES],
                          [1],
                          [whether Mach clock routines are available])],
               [],
               [#include <mach/clock.h>
                #include <mach/mach.h>
               ])

P
Pavel Hrdina 已提交
880 881
# Check if we have new enough kernel to support BPF devices for cgroups v2
if test "$with_linux" = "yes"; then
882 883
    AC_CHECK_DECLS([BPF_PROG_QUERY, BPF_CGROUP_DEVICE],
                   [], [], [#include <linux/bpf.h>])
P
Pavel Hrdina 已提交
884 885
fi

886 887 888 889 890 891 892 893 894
# Check if we need to look for ifconfig
if test "$want_ifconfig" = "yes"; then
     AC_PATH_PROG([IFCONFIG_PATH], [ifconfig])
     if test -z "$IFCONFIG_PATH"; then
         AC_MSG_ERROR([Failed to find ifconfig.])
     fi
     AC_DEFINE_UNQUOTED([IFCONFIG_PATH], "$IFCONFIG_PATH", [path to ifconfig binary])
fi

895 896
# Detect when running under the clang static analyzer's scan-build driver
# or Coverity-prevent's cov-build.  Define STATIC_ANALYSIS accordingly.
897 898 899 900 901 902 903 904
AC_CACHE_CHECK([whether this build is done by a static analysis tool],
  [lv_cv_static_analysis], [
    lv_cv_static_analysis=no
    if test -n "${CCC_ANALYZER_ANALYSIS+set}" || \
       test -n "$COVERITY_BUILD_COMMAND$COVERITY_LD_PRELOAD"; then
      lv_cv_static_analysis=yes
    fi
  ])
E
Eric Blake 已提交
905
t=0
906
test "x$lv_cv_static_analysis" = xyes && t=1
907 908 909
AC_DEFINE_UNQUOTED([STATIC_ANALYSIS], [$t],
  [Define to 1 when performing static analysis.])

910 911 912 913 914 915
GNUmakefile=GNUmakefile
m4_if(m4_version_compare([2.61a.100],
        m4_defn([m4_PACKAGE_VERSION])), [1], [],
      [AC_CONFIG_LINKS([$GNUmakefile:$GNUmakefile], [],
        [GNUmakefile=$GNUmakefile])])

916 917
AC_CONFIG_FILES([run],
                [chmod +x,-w run])
E
Eric Blake 已提交
918
AC_CONFIG_FILES([\
919
        Makefile src/Makefile include/libvirt/Makefile docs/Makefile \
A
Andrea Bolognani 已提交
920
        .color_coded \
A
Andrea Bolognani 已提交
921
        .ycm_extra_conf.py \
922 923 924
        libvirt.pc \
        libvirt-qemu.pc \
        libvirt-lxc.pc \
M
Martin Kletzander 已提交
925
        libvirt-admin.pc \
926 927 928
        src/libvirt.pc \
        src/libvirt-qemu.pc \
        src/libvirt-lxc.pc \
929
        libvirt.spec mingw-libvirt.spec \
930
        po/Makefile \
931
        include/libvirt/libvirt-common.h \
932
        examples/Makefile \
E
Eric Blake 已提交
933
        tests/Makefile \
934
        tools/Makefile])
E
Eric Blake 已提交
935
AC_OUTPUT
D
Daniel P. Berrange 已提交
936 937 938 939 940 941 942

AC_MSG_NOTICE([])
AC_MSG_NOTICE([Configuration summary])
AC_MSG_NOTICE([=====================])
AC_MSG_NOTICE([])
AC_MSG_NOTICE([Drivers])
AC_MSG_NOTICE([])
943
LIBVIRT_DRIVER_RESULT_QEMU
944
LIBVIRT_DRIVER_RESULT_OPENVZ
945
LIBVIRT_DRIVER_RESULT_VMWARE
946
LIBVIRT_DRIVER_RESULT_VBOX
947
LIBVIRT_DRIVER_RESULT_LIBXL
948
LIBVIRT_DRIVER_RESULT_LXC
949
LIBVIRT_DRIVER_RESULT_ESX
950
LIBVIRT_DRIVER_RESULT_HYPERV
951
LIBVIRT_DRIVER_RESULT_VZ
R
Roman Bogorodskiy 已提交
952
LIBVIRT_DRIVER_RESULT_BHYVE
953
LIBVIRT_DRIVER_RESULT_TEST
954
LIBVIRT_DRIVER_RESULT_REMOTE
955
LIBVIRT_DRIVER_RESULT_NETWORK
956
LIBVIRT_DRIVER_RESULT_LIBVIRTD
957
LIBVIRT_DRIVER_RESULT_INTERFACE
D
Daniel P. Berrange 已提交
958
AC_MSG_NOTICE([])
959 960
AC_MSG_NOTICE([Storage Drivers])
AC_MSG_NOTICE([])
961
LIBVIRT_STORAGE_RESULT_DIR
962
LIBVIRT_STORAGE_RESULT_FS
963
LIBVIRT_STORAGE_RESULT_LVM
964
LIBVIRT_STORAGE_RESULT_ISCSI
965
LIBVIRT_STORAGE_RESULT_ISCSI_DIRECT
966
LIBVIRT_STORAGE_RESULT_SCSI
967
LIBVIRT_STORAGE_RESULT_MPATH
968
LIBVIRT_STORAGE_RESULT_DISK
969
LIBVIRT_STORAGE_RESULT_RBD
970
LIBVIRT_STORAGE_RESULT_SHEEPDOG
971
LIBVIRT_STORAGE_RESULT_GLUSTER
972
LIBVIRT_STORAGE_RESULT_ZFS
973
LIBVIRT_STORAGE_RESULT_VSTORAGE
974
AC_MSG_NOTICE([])
975 976
AC_MSG_NOTICE([Security Drivers])
AC_MSG_NOTICE([])
977
LIBVIRT_SECDRIVER_RESULT_SELINUX
978
LIBVIRT_SECDRIVER_RESULT_APPARMOR
979
AC_MSG_NOTICE([])
980 981
AC_MSG_NOTICE([Driver Loadable Modules])
AC_MSG_NOTICE([])
982
LIBVIRT_RESULT_DRIVER_MODULES
983 984 985
AC_MSG_NOTICE([])
AC_MSG_NOTICE([Libraries])
AC_MSG_NOTICE([])
986
LIBVIRT_RESULT_ACL
987
LIBVIRT_RESULT_APPARMOR
988
LIBVIRT_RESULT_ATTR
989
LIBVIRT_RESULT_AUDIT
990
LIBVIRT_RESULT_BASH_COMPLETION
991
LIBVIRT_RESULT_BLKID
992
LIBVIRT_RESULT_CAPNG
993
LIBVIRT_RESULT_CURL
994
LIBVIRT_RESULT_DBUS
995
LIBVIRT_RESULT_DLOPEN
996
LIBVIRT_RESULT_FIREWALLD
997
LIBVIRT_RESULT_FIREWALLD_ZONE
998
LIBVIRT_RESULT_FUSE
999
LIBVIRT_RESULT_GLIB
1000
LIBVIRT_RESULT_GLUSTER
P
Pavel Hrdina 已提交
1001
LIBVIRT_RESULT_GNUTLS
1002
LIBVIRT_RESULT_HAL
1003
LIBVIRT_RESULT_LIBISCSI
1004
LIBVIRT_RESULT_LIBNL
1005
LIBVIRT_RESULT_LIBPCAP
1006
LIBVIRT_RESULT_LIBSSH
1007
LIBVIRT_RESULT_LIBXL
1008
LIBVIRT_RESULT_LIBXML
1009
LIBVIRT_RESULT_MACVTAP
1010
LIBVIRT_RESULT_NETCF
1011
LIBVIRT_RESULT_NLS
P
Pavel Hrdina 已提交
1012
LIBVIRT_RESULT_NSS
1013
LIBVIRT_RESULT_NUMACTL
1014
LIBVIRT_RESULT_OPENWSMAN
1015
LIBVIRT_RESULT_PCIACCESS
1016
LIBVIRT_RESULT_PM_UTILS
1017
LIBVIRT_RESULT_POLKIT
1018
LIBVIRT_RESULT_RBD
1019
LIBVIRT_RESULT_READLINE
1020
LIBVIRT_RESULT_SANLOCK
1021
LIBVIRT_RESULT_SASL
1022
LIBVIRT_RESULT_SELINUX
1023
LIBVIRT_RESULT_SSH2
1024
LIBVIRT_RESULT_UDEV
1025
LIBVIRT_RESULT_VIRTUALPORT
1026
LIBVIRT_RESULT_XDR
1027
LIBVIRT_RESULT_YAJL
1028 1029 1030 1031
AC_MSG_NOTICE([])
AC_MSG_NOTICE([Windows])
AC_MSG_NOTICE([])
LIBVIRT_WIN_RESULT_COMMON
1032
LIBVIRT_WIN_RESULT_WINDRES
D
Daniel P. Berrange 已提交
1033
AC_MSG_NOTICE([])
D
Daniel P. Berrange 已提交
1034 1035
AC_MSG_NOTICE([Test suite])
AC_MSG_NOTICE([])
1036
LIBVIRT_RESULT([Coverage], [$enable_test_coverage])
D
Daniel P. Berrange 已提交
1037
AC_MSG_NOTICE([])
D
Daniel P. Berrange 已提交
1038 1039
AC_MSG_NOTICE([Miscellaneous])
AC_MSG_NOTICE([])
1040
LIBVIRT_RESULT_DEBUG
1041 1042
LIBVIRT_RESULT([Use -Werror], [$enable_werror])
LIBVIRT_RESULT([Warning Flags], [$WARN_CFLAGS])
1043
LIBVIRT_RESULT_DTRACE
1044
LIBVIRT_RESULT_NUMAD
1045
LIBVIRT_RESULT_INIT_SCRIPT
1046
LIBVIRT_RESULT_CHRDEV_LOCK_FILES
1047
LIBVIRT_RESULT_DEFAULT_EDITOR
1048
LIBVIRT_RESULT_LOADER_NVRAM
1049 1050
LIBVIRT_RESULT_LOGIN_SHELL
LIBVIRT_RESULT_HOST_VALIDATE
1051
LIBVIRT_RESULT_TLS_PRIORITY
D
Daniel P. Berrange 已提交
1052
AC_MSG_NOTICE([])
1053 1054
AC_MSG_NOTICE([Developer Tools])
AC_MSG_NOTICE([])
1055
LIBVIRT_RESULT_WIRESHARK
1056
AC_MSG_NOTICE([])
1057 1058
AC_MSG_NOTICE([Privileges])
AC_MSG_NOTICE([])
1059
LIBVIRT_RESULT_QEMU_PRIVILEGES
1060
AC_MSG_NOTICE([])