Guestfish feature: remote control of guestfish over a pipe.
[libguestfs.git] / configure.ac
1 # libguestfs
2 # Copyright (C) 2009 Red Hat Inc.
3 #
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18 # major/minor/release must be numbers
19 m4_define([libguestfs_major],   [1])
20 m4_define([libguestfs_minor],   [0])
21 m4_define([libguestfs_release], [58])
22 # extra can be any string
23 m4_define([libguestfs_extra],   [])
24
25 AC_INIT([libguestfs],libguestfs_major.libguestfs_minor.libguestfs_release[]libguestfs_extra)
26 AM_INIT_AUTOMAKE([foreign])
27
28 AC_CONFIG_MACRO_DIR([m4])
29
30 AC_PROG_LIBTOOL
31
32 dnl Split up the version string.
33 AC_DEFINE([PACKAGE_VERSION_MAJOR],[libguestfs_major],[Major version number])
34 AC_DEFINE([PACKAGE_VERSION_MINOR],[libguestfs_minor],[Minor version number])
35 AC_DEFINE([PACKAGE_VERSION_RELEASE],[libguestfs_release],[Release number])
36 AC_DEFINE([PACKAGE_VERSION_EXTRA],["libguestfs_extra"],[Extra version string])
37
38 dnl Check for basic C environment.
39 AC_PROG_CC_STDC
40 AC_PROG_INSTALL
41 AC_PROG_CPP
42
43 AC_C_PROTOTYPES
44 test "x$U" != "x" && AC_MSG_ERROR([Compiler not ANSI compliant])
45
46 AM_PROG_CC_C_O
47
48 dnl Check support for 64 bit file offsets.
49 AC_SYS_LARGEFILE
50
51 dnl Check sizeof long.
52 AC_CHECK_SIZEOF([long])
53
54 dnl Headers.
55 AC_CHECK_HEADERS([errno.h sys/types.h sys/un.h sys/wait.h sys/socket.h])
56
57 dnl Check for rpcgen and XDR library.  rpcgen is optional.
58 AC_CHECK_PROG([RPCGEN],[rpcgen],[rpcgen],[no])
59 AM_CONDITIONAL([HAVE_RPCGEN],[test "x$RPCGEN" != "xno"])
60 AC_CHECK_LIB([portablexdr],[xdrmem_create],[],[
61         AC_SEARCH_LIBS([xdrmem_create],[rpc xdr nsl])
62         ])
63
64 dnl Check for pod2man and pod2text.
65 AC_CHECK_PROG([POD2MAN],[pod2man],[pod2man],[no])
66 test "x$POD2MAN" = "xno" &&
67      AC_MSG_ERROR([pod2man must be installed])
68 AC_CHECK_PROG([POD2TEXT],[pod2text],[pod2text],[no])
69 test "x$POD2TEXT" = "xno" &&
70      AC_MSG_ERROR([pod2text must be installed])
71
72 dnl Check for mksquashfs.
73 AC_PATH_PROGS([MKSQUASHFS],[mksquashfs],[no],
74         [$PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin])
75 test "x$MKSQUASHFS" = "xno" && AC_MSG_ERROR([mksquashfs must be installed])
76
77 dnl Check for QEMU for running binaries on this $host_cpu, fall
78 dnl back to basic 'qemu'.  Allow the user to override it.
79 default_qemu="qemu-kvm qemu-system-$host_cpu qemu"
80 AC_ARG_WITH([qemu],
81         [AS_HELP_STRING([--with-qemu],
82           [set default QEMU binary @<:@default=[qemu-kvm] qemu-system-<host> qemu@:>@])],
83         [],
84         [with_qemu="$default_qemu"])
85 AC_PATH_PROGS([QEMU],[$with_qemu],[no],
86         [$PATH$PATH_SEPARATOR/usr/sbin$PATH_SEPARATOR/sbin])
87 test "x$QEMU" = "xno" && AC_MSG_ERROR([qemu must be installed])
88 AC_DEFINE_UNQUOTED([QEMU],["$QEMU"],[Location of qemu binary.])
89
90 dnl Check that the chosen qemu has vmchannel support.
91 dnl http://lists.gnu.org/archive/html/qemu-devel/2009-02/msg01042.html
92 if test "x$vmchannel_test" != "xno"; then
93     AC_MSG_CHECKING([for vmchannel support in $QEMU])
94     vmchannelout=`$QEMU -net channel /dev/zero 2>&1 ||:`
95     echo "vmchannel test command output: $vmchannelout" >&AS_MESSAGE_LOG_FD
96     if ! echo $vmchannelout | grep -sq "vmchannel wrong port number" ; then
97         AC_MSG_RESULT([no])
98         AC_MSG_FAILURE(
99 [I did not find vmchannel support in $QEMU.
100
101 vmchannel support is vital for libguestfs to operate.  You need a version
102 of qemu >= 0.10, or the following patch backported to earlier versions:
103
104 http://lists.gnu.org/archive/html/qemu-devel/2009-02/msg01042.html
105
106 You can override this test by setting the environment variable
107 vmchannel_test=no  However if you don't have vmchannel support
108 in your qemu, then this just delays the pain.
109
110 If I am using the wrong qemu or you want to compile qemu from source
111 and install it in another location, then you should configure with
112 the --with-qemu option.
113 ])
114     fi
115     AC_MSG_RESULT([yes])
116 fi
117
118 dnl Set drive interface used by the guestfs_add_drive{,_ro} calls
119 dnl ('-drive ...,if=...' option to qemu).
120 dnl
121 dnl NB. We will change the default in future to virtio, but at the
122 dnl moment this causes a performance problem, RHBZ#509383.
123 AC_ARG_WITH([drive-if],
124         [AS_HELP_STRING([--with-drive-if],
125           [set default driver (ide|scsi|virtio) @<:@default=ide@:>@])],
126         [],
127         [with_drive_if=ide])
128 AC_DEFINE_UNQUOTED([DRIVE_IF],["$with_drive_if"],[Default drive interface.])
129
130 dnl Check for febootstrap etc.
131 AC_CHECK_PROG([FEBOOTSTRAP],
132         [febootstrap],[febootstrap],[no])
133 if test "x$FEBOOTSTRAP" != "xno"; then
134   AC_CHECK_PROG([FEBOOTSTRAP_RUN],
135         [febootstrap-run],[febootstrap-run],[no])
136   test "x$FEBOOTSTRAP_RUN" = "xno" && \
137      AC_MSG_ERROR([febootstrap-run must be installed])
138   AC_CHECK_PROG([FEBOOTSTRAP_INSTALL],
139         [febootstrap-install],[febootstrap-install],[no])
140   test "x$FEBOOTSTRAP_INSTALL" = "xno" && \
141      AC_MSG_ERROR([febootstrap-install must be installed])
142   AC_CHECK_PROG([FEBOOTSTRAP_MINIMIZE],
143         [febootstrap-minimize],[febootstrap-minimize],[no])
144   test "x$FEBOOTSTRAP_MINIMIZE" = "xno" && \
145      AC_MSG_ERROR([febootstrap-minimize must be installed])
146   AC_CHECK_PROG([FEBOOTSTRAP_TO_INITRAMFS],
147         [febootstrap-to-initramfs],[febootstrap-to-initramfs],[no])
148   test "x$FEBOOTSTRAP_TO_INITRAMFS" = "xno" && \
149      AC_MSG_ERROR([febootstrap-to-initramfs must be installed])
150
151   dnl Check we have fakechroot >= 2.9 (it's an indirect requirement
152   dnl of febootstrap, but old versions will fail with yum).
153   AC_CHECK_PROG([FAKECHROOT],
154         [fakechroot],[fakechroot],[no])
155   test "x$FAKECHROOT" = "xno" && \
156     AC_MSG_ERROR([fakechroot must be installed])
157
158   AC_MSG_CHECKING([fakechroot version])
159   fakechroot_version=`$FAKECHROOT --version | awk '{print $3}'`
160   if test -z "$fakechroot_version"; then
161     AC_MSG_RESULT([failed])
162     AC_MSG_WARN([fakechroot --version command failed, proceeding anyway])
163   else
164     AC_MSG_RESULT([$fakechroot_version])
165     fakechroot_major=`echo $fakechroot_version | awk -F. '{print $1}'`
166     fakechroot_minor=`echo $fakechroot_version | awk -F. '{print $2}'`
167     if test "$fakechroot_major" -lt 2 -o \
168             \( "$fakechroot_major" -eq 2 -a "$fakechroot_minor" -lt 9 \); then
169         AC_MSG_ERROR([fakechroot version must be >= 2.9])
170     fi
171   fi
172   DIST="REDHAT"
173 else
174   # check for debootstrap and debirf
175   AC_CHECK_PROG([DEBOOTSTRAP],
176         [debootstrap],[debootstrap],[no])
177   test "x$DEBOOTSTRAP" = "xno" && \
178         AC_MSG_ERROR([Either febootstrap or debootstrap must be installed])
179   AC_CHECK_PROG([DEBIRF],[debirf],[debirf],[no])
180   test "x$DEBIRF" = "xno" &&
181         AC_MSG_ERROR([debirf must be installed])
182   DIST="DEBIAN"
183   case $host_cpu in
184       *86)
185           DEBIAN_KERNEL_ARCH=486
186           ;;
187       x86_64)
188           DEBIAN_KERNEL_ARCH=amd64
189           ;;
190       *)
191          DEBIAN_KERNEL_ARCH=$host_cpu
192          ;;
193    esac
194    AC_SUBST(DEBIAN_KERNEL_ARCH)
195 fi
196 AC_SUBST(DIST)
197
198
199 dnl --with-repo to specify a Fedora repository.
200 AC_ARG_WITH([repo],
201         [AS_HELP_STRING([--with-repo],
202           [set name of Fedora repository @<:@default=fedora-11@:>@])],
203         [],
204         [with_repo=fedora-11])
205 REPO="$with_repo"
206 AC_SUBST(REPO)
207 AC_DEFINE_UNQUOTED([REPO],["$REPO"],[Name of Fedora repository.])
208
209 dnl --with-updates to specify a Fedora updates repository.
210 AC_ARG_WITH([updates],
211         [AS_HELP_STRING([--with-updates],
212           [set name of Fedora updates repository @<:@default=updates-released-f11@:>@])],
213         [],
214         [with_updates=updates-released-f11])
215 UPDATES="$with_updates"
216 AC_SUBST(UPDATES)
217
218 dnl Define a symbol for the host CPU architecture.
219 AC_DEFINE_UNQUOTED([host_cpu],["$host_cpu"],[Host architecture.])
220
221 dnl --with-mirror to specify a local Fedora mirror.
222 AC_ARG_WITH([mirror],
223         [AS_HELP_STRING([--with-mirror],
224           [set URI of a local Fedora mirror])],
225         [],
226         [with_mirror=])
227 MIRROR="$with_mirror"
228 AC_SUBST(MIRROR)
229
230 dnl Build the supermin appliance?  Please see README file before
231 dnl enabling this option.
232 AC_ARG_ENABLE([supermin],
233         [AS_HELP_STRING([--enable-supermin],
234           [enable supermin appliance (see README) @<:@default=no@:>@])],
235         [],
236         [enable_supermin=no])
237 AM_CONDITIONAL([SUPERMIN],[test "x$enable_supermin" = "xyes"])
238
239 if test "x$enable_supermin" = "xyes"; then
240     dnl Check febootstrap-to-initramfs accepts the --files option
241     dnl (febootstrap >= 2.2).
242     AC_MSG_CHECKING([for --files support in $FEBOOTSTRAP_TO_INITRAMFS])
243     out=`$FEBOOTSTRAP_TO_INITRAMFS 2>&1 ||:`
244     echo "febootstrap_to_initramfs test command output: $out" >&AS_MESSAGE_LOG_FD
245     if ! echo $out | grep -sq -- "--files" ; then
246         AC_MSG_RESULT([no])
247         AC_MSG_FAILURE(
248 [febootstrap-to-initramfs does not support the --files option.
249
250 To build the supermin appliance, you need to upgrade to the latest
251 version of febootstrap.
252 ])
253     fi
254     AC_MSG_RESULT([yes])
255
256     dnl Check febootstrap-to-initramfs accepts the --nocompress option
257     dnl (febootstrap >= 2.3).
258     AC_MSG_CHECKING([for --nocompress support in $FEBOOTSTRAP_TO_INITRAMFS])
259     out=`$FEBOOTSTRAP_TO_INITRAMFS 2>&1 ||:`
260     echo "febootstrap_to_initramfs test command output: $out" >&AS_MESSAGE_LOG_FD
261     if ! echo $out | grep -sq -- "--nocompress" ; then
262         AC_MSG_RESULT([no])
263         AC_MSG_FAILURE(
264 [febootstrap-to-initramfs does not support the --nocompress option.
265
266 To build the supermin appliance, you need to upgrade to the latest
267 version of febootstrap.
268 ])
269     fi
270     AC_MSG_RESULT([yes])
271 fi
272
273 dnl Readline.
274 AC_ARG_WITH([readline],
275     [AS_HELP_STRING([--with-readline],
276         [support fancy command line editing @<:@default=check@:>@])],
277     [],
278     [with_readline=check])
279
280 LIBREADLINE=
281 AS_IF([test "x$with_readline" != xno],
282     [AC_CHECK_LIB([readline], [main],
283         [AC_SUBST([LIBREADLINE], ["-lreadline -lncurses"])
284          AC_DEFINE([HAVE_LIBREADLINE], [1],
285                    [Define if you have libreadline])
286         ],
287         [if test "x$with_readline" != xcheck; then
288          AC_MSG_FAILURE(
289              [--with-readline was given, but test for readline failed])
290          fi
291         ], -lncurses)])
292
293 dnl For i18n.
294 AM_GNU_GETTEXT([external])
295 AM_GNU_GETTEXT_VERSION([0.14])
296
297 dnl Check for OCaml (optional, for OCaml bindings).
298 AC_PROG_OCAML
299 AC_PROG_FINDLIB
300 AM_CONDITIONAL([HAVE_OCAML],[test "x$OCAMLC" != "xno" -a "x$OCAMLFIND" != "xno"])
301
302 dnl Check for Perl (optional, for Perl bindings).
303 dnl XXX This isn't quite right, we should check for Perl devel library.
304 AC_CHECK_PROG([PERL],[perl],[perl],[no])
305
306 dnl Check for Perl modules that must be present to compile and
307 dnl test the Perl bindings.
308 missing_perl_modules=no
309 for pm in Test::More Test::Pod Test::Pod::Coverage ExtUtils::MakeMaker; do
310     AC_MSG_CHECKING([for $pm])
311     if ! perl -M$pm -e1 >/dev/null 2>&1; then
312         AC_MSG_RESULT([no])
313         missing_perl_modules=yes
314     else
315         AC_MSG_RESULT([yes])
316     fi
317 done
318 if test "x$missing_perl_modules" = "xyes"; then
319     AC_MSG_WARN([some Perl modules required to compile or test the Perl bindings are missing])
320 fi
321
322 AM_CONDITIONAL([HAVE_PERL],
323     [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
324
325 dnl Check for Python (optional, for Python bindings).
326 AC_CHECK_PROG([PYTHON],[python],[python],[no])
327
328 PYTHON_PREFIX=
329 PYTHON_VERSION=
330 PYTHON_INCLUDEDIR=
331 PYTHON_SITE_PACKAGES=
332
333 if test "x$PYTHON" != "xno"; then
334     PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"`
335     PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
336     for d in \
337         $PYTHON_PREFIX/include/python$PYTHON_VERSION \
338         /usr/include/python$PYTHON_VERSION \
339         /usr/local/include/python$PYTHON_VERSION
340     do
341         AC_MSG_CHECKING([Python.h in $d])
342         if test -r "$d/Python.h"; then
343             AC_MSG_RESULT([found])
344             PYTHON_INCLUDEDIR=$d
345             break
346         fi
347         AC_MSG_RESULT([not found])
348     done
349     for d in \
350         $PYTHON_PREFIX/lib64/python$PYTHON_VERSION/site-packages \
351         $PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages \
352         /usr/lib64/python$PYTHON_VERSION/site-packages \
353         /usr/lib/python$PYTHON_VERSION/site-packages \
354         /usr/local/lib/python$PYTHON_VERSION/site-packages
355     do
356         AC_MSG_CHECKING([for $d])
357         if test -d "$d"; then
358             AC_MSG_RESULT([found])
359             PYTHON_SITE_PACKAGES=$d
360             break
361         fi
362         AC_MSG_RESULT([not found])
363     done
364 fi
365
366 AC_SUBST(PYTHON_PREFIX)
367 AC_SUBST(PYTHON_VERSION)
368 AC_SUBST(PYTHON_INCLUDEDIR)
369 AC_SUBST(PYTHON_SITE_PACKAGES)
370
371 AM_CONDITIONAL([HAVE_PYTHON],
372     [test "x$PYTHON_INCLUDEDIR" != "x" -a "x$PYTHON_SITE_PACKAGES" != "x"])
373
374 dnl Check for Ruby and rake (optional, for Ruby bindings).
375 AC_CHECK_LIB([ruby],[ruby_init],[HAVE_LIBRUBY=1],[HAVE_LIBRUBY=0])
376 AC_CHECK_PROG([RAKE],[rake],[rake],[no])
377
378 AM_CONDITIONAL([HAVE_RUBY],
379     [test "x$RAKE" != "xno" -a -n "$HAVE_LIBRUBY"])
380
381 dnl Check for Java.
382 AC_ARG_WITH(java_home,
383     [AS_HELP_STRING([--with-java-home],
384         [specify path to JDK directory @<:@default=check@:>@])],
385     [],
386     [with_java_home=check])
387
388 if test "x$with_java_home" != "xno"; then
389     if test "x$with_java_home" != "xyes" -a "x$with_java_home" != "xcheck"
390     then
391         if test -d "$with_java_home"; then
392             JAVA_HOME="$with_java_home"
393         else
394             AC_MSG_FAILURE([$with_java_home is not a directory (use --with-java-home=no to disable Java support)])
395         fi
396     fi
397
398     if test "x$JAVA_HOME" = "x"; then
399         # Look for Java in some likely locations.
400         for d in \
401             /usr/lib/jvm/java \
402             /usr/lib/jvm/java-6-openjdk
403         do
404             if test -d $d -a -f $d/bin/java; then
405                 JAVA_HOME=$d
406                 break
407             fi
408         done
409     fi
410
411     if test "x$JAVA_HOME" != "x"; then
412         AC_MSG_CHECKING(for JDK in $JAVA_HOME)
413         if test ! -x "$JAVA_HOME/bin/java"; then
414             AC_MSG_ERROR([missing $JAVA_HOME/bin/java binary (use --with-java-home=no to disable Java support)])
415         else
416             JAVA="$JAVA_HOME/bin/java"
417         fi
418         if test ! -x "$JAVA_HOME/bin/javac"; then
419             AC_MSG_ERROR([missing $JAVA_HOME/bin/javac binary])
420         else
421             JAVAC="$JAVA_HOME/bin/javac"
422         fi
423         if test ! -x "$JAVA_HOME/bin/javah"; then
424             AC_MSG_ERROR([missing $JAVA_HOME/bin/javah binary])
425         else
426             JAVAH="$JAVA_HOME/bin/javah"
427         fi
428         if test ! -x "$JAVA_HOME/bin/javadoc"; then
429             AC_MSG_ERROR([missing $JAVA_HOME/bin/javadoc binary])
430         else
431             JAVADOC="$JAVA_HOME/bin/javadoc"
432         fi
433         if test ! -x "$JAVA_HOME/bin/jar"; then
434             AC_MSG_ERROR([missing $JAVA_HOME/bin/jar binary])
435         else
436             JAR="$JAVA_HOME/bin/jar"
437         fi
438         java_version=`$JAVA -version 2>&1 | grep "java version"`
439         AC_MSG_RESULT(found $java_version in $JAVA_HOME)
440
441         dnl Find jni.h.
442         AC_MSG_CHECKING([for jni.h])
443         if test -f "$JAVA_HOME/include/jni.h"; then
444             JNI_CFLAGS="-I$JAVA_HOME/include"
445         else
446             if test "`find $JAVA_HOME -name jni.h`" != ""; then
447                 head=`find $JAVA_HOME -name jni.h | tail -1`
448                 dir=`dirname $head`
449                 JNI_CFLAGS="-I$dir"
450             else
451                 AC_MSG_FAILURE([missing jni.h header file])
452             fi
453         fi
454         AC_MSG_RESULT([$JNI_CFLAGS])
455
456         dnl Find jni_md.h.
457         AC_MSG_CHECKING([for jni_md.h])
458         case "$build_os" in
459         *linux*) system="linux" ;;
460         *SunOS*) system="solaris" ;;
461         *cygwin*) system="win32" ;;
462         *) system="$build_os" ;;
463         esac
464         if test -f "$JAVA_HOME/include/$system/jni_md.h"; then
465             JNI_CFLAGS="$JNI_CFLAGS -I$JAVA_HOME/include/$system"
466         else
467             if test "`find $JAVA_HOME -name jni_md.h`" != ""; then
468                 head=`find $JAVA_HOME -name jni_md.h | tail -1`
469                 dir=`dirname $head`
470                 JNI_CFLAGS="$JNI_CFLAGS -I$dir"
471             else
472                 AC_MSG_FAILURE([missing jni_md.h header file])
473             fi
474         fi
475         AC_MSG_RESULT([$JNI_CFLAGS])
476
477         dnl Need extra version flag?
478         AC_MSG_CHECKING([extra javac flags])
479         JAVAC_FLAGS=
480         javac_version=`$JAVAC -version 2>&1`
481         case "$javac_version" in
482         *Eclipse*)
483             JAVAC_FLAGS="-source 1.5" ;;
484         esac
485         AC_MSG_RESULT([$JAVAC_FLAGS])
486
487         dnl Where to install jarfiles.
488         dnl XXX How to make it configurable?
489         JAR_INSTALL_DIR=\${prefix}/share/java
490         JNI_INSTALL_DIR=\${libdir}
491
492         dnl JNI version.
493         jni_major_version=`echo $VERSION | awk -F. '{print $1}'`
494         jni_minor_version=`echo $VERSION | awk -F. '{print $2}'`
495         jni_micro_version=`echo $VERSION | awk -F. '{print $3}'`
496         JNI_VERSION_INFO=`expr $jni_major_version + $jni_minor_version`:$jni_micro_version:$jni_minor_version
497     fi
498 fi
499
500 AC_SUBST(JAVA_HOME)
501 AC_SUBST(JAVA)
502 AC_SUBST(JAVAC)
503 AC_SUBST(JAVAH)
504 AC_SUBST(JAVADOC)
505 AC_SUBST(JAR)
506 AC_SUBST(JNI_CFLAGS)
507 AC_SUBST(JAVAC_FLAGS)
508 AC_SUBST(JAR_INSTALL_DIR)
509 AC_SUBST(JNI_INSTALL_DIR)
510 AC_SUBST(JNI_VERSION_INFO)
511
512 AM_CONDITIONAL([HAVE_JAVA],[test -n "$JAVAC"])
513
514 dnl Check for Haskell (GHC).
515 AC_CHECK_PROG([GHC],[ghc],[ghc],[no])
516
517 AM_CONDITIONAL([HAVE_HASKELL],
518     [test "x$GHC" != "xno"])
519
520 dnl Check for Perl modules needed by virt-df, inspector and V2V.
521 missing_perl_modules=no
522 for pm in Pod::Usage Getopt::Long Sys::Virt Data::Dumper XML::Writer; do
523     AC_MSG_CHECKING([for $pm])
524     if ! perl -M$pm -e1 >/dev/null 2>&1; then
525         AC_MSG_RESULT([no])
526         missing_perl_modules=yes
527     else
528         AC_MSG_RESULT([yes])
529     fi
530 done
531 if test "x$missing_perl_modules" = "xyes"; then
532     AC_MSG_WARN([some Perl modules required to compile virt-df, virt-inspector and virt-v2v are missing])
533 fi
534
535 AM_CONDITIONAL([HAVE_DF],
536     [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
537 AM_CONDITIONAL([HAVE_INSPECTOR],
538     [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
539 AM_CONDITIONAL([HAVE_V2V],
540     [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"])
541
542 dnl Library versioning.
543 MAX_PROC_NR=`cat $srcdir/src/MAX_PROC_NR`
544 AC_SUBST(MAX_PROC_NR)
545
546 dnl Run in subdirs.
547 AC_CONFIG_SUBDIRS([daemon])
548
549 dnl Produce output files.
550 AC_CONFIG_HEADERS([config.h])
551 dnl http://www.mail-archive.com/automake@gnu.org/msg10204.html
552 AC_CONFIG_FILES([appliance/make.sh],
553                 [chmod +x appliance/make.sh])
554 AC_CONFIG_FILES([appliance/update.sh],
555                 [chmod +x appliance/update.sh])
556 AC_CONFIG_FILES([appliance/supermin-split.sh],
557                 [chmod +x appliance/supermin-split.sh])
558 AC_CONFIG_FILES([appliance/supermin-make.sh],
559                 [chmod +x appliance/supermin-make.sh])
560 AC_CONFIG_FILES([appliance/libguestfs-supermin-helper],
561                 [chmod +x appliance/libguestfs-supermin-helper])
562 AC_CONFIG_FILES([Makefile
563                  src/Makefile fish/Makefile po/Makefile.in examples/Makefile
564                  appliance/Makefile
565                  appliance/debian/debirf.conf
566                  images/Makefile
567                  capitests/Makefile
568                  regressions/Makefile
569                  ocaml/Makefile ocaml/examples/Makefile
570                  perl/Makefile
571                  python/Makefile
572                  ruby/Makefile ruby/Rakefile
573                  java/Makefile
574                  haskell/Makefile
575                  df/Makefile
576                  inspector/Makefile
577                  v2v/Makefile
578                  libguestfs.pc
579                  ocaml/META perl/Makefile.PL])
580 AC_OUTPUT
581
582 dnl Produce summary.
583 echo
584 echo
585 echo "------------------------------------------------------------"
586 echo "Thank you for downloading $PACKAGE_STRING"
587 echo
588 echo "This is how we have configured the optional components for you today:"
589 echo
590 echo    "QEMU ................................ $QEMU"
591 echo -n "OCaml bindings ...................... "
592 if test "x$HAVE_OCAML_TRUE" = "x"; then echo "yes"; else echo "no"; fi
593 echo -n "Perl bindings ....................... "
594 if test "x$HAVE_PERL_TRUE" = "x"; then echo "yes"; else echo "no"; fi
595 echo -n "Python bindings ..................... "
596 if test "x$HAVE_PYTHON_TRUE" = "x"; then echo "yes"; else echo "no"; fi
597 echo -n "Ruby bindings ....................... "
598 if test "x$HAVE_RUBY_TRUE" = "x"; then echo "yes"; else echo "no"; fi
599 echo -n "Java bindings ....................... "
600 if test "x$HAVE_JAVA_TRUE" = "x"; then echo "yes"; else echo "no"; fi
601 echo -n "Haskell bindings .................... "
602 if test "x$HAVE_HASKELL" = "x"; then echo "yes"; else echo "no"; fi
603 echo -n "virt-df ............................. "
604 if test "x$HAVE_DF" = "x"; then echo "yes"; else echo "no"; fi
605 echo -n "virt-inspector ...................... "
606 if test "x$HAVE_INSPECTOR" = "x"; then echo "yes"; else echo "no"; fi
607 echo -n "virt-v2v ............................ "
608 if test "x$HAVE_V2V" = "x"; then echo "yes"; else echo "no"; fi
609 echo "supermin appliance .................. $enable_supermin"
610 echo
611 echo "If any optional component is configured 'no' when you expected 'yes'"
612 echo "then you should check the preceeding messages."
613 echo
614 echo "Please report bugs back to the mailing list:"
615 echo "http://www.redhat.com/mailman/listinfo/libguestfs"
616 echo
617 echo "Next you should type 'make' to build the package,"
618 echo "then 'make check' to run the tests."
619 echo "------------------------------------------------------------"