]> git.ipfire.org Git - thirdparty/collectd.git/blame - configure.ac
gcrypt: remove exec-prefix check
[thirdparty/collectd.git] / configure.ac
CommitLineData
86ca149a 1dnl Process this file with autoconf to produce a configure script.
d4fcceb7 2AC_INIT([collectd],[m4_esyscmd(./version-gen.sh)])
216c6246 3AC_CONFIG_SRCDIR(src/)
6e765a02 4AC_CONFIG_HEADERS(src/config.h)
e82cc54a 5AC_CONFIG_AUX_DIR([libltdl/config])
65e2acb6
SH
6
7m4_ifdef([LT_PACKAGE_VERSION],
8 # libtool >= 2.2
9 [
10 LT_CONFIG_LTDL_DIR([libltdl])
11 LT_INIT([dlopen])
12 LTDL_INIT([convenience])
47f2b4a9 13 AC_DEFINE(LIBTOOL_VERSION, 2, [Define to used libtool version.])
65e2acb6
SH
14 ]
15,
16 # libtool <= 1.5
17 [
18 AC_LIBLTDL_CONVENIENCE
19 AC_SUBST(LTDLINCL)
20 AC_SUBST(LIBLTDL)
21 AC_LIBTOOL_DLOPEN
22 AC_CONFIG_SUBDIRS(libltdl)
47f2b4a9 23 AC_DEFINE(LIBTOOL_VERSION, 1, [Define to used libtool version.])
65e2acb6
SH
24 ]
25)
26
a2983ff8
MF
27AM_INIT_AUTOMAKE([tar-pax dist-bzip2 foreign])
28m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
86ca149a
FF
29AC_LANG(C)
30
31AC_PREFIX_DEFAULT("/opt/collectd")
32
9e7918de
SH
33AC_SYS_LARGEFILE
34
15996f86
FF
35#
36# Checks for programs.
37#
86ca149a
FF
38AC_PROG_CC
39AC_PROG_CPP
40AC_PROG_INSTALL
41AC_PROG_LN_S
42AC_PROG_MAKE_SET
30f3e7b8 43AM_PROG_CC_C_O
586eed68 44AM_CONDITIONAL(COMPILER_IS_GCC, test "x$GCC" = "xyes")
86ca149a 45
86ca149a 46AC_DISABLE_STATIC
86ca149a 47AC_PROG_LIBTOOL
108c20b2
FF
48AC_PROG_LEX
49AC_PROG_YACC
249d5776 50PKG_PROG_PKG_CONFIG
86ca149a 51
5f4c4a17 52AC_CHECK_PROG([have_protoc_c], [protoc-c], [yes], [no])
418f91fb
FF
53AC_CHECK_HEADERS([google/protobuf-c/protobuf-c.h],
54 [have_protobuf_c_h="yes"],
55 [have_protobuf_c_h="no"])
8a09193a
FF
56if test "x$have_protoc_c" = "xyes" && test "x$have_protobuf_c_h" != "xyes"
57then
418f91fb 58 have_protoc_c="no (unable to find <google/protobuf-c/protobuf-c.h>)"
8a09193a 59fi
5f4c4a17 60AM_CONDITIONAL(HAVE_PROTOC_C, test "x$have_protoc_c" = "xyes")
23a8901d 61
af18c7e0
FF
62AC_MSG_CHECKING([for kernel type ($host_os)])
63case $host_os in
64 *linux*)
65 AC_DEFINE([KERNEL_LINUX], 1, [True if program is to be compiled for a Linux kernel])
66 ac_system="Linux"
67 ;;
68 *solaris*)
69 AC_DEFINE([KERNEL_SOLARIS], 1, [True if program is to be compiled for a Solaris kernel])
70 ac_system="Solaris"
71 ;;
29f72849 72 *darwin*)
15e2832f 73 AC_DEFINE([KERNEL_DARWIN], 1, [True if program is to be compiled for a Darwin kernel])
29f72849 74 ac_system="Darwin"
af18c7e0 75 ;;
7132090f 76 *openbsd*)
15e2832f 77 AC_DEFINE([KERNEL_OPENBSD], 1, [True if program is to be compiled for an OpenBSD kernel])
7132090f
FF
78 ac_system="OpenBSD"
79 ;;
11b1e65a
MS
80 *aix*)
81 AC_DEFINE([KERNEL_AIX], 1, [True if program is to be compiled for a AIX kernel])
82 ac_system="AIX"
83 ;;
95c50593
XL
84 *freebsd*)
85 AC_DEFINE([KERNEL_FREEBSD], 1, [True if program is to be compiled for a FreeBSD kernel])
86 ac_system="FreeBSD"
87 ;;
af18c7e0
FF
88 *)
89 ac_system="unknown"
90esac
91AC_MSG_RESULT([$ac_system])
92
32bf93fe
RK
93AM_CONDITIONAL([BUILD_LINUX],[test "x$ac_system" = "xLinux"])
94AM_CONDITIONAL([BUILD_SOLARIS],[test "x$ac_system" = "xSolaris"])
95AM_CONDITIONAL([BUILD_DARWIN],[test "x$ac_system" = "xDarwin"])
96AM_CONDITIONAL([BUILD_OPENBSD],[test "x$ac_system" = "xOpenBSD"])
97AM_CONDITIONAL([BUILD_AIX],[test "x$ac_system" = "xAIX"])
98AM_CONDITIONAL([BUILD_FREEBSD],[test "x$ac_system" = "xFreeBSD"])
15e2832f 99
9bf39535
BB
100if test "x$ac_system" = "xLinux"
101then
102 AC_ARG_VAR([KERNEL_DIR], [path to Linux kernel sources])
103 if test -z "$KERNEL_DIR"
104 then
105 KERNEL_DIR="/lib/modules/`uname -r`/source"
106 fi
107
108 KERNEL_CFLAGS="-I$KERNEL_DIR/include"
109 AC_SUBST(KERNEL_CFLAGS)
110fi
111
1862f170
FF
112if test "x$ac_system" = "xSolaris"
113then
7bec4afe 114 AC_DEFINE(_POSIX_PTHREAD_SEMANTICS, 1, [Define to enforce POSIX thread semantics under Solaris.])
101c7c00 115 AC_DEFINE(_REENTRANT, 1, [Define to enable reentrancy interfaces.])
0a3cf365
FF
116
117 AC_MSG_CHECKING([whether compiler builds 64bit binaries])
65ca6992 118 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
0a3cf365
FF
119 #ifndef _LP64
120 # error "Compiler not in 64bit mode."
121 #endif
122 ])],
123 [AC_MSG_RESULT([yes])],
124 [
125 AC_MSG_RESULT([no])
126 AC_MSG_NOTICE([Solaris detected. Please consider building a 64-bit binary.])
127 ])
1862f170 128fi
0a3cf365 129
13cbf9d4
AR
130if test "x$ac_system" = "xAIX"
131then
132 AC_DEFINE(_THREAD_SAFE_ERRNO, 1, [Define to use the thread-safe version of errno under AIX.])
133fi
1862f170 134
9ece08de
FF
135# Where to install .pc files.
136pkgconfigdir="${libdir}/pkgconfig"
137AC_SUBST(pkgconfigdir)
138
7bec4afe
FF
139# Check for standards compliance mode
140AC_ARG_ENABLE(standards,
141 AS_HELP_STRING([--enable-standards], [Enable standards compliance mode]),
142 [enable_standards="$enableval"],
143 [enable_standards="no"])
144if test "x$enable_standards" = "xyes"
145then
146 AC_DEFINE(_ISOC99_SOURCE, 1, [Define to enforce ISO C99 compliance.])
c1f003b7
FF
147 AC_DEFINE(_POSIX_C_SOURCE, 200809L, [Define to enforce POSIX.1-2008 compliance.])
148 AC_DEFINE(_XOPEN_SOURCE, 700, [Define to enforce X/Open 7 (XSI) compliance.])
7bec4afe 149 AC_DEFINE(_REENTRANT, 1, [Define to enable reentrancy interfaces.])
c1f003b7
FF
150 if test "x$GCC" = "xyes"
151 then
152 CFLAGS="$CFLAGS -std=c99"
153 fi
7bec4afe
FF
154fi
155AM_CONDITIONAL(BUILD_FEATURE_STANDARDS, test "x$enable_standards" = "xyes")
156
15996f86
FF
157#
158# Checks for header files.
159#
e708ae9b 160AC_HEADER_STDC
86ca149a 161AC_HEADER_SYS_WAIT
6e765a02 162AC_HEADER_DIRENT
9e0809db 163AC_HEADER_STDBOOL
a905d397 164
76910471 165AC_CHECK_HEADERS(stdio.h errno.h math.h stdarg.h syslog.h fcntl.h signal.h assert.h sys/types.h sys/socket.h sys/select.h poll.h netdb.h arpa/inet.h sys/resource.h sys/param.h kstat.h regex.h sys/ioctl.h endian.h sys/isa_defs.h fnmatch.h libgen.h)
15996f86 166
c9a5b034 167# For ping library
6934b3d0
FF
168AC_CHECK_HEADERS(netinet/in_systm.h, [], [],
169[#if HAVE_STDINT_H
170# include <stdint.h>
171#endif
ac491e03
FF
172#if HAVE_SYS_TYPES_H
173# include <sys/types.h>
174#endif
6934b3d0 175])
c9a5b034 176AC_CHECK_HEADERS(netinet/in.h, [], [],
6934b3d0
FF
177[#if HAVE_STDINT_H
178# include <stdint.h>
179#endif
ac491e03
FF
180#if HAVE_SYS_TYPES_H
181# include <sys/types.h>
182#endif
6934b3d0 183#if HAVE_NETINET_IN_SYSTM_H
c9a5b034
FF
184# include <netinet/in_systm.h>
185#endif
186])
187AC_CHECK_HEADERS(netinet/ip.h, [], [],
6934b3d0
FF
188[#if HAVE_STDINT_H
189# include <stdint.h>
190#endif
ac491e03
FF
191#if HAVE_SYS_TYPES_H
192# include <sys/types.h>
193#endif
6934b3d0 194#if HAVE_NETINET_IN_SYSTM_H
c9a5b034
FF
195# include <netinet/in_systm.h>
196#endif
197#if HAVE_NETINET_IN_H
198# include <netinet/in.h>
199#endif
200])
201AC_CHECK_HEADERS(netinet/ip_icmp.h, [], [],
6934b3d0
FF
202[#if HAVE_STDINT_H
203# include <stdint.h>
204#endif
ac491e03
FF
205#if HAVE_SYS_TYPES_H
206# include <sys/types.h>
207#endif
6934b3d0 208#if HAVE_NETINET_IN_SYSTM_H
c9a5b034
FF
209# include <netinet/in_systm.h>
210#endif
211#if HAVE_NETINET_IN_H
212# include <netinet/in.h>
213#endif
214#if HAVE_NETINET_IP_H
215# include <netinet/ip.h>
216#endif
217])
218AC_CHECK_HEADERS(netinet/ip_var.h, [], [],
6934b3d0
FF
219[#if HAVE_STDINT_H
220# include <stdint.h>
221#endif
ac491e03
FF
222#if HAVE_SYS_TYPES_H
223# include <sys/types.h>
224#endif
6934b3d0 225#if HAVE_NETINET_IN_SYSTM_H
c9a5b034
FF
226# include <netinet/in_systm.h>
227#endif
228#if HAVE_NETINET_IN_H
229# include <netinet/in.h>
230#endif
231#if HAVE_NETINET_IP_H
232# include <netinet/ip.h>
233#endif
234])
235AC_CHECK_HEADERS(netinet/ip6.h, [], [],
6934b3d0
FF
236[#if HAVE_STDINT_H
237# include <stdint.h>
238#endif
6fe07031
FF
239#if HAVE_SYS_TYPES_H
240# include <sys/types.h>
241#endif
6934b3d0 242#if HAVE_NETINET_IN_SYSTM_H
c9a5b034
FF
243# include <netinet/in_systm.h>
244#endif
245#if HAVE_NETINET_IN_H
246# include <netinet/in.h>
247#endif
248])
249AC_CHECK_HEADERS(netinet/icmp6.h, [], [],
6934b3d0
FF
250[#if HAVE_STDINT_H
251# include <stdint.h>
252#endif
6fe07031
FF
253#if HAVE_SYS_TYPES_H
254# include <sys/types.h>
255#endif
6934b3d0 256#if HAVE_NETINET_IN_SYSTM_H
c9a5b034
FF
257# include <netinet/in_systm.h>
258#endif
259#if HAVE_NETINET_IN_H
260# include <netinet/in.h>
261#endif
262#if HAVE_NETINET_IP6_H
263# include <netinet/ip6.h>
264#endif
265])
79d36d9e
FF
266AC_CHECK_HEADERS(netinet/tcp.h, [], [],
267[#if HAVE_STDINT_H
268# include <stdint.h>
269#endif
270#if HAVE_SYS_TYPES_H
271# include <sys/types.h>
272#endif
273#if HAVE_NETINET_IN_SYSTM_H
274# include <netinet/in_systm.h>
275#endif
276#if HAVE_NETINET_IN_H
277# include <netinet/in.h>
278#endif
279#if HAVE_NETINET_IP_H
280# include <netinet/ip.h>
281#endif
282])
5b9d0a2b
FF
283AC_CHECK_HEADERS(netinet/udp.h, [], [],
284[#if HAVE_STDINT_H
285# include <stdint.h>
286#endif
287#if HAVE_SYS_TYPES_H
288# include <sys/types.h>
289#endif
290#if HAVE_NETINET_IN_SYSTM_H
291# include <netinet/in_systm.h>
292#endif
293#if HAVE_NETINET_IN_H
294# include <netinet/in.h>
295#endif
296#if HAVE_NETINET_IP_H
297# include <netinet/ip.h>
298#endif
299])
c9a5b034 300
a621ced2
FF
301have_ip6_ext="no"
302AC_CHECK_TYPES([struct ip6_ext], [have_ip6_ext="yes"], [have_ip6_ext="no"],
21ba59f8
FF
303[#if HAVE_STDINT_H
304# include <stdint.h>
305#endif
306#if HAVE_SYS_TYPES_H
307# include <sys/types.h>
308#endif
309#if HAVE_NETINET_IN_SYSTM_H
310# include <netinet/in_systm.h>
311#endif
312#if HAVE_NETINET_IN_H
313# include <netinet/in.h>
314#endif
315#if HAVE_NETINET_IP6_H
316# include <netinet/ip6.h>
317#endif
318])
319
a621ced2
FF
320if test "x$have_ip6_ext" = "xno"; then
321 SAVE_CFLAGS="$CFLAGS"
322 CFLAGS="$CFLAGS -DSOLARIS2=8"
323
324 AC_CHECK_TYPES([struct ip6_ext],
325 [have_ip6_ext="yes, with -DSOLARIS2=8"],
326 [have_ip6_ext="no"],
327[#if HAVE_STDINT_H
328# include <stdint.h>
329#endif
330#if HAVE_SYS_TYPES_H
331# include <sys/types.h>
332#endif
333#if HAVE_NETINET_IN_SYSTM_H
334# include <netinet/in_systm.h>
335#endif
336#if HAVE_NETINET_IN_H
337# include <netinet/in.h>
338#endif
339#if HAVE_NETINET_IP6_H
340# include <netinet/ip6.h>
341#endif
342])
343
344 if test "x$have_ip6_ext" = "xno"; then
345 CFLAGS="$SAVE_CFLAGS"
346 fi
347fi
348
e1d497b7 349# For cpu modules
af18c7e0 350AC_CHECK_HEADERS(sys/dkstat.h)
29f72849 351if test "x$ac_system" = "xDarwin"
af18c7e0
FF
352then
353 AC_CHECK_HEADERS(mach/mach_init.h mach/host_priv.h mach/mach_error.h mach/mach_host.h mach/mach_port.h mach/mach_types.h mach/message.h mach/processor_set.h mach/processor.h mach/processor_info.h mach/task.h mach/thread_act.h mach/vm_region.h mach/vm_map.h mach/vm_prot.h mach/vm_statistics.h mach/kern_return.h)
354 AC_CHECK_HEADERS(CoreFoundation/CoreFoundation.h IOKit/IOKitLib.h IOKit/IOTypes.h IOKit/ps/IOPSKeys.h IOKit/IOBSD.h IOKit/storage/IOBlockStorageDriver.h)
90151473
RK
355 # For the battery plugin
356 AC_CHECK_HEADERS(IOKit/ps/IOPowerSources.h, [], [],
357[
358#if HAVE_IOKIT_IOKITLIB_H
359# include <IOKit/IOKitLib.h>
360#endif
361#if HAVE_IOKIT_IOTYPES_H
362# include <IOKit/IOTypes.h>
363#endif
364])
365
af18c7e0 366fi
90151473 367
d4b36462
FF
368AC_CHECK_HEADERS(sys/sysctl.h, [], [],
369[
370#if HAVE_SYS_TYPES_H
371# include <sys/types.h>
372#endif
373#if HAVE_SYS_PARAM_H
374# include <sys/param.h>
375#endif
376])
e1d497b7 377
917d7fa8
DM
378AC_MSG_CHECKING([for sysctl kern.cp_times])
379if test -x /sbin/sysctl
380then
3ed2b5f9 381 /sbin/sysctl kern.cp_times 2>/dev/null
917d7fa8
DM
382 if test $? -eq 0
383 then
384 AC_MSG_RESULT([yes])
385 AC_DEFINE(HAVE_SYSCTL_KERN_CP_TIMES, 1,
386 [Define if sysctl supports kern.cp_times])
387 else
388 AC_MSG_RESULT([no])
389 fi
390else
391 AC_MSG_RESULT([no])
392fi
393
46ed2804 394# For hddtemp module
76910471 395AC_CHECK_HEADERS(linux/major.h)
46ed2804 396
9ce2a30d
MH
397# For md module (Linux only)
398if test "x$ac_system" = "xLinux"
399then
400 AC_CHECK_HEADERS(linux/raid/md_u.h,
401 [have_linux_raid_md_u_h="yes"],
402 [have_linux_raid_md_u_h="no"],
403[
404#include <sys/ioctl.h>
405#include <linux/major.h>
406#include <linux/types.h>
407])
408else
409 have_linux_raid_md_u_h="no"
410fi
411
72a6ea58
FF
412# For the swap module
413have_linux_wireless_h="no"
414if test "x$ac_system" = "xLinux"
415then
416 AC_CHECK_HEADERS(linux/wireless.h,
417 [have_linux_wireless_h="yes"],
418 [have_linux_wireless_h="no"],
419[
420#include <dirent.h>
421#include <sys/ioctl.h>
422#include <sys/socket.h>
423])
424fi
425
daedf582 426# For the swap module
1862f170 427have_sys_swap_h="yes"
168e7401 428AC_CHECK_HEADERS(sys/swap.h vm/anon.h, [], [have_sys_swap_h="no"],
d4b36462 429[
799daf94
DM
430#undef _FILE_OFFSET_BITS
431#undef _LARGEFILE64_SOURCE
d4b36462
FF
432#if HAVE_SYS_TYPES_H
433# include <sys/types.h>
434#endif
435#if HAVE_SYS_PARAM_H
436# include <sys/param.h>
437#endif
438])
daedf582 439
15996f86 440# For load module
44a3f33a 441# For the processes plugin
15996f86 442# For users module
e4080f7a 443AC_CHECK_HEADERS(sys/loadavg.h linux/config.h utmp.h utmpx.h)
86ca149a 444
3268a333 445# For interface plugin
a05e34a0 446AC_CHECK_HEADERS(ifaddrs.h)
cd377858
FF
447AC_CHECK_HEADERS(net/if.h, [], [],
448[
449#if HAVE_SYS_TYPES_H
450# include <sys/types.h>
451#endif
452#if HAVE_SYS_SOCKET_H
453# include <sys/socket.h>
454#endif
455])
a05e34a0
FF
456AC_CHECK_HEADERS(linux/if.h, [], [],
457[
458#if HAVE_SYS_TYPES_H
459# include <sys/types.h>
460#endif
461#if HAVE_SYS_SOCKET_H
462# include <sys/socket.h>
463#endif
464])
0bd83922
YM
465AC_CHECK_HEADERS(linux/inet_diag.h, [], [],
466[
467#if HAVE_SYS_TYPES_H
468# include <sys/types.h>
469#endif
470#if HAVE_SYS_SOCKET_H
471# include <sys/socket.h>
472#endif
473#if HAVE_LINUX_INET_DIAG_H
474# include <linux/inet_diag.h>
475#endif
476])
a05e34a0
FF
477AC_CHECK_HEADERS(linux/netdevice.h, [], [],
478[
479#if HAVE_SYS_TYPES_H
480# include <sys/types.h>
481#endif
482#if HAVE_SYS_SOCKET_H
483# include <sys/socket.h>
484#endif
485#if HAVE_LINUX_IF_H
486# include <linux/if.h>
487#endif
488])
489
8ae25a97
FF
490# For ethstat module
491AC_CHECK_HEADERS(linux/sockios.h,
492 [have_linux_sockios_h="yes"],
493 [have_linux_sockios_h="no"],
494 [
495#if HAVE_SYS_IOCTL_H
496# include <sys/ioctl.h>
497#endif
498#if HAVE_NET_IF_H
499# include <net/if.h>
500#endif
501 ])
502AC_CHECK_HEADERS(linux/ethtool.h,
503 [have_linux_ethtool_h="yes"],
504 [have_linux_ethtool_h="no"],
505 [
506#if HAVE_SYS_IOCTL_H
507# include <sys/ioctl.h>
508#endif
509#if HAVE_NET_IF_H
510# include <net/if.h>
511#endif
512#if HAVE_LINUX_SOCKIOS_H
513# include <linux/sockios.h>
514#endif
515 ])
516
fb3a07dc 517# For ipvs module
d87bf146 518have_linux_ip_vs_h="no"
fb3a07dc
SH
519have_net_ip_vs_h="no"
520have_ip_vs_h="no"
d87bf146 521ip_vs_h_needs_kernel_cflags="no"
fb3a07dc
SH
522if test "x$ac_system" = "xLinux"
523then
d87bf146 524 AC_CHECK_HEADERS(linux/ip_vs.h, [have_linux_ip_vs_h="yes"])
fb3a07dc
SH
525 AC_CHECK_HEADERS(net/ip_vs.h, [have_net_ip_vs_h="yes"])
526 AC_CHECK_HEADERS(ip_vs.h, [have_ip_vs_h="yes"])
9bf39535 527
d87bf146
SH
528 if test "x$have_linux_ip_vs_h$have_net_ip_vs_h$have_ip_vs_h" = "xnonono" && test -d "$KERNEL_DIR"
529 then
530 SAVE_CFLAGS="$CFLAGS"
531 CFLAGS="$CFLAGS $KERNEL_CFLAGS"
532
533 AC_MSG_NOTICE([Did not find ip_vs.h. Trying again using headers from $KERNEL_DIR.])
534
535 AC_CHECK_HEADERS(linux/ip_vs.h, [have_linux_ip_vs_h="yes"])
536 AC_CHECK_HEADERS(net/ip_vs.h, [have_net_ip_vs_h="yes"])
537 AC_CHECK_HEADERS(ip_vs.h, [have_ip_vs_h="yes"])
538
539 if test "x$have_linux_ip_vs_h" = "xyes" || test "x$have_net_ip_vs_h" = "xyes" || test "x$have_ip_vs_h" = "xyes"
540 then
541 ip_vs_h_needs_kernel_cflags="yes"
542 fi
543
544 CFLAGS="$SAVE_CFLAGS"
545 fi
fb3a07dc 546fi
d87bf146 547AM_CONDITIONAL(IP_VS_H_NEEDS_KERNEL_CFLAGS, test "x$ip_vs_h_needs_kernel_cflags" = "xyes")
fb3a07dc 548
6e765a02 549# For quota module
d4b36462
FF
550AC_CHECK_HEADERS(sys/ucred.h, [], [],
551[
552#if HAVE_SYS_TYPES_H
553# include <sys/types.h>
554#endif
555#if HAVE_SYS_PARAM_H
556# include <sys/param.h>
557#endif
558])
6e765a02
FF
559
560# For mount interface
d4b36462
FF
561AC_CHECK_HEADERS(sys/mount.h, [], [],
562[
563#if HAVE_SYS_TYPES_H
564# include <sys/types.h>
565#endif
566#if HAVE_SYS_PARAM_H
567# include <sys/param.h>
568#endif
569])
28c5e282 570
fc257d86
SH
571# For the email plugin
572AC_CHECK_HEADERS(linux/un.h, [], [],
573[
574#if HAVE_SYS_SOCKET_H
575# include <sys/socket.h>
576#endif
577])
fc257d86 578
8fce2979 579AC_CHECK_HEADERS(pwd.h grp.h sys/un.h ctype.h limits.h xfs/xqm.h fs_info.h fshelp.h paths.h mntent.h mnttab.h sys/fstyp.h sys/fs_types.h sys/mntent.h sys/mnttab.h sys/statfs.h sys/statvfs.h sys/vfs.h sys/vfstab.h sys/vmmeter.h kvm.h wordexp.h locale.h)
ec88fb0e 580
fdfbf887 581# For the dns plugin
e0a11961
FF
582AC_CHECK_HEADERS(arpa/nameser.h)
583AC_CHECK_HEADERS(arpa/nameser_compat.h, [], [],
584[
585#if HAVE_ARPA_NAMESER_H
586# include <arpa/nameser.h>
587#endif
588])
c4377c1e 589
e94efcbe
FF
590AC_CHECK_HEADERS(net/if_arp.h, [], [],
591[#if HAVE_SYS_SOCKET_H
592# include <sys/socket.h>
593#endif
594])
e40574f3
FF
595AC_CHECK_HEADERS(net/ppp_defs.h)
596AC_CHECK_HEADERS(net/if_ppp.h, [], [],
597[#if HAVE_NET_PPP_DEFS_H
598# include <net/ppp_defs.h>
599#endif
600])
e94efcbe
FF
601AC_CHECK_HEADERS(netinet/if_ether.h, [], [],
602[#if HAVE_STDINT_H
603# include <stdint.h>
604#endif
605#if HAVE_SYS_TYPES_H
606# include <sys/types.h>
607#endif
608#if HAVE_SYS_SOCKET_H
609# include <sys/socket.h>
610#endif
611#if HAVE_NET_IF_H
612# include <net/if.h>
613#endif
614#if HAVE_NETINET_IN_H
615# include <netinet/in.h>
616#endif
617])
dd7a9bc9 618
4b3e4116
SH
619AC_CHECK_HEADERS(netinet/ip_compat.h)
620
43bc16aa 621have_net_pfvar_h="no"
b5a82d63
FF
622AC_CHECK_HEADERS(net/pfvar.h,
623 [have_net_pfvar_h="yes"],
624 [have_net_pfvar_h="no"],
625[
626#if HAVE_SYS_IOCTL_H
627# include <sys/ioctl.h>
628#endif
629#if HAVE_SYS_SOCKET_H
630# include <sys/socket.h>
631#endif
632#if HAVE_NET_IF_H
633# include <net/if.h>
634#endif
635])
43bc16aa 636
51e70a99 637# For the multimeter plugin
3fc0feb6
FF
638have_termios_h="no"
639AC_CHECK_HEADERS(termios.h, [have_termios_h="yes"])
51e70a99 640
a3b73247 641# For the turbostat plugin
6b9773c7
VB
642have_asm_msrindex_h="no"
643AC_CHECK_HEADERS(asm/msr-index.h, [have_asm_msrindex_h="yes"])
644
c97711a9
VB
645if test "x$have_asm_msrindex_h" = "xyes"
646then
550ff5da 647 AC_CACHE_CHECK([whether asm/msr-index.h has MSR_PKG_C10_RESIDENCY],
dfe9bb8c
MF
648 [c_cv_have_usable_asm_msrindex_h],
649 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
650[[[
651#include<asm/msr-index.h>
652]]],
653[[[
550ff5da 654int y = MSR_PKG_C10_RESIDENCY;
dfe9bb8c
MF
655return(y);
656]]]
657 )],
658 [c_cv_have_usable_asm_msrindex_h="yes"],
659 [c_cv_have_usable_asm_msrindex_h="no"],
660 )
661 )
c97711a9
VB
662fi
663
6b9773c7
VB
664have_cpuid_h="no"
665AC_CHECK_HEADERS(cpuid.h, [have_cpuid_h="yes"])
666
a3b73247 667AC_CHECK_HEADERS(sys/capability.h)
15996f86
FF
668#
669# Checks for typedefs, structures, and compiler characteristics.
670#
86ca149a 671AC_C_CONST
45687863
VB
672AC_C_INLINE
673AC_TYPE_OFF_T
86ca149a
FF
674AC_TYPE_PID_T
675AC_TYPE_SIZE_T
45687863 676AC_TYPE_SSIZE_T
7df03651 677AC_TYPE_UID_T
45687863 678AC_TYPE_UINT32_T
86ca149a
FF
679AC_HEADER_TIME
680
15996f86
FF
681#
682# Checks for library functions.
683#
86ca149a 684AC_PROG_GCC_TRADITIONAL
2578c913 685AC_CHECK_FUNCS(gettimeofday select strdup strtol getaddrinfo getnameinfo strchr memcpy strstr strcmp strncmp strncpy strlen strncasecmp strcasecmp openlog closelog sysconf setenv if_indextoname setlocale)
15996f86 686
fa7db5e9
SH
687AC_FUNC_STRERROR_R
688
c4e077cc
FF
689SAVE_CFLAGS="$CFLAGS"
690# Emulate behavior of src/Makefile.am
691if test "x$GCC" = "xyes"
692then
693 CFLAGS="$CFLAGS -Wall -Werror"
694fi
695
0c06f2fa 696AC_CACHE_CHECK([for strtok_r],
5f5da97b 697 [c_cv_have_strtok_r_default],
0c06f2fa 698 AC_LINK_IFELSE(
ce8b96ae 699 [AC_LANG_PROGRAM(
e0552af6 700[[[
0c06f2fa
FF
701#include <stdlib.h>
702#include <stdio.h>
703#include <string.h>
e0552af6
FF
704]]],
705[[[
0c06f2fa
FF
706 char buffer[] = "foo,bar,baz";
707 char *token;
708 char *dummy;
709 char *saveptr;
710
711 dummy = buffer;
712 saveptr = NULL;
713 while ((token = strtok_r (dummy, ",", &saveptr)) != NULL)
714 {
ce8b96ae 715 dummy = NULL;
0c06f2fa
FF
716 printf ("token = %s;\n", token);
717 }
e0552af6
FF
718]]]
719 )],
5f5da97b
SH
720 [c_cv_have_strtok_r_default="yes"],
721 [c_cv_have_strtok_r_default="no"]
0c06f2fa
FF
722 )
723)
724
5f5da97b 725if test "x$c_cv_have_strtok_r_default" = "xno"
0c06f2fa 726then
0c06f2fa
FF
727 CFLAGS="$CFLAGS -D_REENTRANT=1"
728
729 AC_CACHE_CHECK([if strtok_r needs _REENTRANT],
5f5da97b 730 [c_cv_have_strtok_r_reentrant],
0c06f2fa 731 AC_LINK_IFELSE(
ce8b96ae 732 [AC_LANG_PROGRAM(
e0552af6 733[[[
0c06f2fa
FF
734#include <stdlib.h>
735#include <stdio.h>
736#include <string.h>
e0552af6
FF
737]]],
738[[[
0c06f2fa
FF
739 char buffer[] = "foo,bar,baz";
740 char *token;
741 char *dummy;
742 char *saveptr;
743
744 dummy = buffer;
745 saveptr = NULL;
746 while ((token = strtok_r (dummy, ",", &saveptr)) != NULL)
747 {
ce8b96ae 748 dummy = NULL;
0c06f2fa
FF
749 printf ("token = %s;\n", token);
750 }
e0552af6
FF
751]]]
752 )],
5f5da97b 753 [c_cv_have_strtok_r_reentrant="yes"],
0c06f2fa
FF
754 [AC_MSG_FAILURE([strtok_r isn't available. Please file a bugreport!])]
755 )
756 )
757fi
758
c4e077cc
FF
759CFLAGS="$SAVE_CFLAGS"
760if test "x$c_cv_have_strtok_r_reentrant" = "xyes"
761then
762 CFLAGS="$CFLAGS -D_REENTRANT=1"
763fi
764
b5c58909 765AC_CHECK_FUNCS(getpwnam_r getgrnam_r setgroups regcomp regerror regexec regfree)
d6bb65ee 766
d89f6dc3
FF
767socket_needs_socket="no"
768AC_CHECK_FUNCS(socket, [], AC_CHECK_LIB(socket, socket, [socket_needs_socket="yes"], AC_MSG_ERROR(cannot find socket)))
769AM_CONDITIONAL(BUILD_WITH_LIBSOCKET, test "x$socket_needs_socket" = "xyes")
770
1c2e2427
FF
771clock_gettime_needs_rt="no"
772clock_gettime_needs_posix4="no"
5c4d2189
FF
773have_clock_gettime="no"
774AC_CHECK_FUNCS(clock_gettime, [have_clock_gettime="yes"])
775if test "x$have_clock_gettime" = "xno"
776then
777 AC_CHECK_LIB(rt, clock_gettime, [clock_gettime_needs_rt="yes"
778 have_clock_gettime="yes"])
779fi
780if test "x$have_clock_gettime" = "xno"
781then
782 AC_CHECK_LIB(posix4, clock_gettime, [clock_gettime_needs_posix4="yes"
783 have_clock_gettime="yes"])
784fi
785if test "x$have_clock_gettime" = "xyes"
786then
787 AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [Define if the clock_gettime(2) function is available.])
788else
789 AC_MSG_WARN(cannot find clock_gettime)
790fi
1c2e2427 791
4ca5457f 792nanosleep_needs_rt="no"
e428176d
SH
793nanosleep_needs_posix4="no"
794AC_CHECK_FUNCS(nanosleep,
795 [],
796 AC_CHECK_LIB(rt, nanosleep,
797 [nanosleep_needs_rt="yes"],
798 AC_CHECK_LIB(posix4, nanosleep,
799 [nanosleep_needs_posix4="yes"],
800 AC_MSG_ERROR(cannot find nanosleep))))
1c2e2427
FF
801
802AM_CONDITIONAL(BUILD_WITH_LIBRT, test "x$clock_gettime_needs_rt" = "xyes" || test "x$nanosleep_needs_rt" = "xyes")
803AM_CONDITIONAL(BUILD_WITH_LIBPOSIX4, test "x$clock_gettime_needs_posix4" = "xyes" || test "x$nanosleep_needs_posix4" = "xyes")
4ca5457f 804
22188738 805AC_CHECK_FUNCS(sysctl, [have_sysctl="yes"], [have_sysctl="no"])
e1d497b7 806AC_CHECK_FUNCS(sysctlbyname, [have_sysctlbyname="yes"], [have_sysctlbyname="no"])
a905d397
FF
807AC_CHECK_FUNCS(host_statistics, [have_host_statistics="yes"], [have_host_statistics="no"])
808AC_CHECK_FUNCS(processor_info, [have_processor_info="yes"], [have_processor_info="no"])
809AC_CHECK_FUNCS(thread_info, [have_thread_info="yes"], [have_thread_info="no"])
810AC_CHECK_FUNCS(statfs, [have_statfs="yes"], [have_statfs="no"])
811AC_CHECK_FUNCS(statvfs, [have_statvfs="yes"], [have_statvfs="no"])
812AC_CHECK_FUNCS(getifaddrs, [have_getifaddrs="yes"], [have_getifaddrs="no"])
adee81fe 813AC_CHECK_FUNCS(getloadavg, [have_getloadavg="yes"], [have_getloadavg="no"])
a905d397
FF
814AC_CHECK_FUNCS(syslog, [have_syslog="yes"], [have_syslog="no"])
815AC_CHECK_FUNCS(getutent, [have_getutent="yes"], [have_getutent="no"])
816AC_CHECK_FUNCS(getutxent, [have_getutxent="yes"], [have_getutxent="no"])
adee81fe
FF
817
818# Check for strptime {{{
819if test "x$GCC" = "xyes"
820then
821 SAVE_CFLAGS="$CFLAGS"
822 CFLAGS="$CFLAGS -Wall -Wextra -Werror"
823fi
824
825AC_CHECK_FUNCS(strptime, [have_strptime="yes"], [have_strptime="no"])
826if test "x$have_strptime" = "xyes"
827then
828 AC_CACHE_CHECK([whether strptime is exported by default],
829 [c_cv_have_strptime_default],
e0552af6 830 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
ce8b96ae 831[[[
adee81fe 832#include <time.h>
ce8b96ae
FF
833]]],
834[[[
adee81fe
FF
835 struct tm stm;
836 (void) strptime ("2010-12-30%13:42:42", "%Y-%m-%dT%T", &stm);
e0552af6
FF
837]]]
838 )],
adee81fe
FF
839 [c_cv_have_strptime_default="yes"],
840 [c_cv_have_strptime_default="no"]))
841fi
842if test "x$have_strptime" = "xyes" && test "x$c_cv_have_strptime_default" = "xno"
843then
844 AC_CACHE_CHECK([whether strptime needs standards mode],
845 [c_cv_have_strptime_standards],
e0552af6 846 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
ce8b96ae 847[[[
adee81fe
FF
848#ifndef _ISOC99_SOURCE
849# define _ISOC99_SOURCE 1
850#endif
851#ifndef _POSIX_C_SOURCE
852# define _POSIX_C_SOURCE 200112L
853#endif
854#ifndef _XOPEN_SOURCE
855# define _XOPEN_SOURCE 500
856#endif
adee81fe 857#include <time.h>
ce8b96ae
FF
858]]],
859[[[
adee81fe
FF
860 struct tm stm;
861 (void) strptime ("2010-12-30%13:42:42", "%Y-%m-%dT%T", &stm);
e0552af6
FF
862]]]
863 )],
adee81fe
FF
864 [c_cv_have_strptime_standards="yes"],
865 [c_cv_have_strptime_standards="no"]))
866
867 if test "x$c_cv_have_strptime_standards" = "xyes"
868 then
869 AC_DEFINE([STRPTIME_NEEDS_STANDARDS], 1, [Set to true if strptime is only exported in X/Open mode (GNU libc).])
870 else
871 have_strptime="no"
872 fi
873fi
874
875if test "x$GCC" = "xyes"
876then
877 CFLAGS="$SAVE_CFLAGS"
878fi
adee81fe
FF
879# }}} Check for strptime
880
b10e5d81 881AC_CHECK_FUNCS(swapctl, [have_swapctl="yes"], [have_swapctl="no"])
34eb0428
AR
882if test "x$have_swapctl" = "xyes"; then
883 AC_CACHE_CHECK([whether swapctl takes two arguments],
884 [c_cv_have_swapctl_two_args],
ce8b96ae 885 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
e0552af6 886[[[
34eb0428
AR
887#if HAVE_SYS_SWAP_H && !defined(_LP64) && _FILE_OFFSET_BITS == 64
888# undef _FILE_OFFSET_BITS
889# undef _LARGEFILE64_SOURCE
890#endif
891#include <sys/stat.h>
744ebfc6 892#include <sys/param.h>
ef3e1650 893#include <sys/swap.h>
744ebfc6 894#include <unistd.h>
e0552af6
FF
895]]],
896[[[
ef3e1650 897int num = swapctl(0, NULL);
e0552af6 898]]]
ce8b96ae 899 )],
34eb0428
AR
900 [c_cv_have_swapctl_two_args="yes"],
901 [c_cv_have_swapctl_two_args="no"]
902 )
903 )
904 AC_CACHE_CHECK([whether swapctl takes three arguments],
905 [c_cv_have_swapctl_three_args],
906 AC_COMPILE_IFELSE(
ef3e1650 907 [AC_LANG_PROGRAM(
e0552af6 908[[[
34eb0428
AR
909#if HAVE_SYS_SWAP_H && !defined(_LP64) && _FILE_OFFSET_BITS == 64
910# undef _FILE_OFFSET_BITS
911# undef _LARGEFILE64_SOURCE
912#endif
913#include <sys/stat.h>
744ebfc6 914#include <sys/param.h>
ef3e1650 915#include <sys/swap.h>
744ebfc6 916#include <unistd.h>
e0552af6
FF
917]]],
918[[[
ef3e1650 919int num = swapctl(0, NULL, 0);
e0552af6 920]]]
ce8b96ae 921 )],
34eb0428
AR
922 [c_cv_have_swapctl_three_args="yes"],
923 [c_cv_have_swapctl_three_args="no"]
924 )
925 )
926fi
927# Check for different versions of `swapctl' here..
928if test "x$have_swapctl" = "xyes"; then
929 if test "x$c_cv_have_swapctl_two_args" = "xyes"; then
930 AC_DEFINE(HAVE_SWAPCTL_TWO_ARGS, 1,
931 [Define if the function swapctl exists and takes two arguments.])
932 fi
933 if test "x$c_cv_have_swapctl_three_args" = "xyes"; then
934 AC_DEFINE(HAVE_SWAPCTL_THREE_ARGS, 1,
935 [Define if the function swapctl exists and takes three arguments.])
936 fi
937fi
2d03e4e3 938
e91c40b8 939# Check for NAN
18fdfeca
FF
940AC_ARG_WITH(nan-emulation, [AS_HELP_STRING([--with-nan-emulation], [use emulated NAN. For crosscompiling only.])],
941[
942 if test "x$withval" = "xno"; then
943 nan_type="none"
944 else if test "x$withval" = "xyes"; then
945 nan_type="zero"
946 else
947 nan_type="$withval"
948 fi; fi
949],
950[nan_type="none"])
e91c40b8
FF
951if test "x$nan_type" = "xnone"; then
952 AC_CACHE_CHECK([whether NAN is defined by default],
5f5da97b 953 [c_cv_have_nan_default],
e0552af6
FF
954 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
955[[[
e91c40b8
FF
956#include <stdlib.h>
957#include <math.h>
6e0ffb3d 958static double foo = NAN;
e0552af6
FF
959]]],
960[[[
e91c40b8
FF
961 if (isnan (foo))
962 return 0;
963 else
964 return 1;
e0552af6
FF
965]]]
966 )],
5f5da97b
SH
967 [c_cv_have_nan_default="yes"],
968 [c_cv_have_nan_default="no"]
e91c40b8
FF
969 )
970 )
5f5da97b 971 if test "x$c_cv_have_nan_default" = "xyes"
e91c40b8 972 then
18fdfeca 973 nan_type="default"
e91c40b8
FF
974 fi
975fi
976if test "x$nan_type" = "xnone"; then
977 AC_CACHE_CHECK([whether NAN is defined by __USE_ISOC99],
5f5da97b 978 [c_cv_have_nan_isoc],
e0552af6
FF
979 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
980[[[
e91c40b8
FF
981#include <stdlib.h>
982#define __USE_ISOC99 1
983#include <math.h>
6e0ffb3d 984static double foo = NAN;
e0552af6
FF
985]]],
986[[[
e91c40b8
FF
987 if (isnan (foo))
988 return 0;
989 else
990 return 1;
e0552af6
FF
991]]]
992 )],
5f5da97b
SH
993 [c_cv_have_nan_isoc="yes"],
994 [c_cv_have_nan_isoc="no"]
e91c40b8
FF
995 )
996 )
5f5da97b 997 if test "x$c_cv_have_nan_isoc" = "xyes"
e91c40b8 998 then
18fdfeca 999 nan_type="isoc99"
e91c40b8
FF
1000 fi
1001fi
1002if test "x$nan_type" = "xnone"; then
11b1e65a
MS
1003 SAVE_LDFLAGS=$LDFLAGS
1004 LDFLAGS="$LDFLAGS -lm"
e91c40b8 1005 AC_CACHE_CHECK([whether NAN can be defined by 0/0],
5f5da97b 1006 [c_cv_have_nan_zero],
e0552af6
FF
1007 AC_RUN_IFELSE([AC_LANG_PROGRAM(
1008[[[
e91c40b8
FF
1009#include <stdlib.h>
1010#include <math.h>
dcc46cbc
FF
1011#ifdef NAN
1012# undef NAN
1013#endif
e91c40b8
FF
1014#define NAN (0.0 / 0.0)
1015#ifndef isnan
1016# define isnan(f) ((f) != (f))
1017#endif
6e0ffb3d 1018static double foo = NAN;
e0552af6
FF
1019]]],
1020[[[
e91c40b8
FF
1021 if (isnan (foo))
1022 return 0;
1023 else
1024 return 1;
e0552af6
FF
1025]]]
1026 )],
5f5da97b
SH
1027 [c_cv_have_nan_zero="yes"],
1028 [c_cv_have_nan_zero="no"]
e91c40b8
FF
1029 )
1030 )
11b1e65a 1031 LDFLAGS=$SAVE_LDFLAGS
5f5da97b 1032 if test "x$c_cv_have_nan_zero" = "xyes"
e91c40b8 1033 then
18fdfeca 1034 nan_type="zero"
e91c40b8
FF
1035 fi
1036fi
18fdfeca
FF
1037
1038if test "x$nan_type" = "xdefault"; then
1039 AC_DEFINE(NAN_STATIC_DEFAULT, 1,
1040 [Define if NAN is defined by default and can initialize static variables.])
1041else if test "x$nan_type" = "xisoc99"; then
1042 AC_DEFINE(NAN_STATIC_ISOC, 1,
1043 [Define if NAN is defined by __USE_ISOC99 and can initialize static variables.])
1044else if test "x$nan_type" = "xzero"; then
1045 AC_DEFINE(NAN_ZERO_ZERO, 1,
1046 [Define if NAN can be defined as (0.0 / 0.0)])
1047else
e91c40b8 1048 AC_MSG_ERROR([Didn't find out how to statically initialize variables to NAN. Sorry.])
18fdfeca 1049fi; fi; fi
e91c40b8 1050
b365f4e3
FF
1051AC_ARG_WITH(fp-layout, [AS_HELP_STRING([--with-fp-layout], [set the memory layout of doubles. For crosscompiling only.])],
1052[
1053 if test "x$withval" = "xnothing"; then
1054 fp_layout_type="nothing"
1055 else if test "x$withval" = "xendianflip"; then
1056 fp_layout_type="endianflip"
1057 else if test "x$withval" = "xintswap"; then
1058 fp_layout_type="intswap"
1059 else
1060 AC_MSG_ERROR([Invalid argument for --with-fp-layout. Valid arguments are: nothing, endianflip, intswap]);
1061fi; fi; fi
1062],
1063[fp_layout_type="unknown"])
1064
1065if test "x$fp_layout_type" = "xunknown"; then
1066 AC_CACHE_CHECK([if doubles are stored in x86 representation],
5f5da97b 1067 [c_cv_fp_layout_need_nothing],
e0552af6
FF
1068 AC_RUN_IFELSE([AC_LANG_PROGRAM(
1069[[[
b365f4e3
FF
1070#include <stdlib.h>
1071#include <stdio.h>
b365f4e3 1072#include <string.h>
dfc4819a
FF
1073#if HAVE_STDINT_H
1074# include <stdint.h>
1075#endif
aaa30a38
FF
1076#if HAVE_INTTYPES_H
1077# include <inttypes.h>
1078#endif
dfc4819a
FF
1079#if HAVE_STDBOOL_H
1080# include <stdbool.h>
1081#endif
e0552af6
FF
1082]]],
1083[[[
b365f4e3
FF
1084 uint64_t i0;
1085 uint64_t i1;
1086 uint8_t c[8];
1087 double d;
1088
630e3bba 1089 d = 8.642135e130;
b365f4e3
FF
1090 memcpy ((void *) &i0, (void *) &d, 8);
1091
1092 i1 = i0;
1093 memcpy ((void *) c, (void *) &i1, 8);
1094
1095 if ((c[0] == 0x2f) && (c[1] == 0x25)
1096 && (c[2] == 0xc0) && (c[3] == 0xc7)
1097 && (c[4] == 0x43) && (c[5] == 0x2b)
1098 && (c[6] == 0x1f) && (c[7] == 0x5b))
1099 return (0);
1100 else
1101 return (1);
e0552af6
FF
1102]]]
1103 )],
5f5da97b
SH
1104 [c_cv_fp_layout_need_nothing="yes"],
1105 [c_cv_fp_layout_need_nothing="no"]
b365f4e3
FF
1106 )
1107 )
5f5da97b 1108 if test "x$c_cv_fp_layout_need_nothing" = "xyes"; then
b365f4e3
FF
1109 fp_layout_type="nothing"
1110 fi
1111fi
1112if test "x$fp_layout_type" = "xunknown"; then
1113 AC_CACHE_CHECK([if endianflip converts to x86 representation],
5f5da97b 1114 [c_cv_fp_layout_need_endianflip],
e0552af6
FF
1115 AC_RUN_IFELSE([AC_LANG_PROGRAM(
1116[[[
b365f4e3
FF
1117#include <stdlib.h>
1118#include <stdio.h>
b365f4e3 1119#include <string.h>
dfc4819a
FF
1120#if HAVE_STDINT_H
1121# include <stdint.h>
1122#endif
aaa30a38
FF
1123#if HAVE_INTTYPES_H
1124# include <inttypes.h>
1125#endif
dfc4819a
FF
1126#if HAVE_STDBOOL_H
1127# include <stdbool.h>
1128#endif
b365f4e3
FF
1129#define endianflip(A) ((((uint64_t)(A) & 0xff00000000000000LL) >> 56) | \
1130 (((uint64_t)(A) & 0x00ff000000000000LL) >> 40) | \
1131 (((uint64_t)(A) & 0x0000ff0000000000LL) >> 24) | \
1132 (((uint64_t)(A) & 0x000000ff00000000LL) >> 8) | \
1133 (((uint64_t)(A) & 0x00000000ff000000LL) << 8) | \
1134 (((uint64_t)(A) & 0x0000000000ff0000LL) << 24) | \
1135 (((uint64_t)(A) & 0x000000000000ff00LL) << 40) | \
1136 (((uint64_t)(A) & 0x00000000000000ffLL) << 56))
e0552af6
FF
1137]]],
1138[[[
b365f4e3
FF
1139 uint64_t i0;
1140 uint64_t i1;
1141 uint8_t c[8];
1142 double d;
1143
630e3bba 1144 d = 8.642135e130;
b365f4e3
FF
1145 memcpy ((void *) &i0, (void *) &d, 8);
1146
1147 i1 = endianflip (i0);
1148 memcpy ((void *) c, (void *) &i1, 8);
1149
1150 if ((c[0] == 0x2f) && (c[1] == 0x25)
1151 && (c[2] == 0xc0) && (c[3] == 0xc7)
1152 && (c[4] == 0x43) && (c[5] == 0x2b)
1153 && (c[6] == 0x1f) && (c[7] == 0x5b))
1154 return (0);
1155 else
1156 return (1);
e0552af6
FF
1157]]]
1158 )],
5f5da97b
SH
1159 [c_cv_fp_layout_need_endianflip="yes"],
1160 [c_cv_fp_layout_need_endianflip="no"]
b365f4e3
FF
1161 )
1162 )
5f5da97b 1163 if test "x$c_cv_fp_layout_need_endianflip" = "xyes"; then
b365f4e3
FF
1164 fp_layout_type="endianflip"
1165 fi
1166fi
1167if test "x$fp_layout_type" = "xunknown"; then
1168 AC_CACHE_CHECK([if intswap converts to x86 representation],
5f5da97b 1169 [c_cv_fp_layout_need_intswap],
e0552af6
FF
1170 AC_RUN_IFELSE([AC_LANG_PROGRAM(
1171[[[
b365f4e3
FF
1172#include <stdlib.h>
1173#include <stdio.h>
b365f4e3 1174#include <string.h>
dfc4819a
FF
1175#if HAVE_STDINT_H
1176# include <stdint.h>
1177#endif
aaa30a38
FF
1178#if HAVE_INTTYPES_H
1179# include <inttypes.h>
1180#endif
dfc4819a
FF
1181#if HAVE_STDBOOL_H
1182# include <stdbool.h>
1183#endif
b365f4e3
FF
1184#define intswap(A) ((((uint64_t)(A) & 0xffffffff00000000LL) >> 32) | \
1185 (((uint64_t)(A) & 0x00000000ffffffffLL) << 32))
e0552af6
FF
1186]]],
1187[[[
b365f4e3
FF
1188 uint64_t i0;
1189 uint64_t i1;
1190 uint8_t c[8];
1191 double d;
1192
630e3bba 1193 d = 8.642135e130;
b365f4e3
FF
1194 memcpy ((void *) &i0, (void *) &d, 8);
1195
1196 i1 = intswap (i0);
1197 memcpy ((void *) c, (void *) &i1, 8);
1198
1199 if ((c[0] == 0x2f) && (c[1] == 0x25)
1200 && (c[2] == 0xc0) && (c[3] == 0xc7)
1201 && (c[4] == 0x43) && (c[5] == 0x2b)
1202 && (c[6] == 0x1f) && (c[7] == 0x5b))
1203 return (0);
1204 else
1205 return (1);
e0552af6
FF
1206]]]
1207 )],
5f5da97b
SH
1208 [c_cv_fp_layout_need_intswap="yes"],
1209 [c_cv_fp_layout_need_intswap="no"]
b365f4e3
FF
1210 )
1211 )
5f5da97b 1212 if test "x$c_cv_fp_layout_need_intswap" = "xyes"; then
b365f4e3
FF
1213 fp_layout_type="intswap"
1214 fi
1215fi
1216
1217if test "x$fp_layout_type" = "xnothing"; then
1218 AC_DEFINE(FP_LAYOUT_NEED_NOTHING, 1,
1219 [Define if doubles are stored in x86 representation.])
1220else if test "x$fp_layout_type" = "xendianflip"; then
1221 AC_DEFINE(FP_LAYOUT_NEED_ENDIANFLIP, 1,
1222 [Define if endianflip is needed to convert to x86 representation.])
1223else if test "x$fp_layout_type" = "xintswap"; then
1224 AC_DEFINE(FP_LAYOUT_NEED_INTSWAP, 1,
1225 [Define if intswap is needed to convert to x86 representation.])
1226else
1227 AC_MSG_ERROR([Didn't find out how doubles are stored in memory. Sorry.])
1228fi; fi; fi
2dc3f07b 1229
23a9e650
FF
1230# --with-useragent {{{
1231AC_ARG_WITH(useragent, [AS_HELP_STRING([--with-useragent@<:@=AGENT@:>@], [User agent to use on http requests])],
1232[
1233 if test "x$withval" != "xno" && test "x$withval" != "xyes"
1234 then
1235 AC_DEFINE_UNQUOTED(COLLECTD_USERAGENT, ["$withval"], [User agent for http requests])
1236 fi
1237])
1238
1239# }}}
1240
2dc3f07b
FF
1241have_getfsstat="no"
1242AC_CHECK_FUNCS(getfsstat, [have_getfsstat="yes"])
1243have_getvfsstat="no"
1244AC_CHECK_FUNCS(getvfsstat, [have_getvfsstat="yes"])
1245have_listmntent="no"
1246AC_CHECK_FUNCS(listmntent, [have_listmntent="yes"])
1247
1248have_getmntent="no"
1249AC_CHECK_FUNCS(getmntent, [have_getmntent="c"])
1250if test "x$have_getmntent" = "xno"; then
1251 AC_CHECK_LIB(sun, getmntent, [have_getmntent="sun"])
c9a5b034 1252fi
2dc3f07b
FF
1253if test "x$have_getmntent" = "xno"; then
1254 AC_CHECK_LIB(seq, getmntent, [have_getmntent="seq"])
c9a5b034 1255fi
2dc3f07b
FF
1256if test "x$have_getmntent" = "xno"; then
1257 AC_CHECK_LIB(gen, getmntent, [have_getmntent="gen"])
c9a5b034
FF
1258fi
1259
2dc3f07b 1260if test "x$have_getmntent" = "xc"; then
6e765a02 1261 AC_CACHE_CHECK([whether getmntent takes one argument],
5f5da97b 1262 [c_cv_have_one_getmntent],
6e765a02 1263 AC_COMPILE_IFELSE(
ef3e1650 1264 [AC_LANG_PROGRAM(
e0552af6 1265[[[
ef3e1650 1266#include "$srcdir/src/utils_mount.h"
e0552af6
FF
1267]]],
1268[[[
ef3e1650
FF
1269FILE *fh;
1270struct mntent *me;
1271fh = setmntent ("/etc/mtab", "r");
1272me = getmntent (fh);
39d06560 1273return(me->mnt_passno);
e0552af6 1274]]]
ce8b96ae 1275 )],
5f5da97b
SH
1276 [c_cv_have_one_getmntent="yes"],
1277 [c_cv_have_one_getmntent="no"]
6e765a02
FF
1278 )
1279 )
2dc3f07b 1280 AC_CACHE_CHECK([whether getmntent takes two arguments],
5f5da97b 1281 [c_cv_have_two_getmntent],
2dc3f07b 1282 AC_COMPILE_IFELSE(
ef3e1650 1283 [AC_LANG_PROGRAM(
e0552af6 1284[[[
ef3e1650 1285#include "$srcdir/src/utils_mount.h"
e0552af6
FF
1286]]],
1287[[[
2dc3f07b
FF
1288 FILE *fh;
1289 struct mnttab mt;
1290 int status;
1291 fh = fopen ("/etc/mnttab", "r");
1292 status = getmntent (fh, &mt);
39d06560 1293 return(status);
e0552af6 1294]]]
ce8b96ae 1295 )],
5f5da97b
SH
1296 [c_cv_have_two_getmntent="yes"],
1297 [c_cv_have_two_getmntent="no"]
6e765a02 1298 )
2dc3f07b
FF
1299 )
1300fi
1301
1302# Check for different versions of `getmntent' here..
1303
1304if test "x$have_getmntent" = "xc"; then
5f5da97b 1305 if test "x$c_cv_have_one_getmntent" = "xyes"; then
2dc3f07b
FF
1306 AC_DEFINE(HAVE_ONE_GETMNTENT, 1,
1307 [Define if the function getmntent exists and takes one argument.])
1308 fi
5f5da97b 1309 if test "x$c_cv_have_two_getmntent" = "xyes"; then
2dc3f07b
FF
1310 AC_DEFINE(HAVE_TWO_GETMNTENT, 1,
1311 [Define if the function getmntent exists and takes two arguments.])
6e765a02 1312 fi
6e765a02 1313fi
2dc3f07b
FF
1314if test "x$have_getmntent" = "xsun"; then
1315 AC_DEFINE(HAVE_SUN_GETMNTENT, 1,
1316 [Define if the function getmntent exists. It's the version from libsun.])
6e765a02 1317fi
2dc3f07b
FF
1318if test "x$have_getmntent" = "xseq"; then
1319 AC_DEFINE(HAVE_SEQ_GETMNTENT, 1,
1320 [Define if the function getmntent exists. It's the version from libseq.])
1321fi
1322if test "x$have_getmntent" = "xgen"; then
1323 AC_DEFINE(HAVE_GEN_GETMNTENT, 1,
1324 [Define if the function getmntent exists. It's the version from libgen.])
6e765a02
FF
1325fi
1326
35602ac1 1327# Check for htonll
1a822486
MLSR
1328AC_CACHE_CHECK([if have htonll defined],
1329 [c_cv_have_htonll],
1330 AC_LINK_IFELSE([AC_LANG_PROGRAM(
e0552af6 1331[[[
35602ac1
MS
1332#include <sys/types.h>
1333#include <netinet/in.h>
aaa30a38
FF
1334#if HAVE_INTTYPES_H
1335# include <inttypes.h>
35602ac1 1336#endif
e0552af6
FF
1337]]],
1338[[[
35602ac1 1339 return htonll(0);
e0552af6
FF
1340]]]
1341 )],
1a822486
MLSR
1342 [c_cv_have_htonll="yes"],
1343 [c_cv_have_htonll="no"]
103f05e0 1344 )
1a822486
MLSR
1345)
1346if test "x$c_cv_have_htonll" = "xyes"
1347then
1348 AC_DEFINE(HAVE_HTONLL, 1, [Define if the function htonll exists.])
1349fi
35602ac1 1350
a05e34a0 1351# Check for structures
906bea76 1352AC_CHECK_MEMBERS([struct if_data.ifi_ibytes, struct if_data.ifi_opackets, struct if_data.ifi_ierrors],
a05e34a0
FF
1353 [AC_DEFINE(HAVE_STRUCT_IF_DATA, 1, [Define if struct if_data exists and is usable.])],
1354 [],
cd377858
FF
1355 [
1356 #include <sys/types.h>
1357 #include <sys/socket.h>
1358 #include <net/if.h>
1359 ])
906bea76 1360AC_CHECK_MEMBERS([struct net_device_stats.rx_bytes, struct net_device_stats.tx_packets, struct net_device_stats.rx_errors],
a05e34a0
FF
1361 [AC_DEFINE(HAVE_STRUCT_NET_DEVICE_STATS, 1, [Define if struct net_device_stats exists and is usable.])],
1362 [],
1363 [
1364 #include <sys/types.h>
1365 #include <sys/socket.h>
1366 #include <linux/if.h>
1367 #include <linux/netdevice.h>
1368 ])
0bd83922
YM
1369AC_CHECK_MEMBERS([struct inet_diag_req.id, struct inet_diag_req.idiag_states],
1370 [AC_DEFINE(HAVE_STRUCT_LINUX_INET_DIAG_REQ, 1, [Define if struct inet_diag_req exists and is usable.])],
1371 [],
1372 [
1373 #include <linux/inet_diag.h>
1374 ])
1375
a05e34a0 1376
76489692
FF
1377AC_CHECK_MEMBERS([struct ip_mreqn.imr_ifindex], [],
1378 [],
1379 [
1380 #include <netinet/in.h>
1381 #include <net/if.h>
1382 ])
1383
2d3861c5
FF
1384AC_CHECK_MEMBERS([struct kinfo_proc.ki_pid, struct kinfo_proc.ki_rssize, struct kinfo_proc.ki_rusage],
1385 [
1386 AC_DEFINE(HAVE_STRUCT_KINFO_PROC_FREEBSD, 1,
1387 [Define if struct kinfo_proc exists in the FreeBSD variant.])
1388 have_struct_kinfo_proc_freebsd="yes"
1389 ],
1390 [
1391 have_struct_kinfo_proc_freebsd="no"
1392 ],
1393 [
1394#include <kvm.h>
1395#include <sys/param.h>
1396#include <sys/sysctl.h>
1397#include <sys/user.h>
1398 ])
1399
0e45add1 1400AC_CHECK_MEMBERS([struct kinfo_proc.p_pid, struct kinfo_proc.p_vm_rssize],
2d3861c5
FF
1401 [
1402 AC_DEFINE(HAVE_STRUCT_KINFO_PROC_OPENBSD, 1,
1403 [Define if struct kinfo_proc exists in the OpenBSD variant.])
1404 have_struct_kinfo_proc_openbsd="yes"
1405 ],
1406 [
1407 have_struct_kinfo_proc_openbsd="no"
1408 ],
1409 [
1410#include <sys/param.h>
1411#include <sys/sysctl.h>
1412#include <kvm.h>
1413 ])
1414
5b9d0a2b 1415AC_CHECK_MEMBERS([struct udphdr.uh_dport, struct udphdr.uh_sport], [], [],
7bec4afe 1416[#define _BSD_SOURCE
3bc1a46b 1417#define _DEFAULT_SOURCE
7bec4afe 1418#if HAVE_STDINT_H
5b9d0a2b
FF
1419# include <stdint.h>
1420#endif
1421#if HAVE_SYS_TYPES_H
1422# include <sys/types.h>
1423#endif
1424#if HAVE_NETINET_IN_SYSTM_H
1425# include <netinet/in_systm.h>
1426#endif
1427#if HAVE_NETINET_IN_H
1428# include <netinet/in.h>
1429#endif
1430#if HAVE_NETINET_IP_H
1431# include <netinet/ip.h>
1432#endif
1433#if HAVE_NETINET_UDP_H
1434# include <netinet/udp.h>
1435#endif
1436])
1437AC_CHECK_MEMBERS([struct udphdr.dest, struct udphdr.source], [], [],
7bec4afe 1438[#define _BSD_SOURCE
3bc1a46b 1439#define _DEFAULT_SOURCE
7bec4afe 1440#if HAVE_STDINT_H
5b9d0a2b
FF
1441# include <stdint.h>
1442#endif
1443#if HAVE_SYS_TYPES_H
1444# include <sys/types.h>
1445#endif
1446#if HAVE_NETINET_IN_SYSTM_H
1447# include <netinet/in_systm.h>
1448#endif
1449#if HAVE_NETINET_IN_H
1450# include <netinet/in.h>
1451#endif
1452#if HAVE_NETINET_IP_H
1453# include <netinet/ip.h>
1454#endif
1455#if HAVE_NETINET_UDP_H
1456# include <netinet/udp.h>
1457#endif
1458])
2aff261d 1459
e94efcbe
FF
1460AC_CHECK_MEMBERS([kstat_io_t.nwritten, kstat_io_t.writes, kstat_io_t.nwrites, kstat_io_t.wtime],
1461 [],
1462 [],
1463 [
1464#if HAVE_KSTAT_H
1465# include <kstat.h>
1466#endif
1467 ])
1468
4aed4a7a
FF
1469#
1470# Checks for libraries begin here
1471#
d896b012 1472
a58af051
FF
1473with_libresolv="yes"
1474AC_CHECK_LIB(resolv, res_search,
1475[
1476 AC_DEFINE(HAVE_LIBRESOLV, 1, [Define to 1 if you have the 'resolv' library (-lresolv).])
1477],
1478[with_libresolv="no"])
1479AM_CONDITIONAL(BUILD_WITH_LIBRESOLV, test "x$with_libresolv" = "xyes")
86ca149a 1480
30f3e7b8
RJ
1481dnl Check for HAL (hardware abstraction library)
1482with_libhal="yes"
1483AC_CHECK_LIB(hal,libhal_device_property_exists,
1484 [AC_DEFINE(HAVE_LIBHAL, 1, [Define to 1 if you have 'hal' library])],
1485 [with_libhal="no"])
1486if test "x$with_libhal" = "xyes"; then
30f3e7b8 1487 if test "x$PKG_CONFIG" != "x"; then
c2ca2a46
LT
1488 BUILD_WITH_LIBHAL_CFLAGS="`$PKG_CONFIG --cflags hal`"
1489 BUILD_WITH_LIBHAL_LIBS="`$PKG_CONFIG --libs hal`"
30f3e7b8
RJ
1490 AC_SUBST(BUILD_WITH_LIBHAL_CFLAGS)
1491 AC_SUBST(BUILD_WITH_LIBHAL_LIBS)
1492 fi
1493fi
125bdc00 1494
c27cdba8
NW
1495m4_divert_once([HELP_WITH], [
1496collectd additional packages:])
1497
11b1e65a
MS
1498if test "x$ac_system" = "xAIX"
1499then
1500 with_perfstat="yes"
1501 with_procinfo="yes"
1502else
1503 with_perfstat="no (AIX only)"
1504 with_procinfo="no (AIX only)"
1505fi
1506
1507if test "x$with_perfstat" = "xyes"
1508then
1509 AC_CHECK_LIB(perfstat, perfstat_reset, [with_perfstat="yes"], [with_perfstat="no (perfstat not found)"], [])
1510# AC_CHECK_HEADERS(sys/protosw.h libperfstat.h,, [with_perfstat="no (perfstat not found)"])
1511fi
1512if test "x$with_perfstat" = "xyes"
1513then
1514 AC_DEFINE(HAVE_PERFSTAT, 1, [Define to 1 if you have the 'perfstat' library (-lperfstat)])
74dbb25f
AR
1515 # struct members pertaining to donation have been added to libperfstat somewhere between AIX5.3ML5 and AIX5.3ML9
1516 AC_CHECK_MEMBER([perfstat_partition_type_t.b.donate_enabled], [], [], [[#include <libperfstat.h]])
1517 if test "x$av_cv_member_perfstat_partition_type_t_b_donate_enabled" = "xyes"
1518 then
1519 AC_DEFINE(PERFSTAT_SUPPORTS_DONATION, 1, [Define to 1 if your version of the 'perfstat' library supports donation])
1520 fi
11b1e65a
MS
1521fi
1522AM_CONDITIONAL(BUILD_WITH_PERFSTAT, test "x$with_perfstat" = "xyes")
1523
8dbb7bc4 1524# Processes plugin under AIX.
11b1e65a
MS
1525if test "x$with_procinfo" = "xyes"
1526then
1527 AC_CHECK_HEADERS(procinfo.h,, [with_procinfo="no (procinfo.h not found)"])
1528fi
1529if test "x$with_procinfo" = "xyes"
1530then
1531 AC_DEFINE(HAVE_PROCINFO_H, 1, [Define to 1 if you have the procinfo.h])
1532fi
11b1e65a 1533
c044208a
FF
1534if test "x$ac_system" = "xSolaris"
1535then
1536 with_kstat="yes"
1537 with_devinfo="yes"
1538else
1539 with_kstat="no (Solaris only)"
1540 with_devinfo="no (Solaris only)"
1541fi
1542
1543if test "x$with_kstat" = "xyes"
1544then
1545 AC_CHECK_LIB(kstat, kstat_open, [with_kstat="yes"], [with_kstat="no (libkstat not found)"], [])
1546fi
1547if test "x$with_kstat" = "xyes"
1548then
1549 AC_CHECK_LIB(devinfo, di_init, [with_devinfo="yes"], [with_devinfo="no (not found)"], [])
1550 AC_CHECK_HEADERS(kstat.h,, [with_kstat="no (kstat.h not found)"])
1551fi
1552if test "x$with_kstat" = "xyes"
1553then
1554 AC_DEFINE(HAVE_LIBKSTAT, 1,
1555 [Define to 1 if you have the 'kstat' library (-lkstat)])
1556fi
1557AM_CONDITIONAL(BUILD_WITH_LIBKSTAT, test "x$with_kstat" = "xyes")
1558AM_CONDITIONAL(BUILD_WITH_LIBDEVINFO, test "x$with_devinfo" = "xyes")
1559
1560with_libiokit="no"
30aaad03
RM
1561if test "x$ac_system" = "xDarwin"
1562then
c044208a 1563 with_libiokit="yes"
30aaad03 1564else
c044208a 1565 with_libiokit="no"
30aaad03 1566fi
c044208a
FF
1567AM_CONDITIONAL(BUILD_WITH_LIBIOKIT, test "x$with_libiokit" = "xyes")
1568
1569with_libkvm="no"
1570AC_CHECK_LIB(kvm, kvm_getprocs, [with_kvm_getprocs="yes"], [with_kvm_getprocs="no"])
1571if test "x$with_kvm_getprocs" = "xyes"
1572then
1573 AC_DEFINE(HAVE_LIBKVM_GETPROCS, 1,
1574 [Define to 1 if you have the 'kvm' library with the 'kvm_getprocs' symbol (-lkvm)])
1575 with_libkvm="yes"
1576fi
1577AM_CONDITIONAL(BUILD_WITH_LIBKVM_GETPROCS, test "x$with_kvm_getprocs" = "xyes")
1578
1579AC_CHECK_LIB(kvm, kvm_getswapinfo, [with_kvm_getswapinfo="yes"], [with_kvm_getswapinfo="no"])
1580if test "x$with_kvm_getswapinfo" = "xyes"
1581then
1582 AC_DEFINE(HAVE_LIBKVM_GETSWAPINFO, 1,
1583 [Define to 1 if you have the 'kvm' library with the 'kvm_getswapinfo' symbol (-lkvm)])
1584 with_libkvm="yes"
1585fi
1586AM_CONDITIONAL(BUILD_WITH_LIBKVM_GETSWAPINFO, test "x$with_kvm_getswapinfo" = "xyes")
1587
1588AC_CHECK_LIB(kvm, kvm_nlist, [with_kvm_nlist="yes"], [with_kvm_nlist="no"])
1589if test "x$with_kvm_nlist" = "xyes"
1590then
cb2155af 1591 AC_CHECK_HEADERS(bsd/nlist.h nlist.h)
c044208a
FF
1592 AC_DEFINE(HAVE_LIBKVM_NLIST, 1,
1593 [Define to 1 if you have the 'kvm' library with the 'kvm_nlist' symbol (-lkvm)])
1594 with_libkvm="yes"
1595fi
1596AM_CONDITIONAL(BUILD_WITH_LIBKVM_NLIST, test "x$with_kvm_nlist" = "xyes")
1597
97fe2302
FF
1598AC_CHECK_LIB(kvm, kvm_openfiles, [with_kvm_openfiles="yes"], [with_kvm_openfiles="no"])
1599if test "x$with_kvm_openfiles" = "xyes"
1600then
1601 AC_DEFINE(HAVE_LIBKVM_NLIST, 1,
1602 [Define to 1 if you have the 'kvm' library with the 'kvm_openfiles' symbol (-lkvm)])
1603 with_libkvm="yes"
1604fi
1605AM_CONDITIONAL(BUILD_WITH_LIBKVM_OPENFILES, test "x$with_kvm_openfiles" = "xyes")
1606
d5cd30db
AD
1607# --with-libaquaero5 {{{
1608AC_ARG_WITH(libaquaero5, [AS_HELP_STRING([--with-libaquaero5@<:@=PREFIX@:>@], [Path to aquatools-ng source code.])],
1609[
1610 if test "x$withval" = "xyes"
1611 then
1612 with_libaquaero5="yes"
1613 else if test "x$withval" = "xno"
1614 then
1615 with_libaquaero5="no"
1616 else
1617 with_libaquaero5="yes"
1618 LIBAQUAERO5_CFLAGS="$LIBAQUAERO5_CFLAGS -I$withval/src"
a88e2163 1619 LIBAQUAERO5_LDFLAGS="$LIBAQUAERO5_LDFLAGS -L$withval/obj"
d5cd30db
AD
1620 fi; fi
1621],
1622[with_libaquaero5="yes"])
1623
1624SAVE_CPPFLAGS="$CPPFLAGS"
1625SAVE_LDFLAGS="$LDFLAGS"
1626
1627CPPFLAGS="$CPPFLAGS $LIBAQUAERO5_CFLAGS"
1628LDFLAGS="$LDFLAGS $LIBAQUAERO5_LDFLAGS"
1629
1630if test "x$with_libaquaero5" = "xyes"
1631then
1632 if test "x$LIBAQUAERO5_CFLAGS" != "x"
1633 then
1634 AC_MSG_NOTICE([libaquaero5 CPPFLAGS: $LIBAQUAERO5_CFLAGS])
1635 fi
1636 AC_CHECK_HEADERS(libaquaero5.h,
1637 [with_libaquaero5="yes"],
1638 [with_libaquaero5="no (libaquaero5.h not found)"])
1639fi
1640if test "x$with_libaquaero5" = "xyes"
1641then
1642 if test "x$LIBAQUAERO5_LDFLAGS" != "x"
1643 then
1644 AC_MSG_NOTICE([libaquaero5 LDFLAGS: $LIBAQUAERO5_LDFLAGS])
1645 fi
0a323ec3 1646 AC_CHECK_LIB(aquaero5, libaquaero5_poll,
d5cd30db
AD
1647 [with_libaquaero5="yes"],
1648 [with_libaquaero5="no (symbol 'libaquaero5_poll' not found)"])
1649fi
1650
1651CPPFLAGS="$SAVE_CPPFLAGS"
1652LDFLAGS="$SAVE_LDFLAGS"
1653
1654if test "x$with_libaquaero5" = "xyes"
1655then
1656 BUILD_WITH_LIBAQUAERO5_CFLAGS="$LIBAQUAERO5_CFLAGS"
1657 BUILD_WITH_LIBAQUAERO5_LDFLAGS="$LIBAQUAERO5_LDFLAGS"
1658 AC_SUBST(BUILD_WITH_LIBAQUAERO5_CFLAGS)
1659 AC_SUBST(BUILD_WITH_LIBAQUAERO5_LDFLAGS)
1660fi
1661AM_CONDITIONAL(BUILD_WITH_LIBAQUAERO5, test "x$with_libaquaero5" = "xyes")
1662# }}}
1663
36e8719c
AD
1664# --with-libhiredis {{{
1665AC_ARG_WITH(libhiredis, [AS_HELP_STRING([--with-libhiredis@<:@=PREFIX@:>@],
1666 [Path to libhiredis.])],
b591eca2
FF
1667[
1668 if test "x$withval" = "xyes"
1669 then
36e8719c 1670 with_libhiredis="yes"
b591eca2
FF
1671 else if test "x$withval" = "xno"
1672 then
36e8719c 1673 with_libhiredis="no"
b591eca2 1674 else
36e8719c
AD
1675 with_libhiredis="yes"
1676 LIBHIREDIS_CPPFLAGS="$LIBHIREDIS_CPPFLAGS -I$withval/include"
1677 LIBHIREDIS_LDFLAGS="$LIBHIREDIS_LDFLAGS -L$withval/lib"
b591eca2
FF
1678 fi; fi
1679],
36e8719c 1680[with_libhiredis="yes"])
b591eca2
FF
1681
1682SAVE_CPPFLAGS="$CPPFLAGS"
1683SAVE_LDFLAGS="$LDFLAGS"
1684
36e8719c
AD
1685CPPFLAGS="$CPPFLAGS $LIBHIREDIS_CPPFLAGS"
1686LDFLAGS="$LDFLAGS $LIBHIREDIS_LDFLAGS"
b591eca2 1687
36e8719c 1688if test "x$with_libhiredis" = "xyes"
b591eca2 1689then
36e8719c 1690 if test "x$LIBHIREDIS_CPPFLAGS" != "x"
b591eca2 1691 then
36e8719c 1692 AC_MSG_NOTICE([libhiredis CPPFLAGS: $LIBHIREDIS_CPPFLAGS])
b591eca2 1693 fi
36e8719c
AD
1694 AC_CHECK_HEADERS(hiredis/hiredis.h,
1695 [with_libhiredis="yes"],
1696 [with_libhiredis="no (hiredis.h not found)"])
b591eca2 1697fi
36e8719c 1698if test "x$with_libhiredis" = "xyes"
b591eca2 1699then
36e8719c 1700 if test "x$LIBHIREDIS_LDFLAGS" != "x"
b591eca2 1701 then
36e8719c 1702 AC_MSG_NOTICE([libhiredis LDFLAGS: $LIBHIREDIS_LDFLAGS])
b591eca2 1703 fi
36e8719c
AD
1704 AC_CHECK_LIB(hiredis, redisCommand,
1705 [with_libhiredis="yes"],
1706 [with_libhiredis="no (symbol 'redisCommand' not found)"])
b591eca2
FF
1707
1708fi
1709
1710CPPFLAGS="$SAVE_CPPFLAGS"
1711LDFLAGS="$SAVE_LDFLAGS"
1712
36e8719c 1713if test "x$with_libhiredis" = "xyes"
b591eca2 1714then
36e8719c
AD
1715 BUILD_WITH_LIBHIREDIS_CPPFLAGS="$LIBHIREDIS_CPPFLAGS"
1716 BUILD_WITH_LIBHIREDIS_LDFLAGS="$LIBHIREDIS_LDFLAGS"
1717 AC_SUBST(BUILD_WITH_LIBHIREDIS_CPPFLAGS)
1718 AC_SUBST(BUILD_WITH_LIBHIREDIS_LDFLAGS)
b591eca2 1719fi
36e8719c 1720AM_CONDITIONAL(BUILD_WITH_LIBHIREDIS, test "x$with_libhiredis" = "xyes")
b591eca2
FF
1721# }}}
1722
8757c918 1723# --with-libcurl {{{
1842a7a7 1724with_curl_config="curl-config"
8f6c03d5 1725with_curl_cflags=""
1842a7a7
FF
1726with_curl_libs=""
1727AC_ARG_WITH(libcurl, [AS_HELP_STRING([--with-libcurl@<:@=PREFIX@:>@], [Path to libcurl.])],
1728[
1842a7a7
FF
1729 if test "x$withval" = "xno"
1730 then
1731 with_libcurl="no"
8f6c03d5
FF
1732 else if test "x$withval" = "xyes"
1733 then
1842a7a7 1734 with_libcurl="yes"
8f6c03d5 1735 else
a3cd4630 1736 if test -f "$withval" && test -x "$withval"
8f6c03d5
FF
1737 then
1738 with_curl_config="$withval"
c39428ae 1739 with_libcurl="yes"
8f6c03d5
FF
1740 else if test -x "$withval/bin/curl-config"
1741 then
1742 with_curl_config="$withval/bin/curl-config"
c39428ae 1743 with_libcurl="yes"
8f6c03d5 1744 fi; fi
a3cd4630 1745 with_libcurl="yes"
8f6c03d5 1746 fi; fi
1842a7a7
FF
1747],
1748[
1749 with_libcurl="yes"
1750])
1751if test "x$with_libcurl" = "xyes"
1752then
8f6c03d5 1753 with_curl_cflags=`$with_curl_config --cflags 2>/dev/null`
1842a7a7
FF
1754 curl_config_status=$?
1755
1756 if test $curl_config_status -ne 0
1757 then
48bc4be8 1758 with_libcurl="no ($with_curl_config failed)"
1842a7a7 1759 else
06c09fee
FF
1760 SAVE_CPPFLAGS="$CPPFLAGS"
1761 CPPFLAGS="$CPPFLAGS $with_curl_cflags"
8f6c03d5
FF
1762
1763 AC_CHECK_HEADERS(curl/curl.h, [], [with_libcurl="no (curl/curl.h not found)"], [])
1764
06c09fee 1765 CPPFLAGS="$SAVE_CPPFLAGS"
1842a7a7
FF
1766 fi
1767fi
8f6c03d5 1768if test "x$with_libcurl" = "xyes"
1842a7a7 1769then
8f6c03d5 1770 with_curl_libs=`$with_curl_config --libs 2>/dev/null`
1842a7a7
FF
1771 curl_config_status=$?
1772
1773 if test $curl_config_status -ne 0
1774 then
48bc4be8 1775 with_libcurl="no ($with_curl_config failed)"
1842a7a7 1776 else
8f6c03d5 1777 AC_CHECK_LIB(curl, curl_easy_init,
48bc4be8 1778 [with_libcurl="yes"],
8f6c03d5
FF
1779 [with_libcurl="no (symbol 'curl_easy_init' not found)"],
1780 [$with_curl_libs])
0af75dc1
MF
1781 AC_CHECK_DECL(CURLOPT_USERNAME,
1782 [have_curlopt_username="yes"],
1783 [have_curlopt_username="no"],
1784 [[#include <curl/curl.h>]])
8a2c605b
MF
1785 AC_CHECK_DECL(CURLOPT_TIMEOUT_MS,
1786 [have_curlopt_timeout="yes"],
1787 [have_curlopt_timeout="no"],
1788 [[#include <curl/curl.h>]])
1842a7a7
FF
1789 fi
1790fi
1842a7a7
FF
1791if test "x$with_libcurl" = "xyes"
1792then
8f6c03d5
FF
1793 BUILD_WITH_LIBCURL_CFLAGS="$with_curl_cflags"
1794 BUILD_WITH_LIBCURL_LIBS="$with_curl_libs"
1795 AC_SUBST(BUILD_WITH_LIBCURL_CFLAGS)
1796 AC_SUBST(BUILD_WITH_LIBCURL_LIBS)
0af75dc1
MF
1797
1798 if test "x$have_curlopt_username" = "xyes"
1799 then
1800 AC_DEFINE(HAVE_CURLOPT_USERNAME, 1, [Define if libcurl supports CURLOPT_USERNAME option.])
1801 fi
8a2c605b
MF
1802
1803 if test "x$have_curlopt_timeout" = "xyes"
1804 then
1805 AC_DEFINE(HAVE_CURLOPT_TIMEOUT_MS, 1, [Define if libcurl supports CURLOPT_TIMEOUT_MS option.])
1806 fi
1842a7a7 1807fi
1842a7a7 1808AM_CONDITIONAL(BUILD_WITH_LIBCURL, test "x$with_libcurl" = "xyes")
8757c918 1809# }}}
1842a7a7 1810
3f847b15
FF
1811# --with-libdbi {{{
1812with_libdbi_cppflags=""
1813with_libdbi_ldflags=""
1814AC_ARG_WITH(libdbi, [AS_HELP_STRING([--with-libdbi@<:@=PREFIX@:>@], [Path to libdbi.])],
1815[
1816 if test "x$withval" != "xno" && test "x$withval" != "xyes"
1817 then
1818 with_libdbi_cppflags="-I$withval/include"
1819 with_libdbi_ldflags="-L$withval/lib"
1820 with_libdbi="yes"
1821 else
1822 with_libdbi="$withval"
1823 fi
1824],
1825[
1826 with_libdbi="yes"
1827])
1828if test "x$with_libdbi" = "xyes"
1829then
1830 SAVE_CPPFLAGS="$CPPFLAGS"
1831 CPPFLAGS="$CPPFLAGS $with_libdbi_cppflags"
1832
1833 AC_CHECK_HEADERS(dbi/dbi.h, [with_libdbi="yes"], [with_libdbi="no (dbi/dbi.h not found)"])
1834
1835 CPPFLAGS="$SAVE_CPPFLAGS"
1836fi
1837if test "x$with_libdbi" = "xyes"
1838then
1839 SAVE_CPPFLAGS="$CPPFLAGS"
1840 SAVE_LDFLAGS="$LDFLAGS"
1841 CPPFLAGS="$CPPFLAGS $with_libdbi_cppflags"
1842 LDFLAGS="$LDFLAGS $with_libdbi_ldflags"
1843
1844 AC_CHECK_LIB(dbi, dbi_initialize, [with_libdbi="yes"], [with_libdbi="no (Symbol 'dbi_initialize' not found)"])
1845
1846 CPPFLAGS="$SAVE_CPPFLAGS"
1847 LDFLAGS="$SAVE_LDFLAGS"
1848fi
1849if test "x$with_libdbi" = "xyes"
1850then
1851 BUILD_WITH_LIBDBI_CPPFLAGS="$with_libdbi_cppflags"
1852 BUILD_WITH_LIBDBI_LDFLAGS="$with_libdbi_ldflags"
1853 BUILD_WITH_LIBDBI_LIBS="-ldbi"
1854 AC_SUBST(BUILD_WITH_LIBDBI_CPPFLAGS)
1855 AC_SUBST(BUILD_WITH_LIBDBI_LDFLAGS)
1856 AC_SUBST(BUILD_WITH_LIBDBI_LIBS)
1857fi
1858AM_CONDITIONAL(BUILD_WITH_LIBDBI, test "x$with_libdbi" = "xyes")
1859# }}}
1860
975e7fd6
FF
1861# --with-libesmtp {{{
1862AC_ARG_WITH(libesmtp, [AS_HELP_STRING([--with-libesmtp@<:@=PREFIX@:>@], [Path to libesmtp.])],
86ca149a 1863[
975e7fd6 1864 if test "x$withval" != "xno" && test "x$withval" != "xyes"
86ca149a 1865 then
975e7fd6
FF
1866 LDFLAGS="$LDFLAGS -L$withval/lib"
1867 CPPFLAGS="$CPPFLAGS -I$withval/include -D_THREAD_SAFE"
1868 with_libesmtp="yes"
fb713675 1869 else
975e7fd6 1870 with_libesmtp="$withval"
86ca149a
FF
1871 fi
1872],
1873[
975e7fd6 1874 with_libesmtp="yes"
86ca149a 1875])
975e7fd6 1876if test "x$with_libesmtp" = "xyes"
0aa63f0c 1877then
975e7fd6
FF
1878 AC_CHECK_LIB(esmtp, smtp_create_session,
1879 [
1880 AC_DEFINE(HAVE_LIBESMTP, 1, [Define to 1 if you have the esmtp library (-lesmtp).])
1881 ], [with_libesmtp="no (libesmtp not found)"])
0aa63f0c 1882fi
975e7fd6 1883if test "x$with_libesmtp" = "xyes"
176d5f79 1884then
975e7fd6
FF
1885 AC_CHECK_HEADERS(libesmtp.h,
1886 [
1887 AC_DEFINE(HAVE_LIBESMTP_H, 1, [Define to 1 if you have the <libesmtp.h> header file.])
1888 ], [with_libesmtp="no (libesmtp.h not found)"])
176d5f79 1889fi
975e7fd6 1890if test "x$with_libesmtp" = "xyes"
4aed4a7a 1891then
975e7fd6
FF
1892 collect_libesmtp=1
1893else
1894 collect_libesmtp=0
4aed4a7a 1895fi
975e7fd6
FF
1896AC_DEFINE_UNQUOTED(COLLECT_LIBESMTP, [$collect_libesmtp],
1897 [Wether or not to use the esmtp library])
1898AM_CONDITIONAL(BUILD_WITH_LIBESMTP, test "x$with_libesmtp" = "xyes")
8757c918 1899# }}}
28c5e282 1900
2f0bd3ba
FF
1901# --with-libganglia {{{
1902AC_ARG_WITH(libganglia, [AS_HELP_STRING([--with-libganglia@<:@=PREFIX@:>@], [Path to libganglia.])],
1903[
1904 if test -f "$withval" && test -x "$withval"
1905 then
1906 with_libganglia_config="$withval"
1907 with_libganglia="yes"
1908 else if test -f "$withval/bin/ganglia-config" && test -x "$withval/bin/ganglia-config"
1909 then
1910 with_libganglia_config="$withval/bin/ganglia-config"
1911 with_libganglia="yes"
1912 else if test -d "$withval"
1913 then
1914 GANGLIA_CPPFLAGS="-I$withval/include"
1915 GANGLIA_LDFLAGS="-L$withval/lib"
1916 with_libganglia="yes"
1917 else
1918 with_libganglia_config="ganglia-config"
1919 with_libganglia="$withval"
1920 fi; fi; fi
1921],
1922[
1923 with_libganglia_config="ganglia-config"
1924 with_libganglia="yes"
1925])
1926
1927if test "x$with_libganglia" = "xyes" && test "x$with_libganglia_config" != "x"
1928then
1929 if test "x$GANGLIA_CPPFLAGS" = "x"
1930 then
1931 GANGLIA_CPPFLAGS=`"$with_libganglia_config" --cflags 2>/dev/null`
1932 fi
1933
1934 if test "x$GANGLIA_LDFLAGS" = "x"
1935 then
1936 GANGLIA_LDFLAGS=`"$with_libganglia_config" --ldflags 2>/dev/null`
1937 fi
1938
1939 if test "x$GANGLIA_LIBS" = "x"
1940 then
1941 GANGLIA_LIBS=`"$with_libganglia_config" --libs 2>/dev/null`
1942 fi
1943fi
1944
1945SAVE_CPPFLAGS="$CPPFLAGS"
1946SAVE_LDFLAGS="$LDFLAGS"
1947CPPFLAGS="$CPPFLAGS $GANGLIA_CPPFLAGS"
1948LDFLAGS="$LDFLAGS $GANGLIA_LDFLAGS"
1949
1950if test "x$with_libganglia" = "xyes"
1951then
1952 AC_CHECK_HEADERS(gm_protocol.h,
1953 [
1954 AC_DEFINE(HAVE_GM_PROTOCOL_H, 1,
1955 [Define to 1 if you have the <gm_protocol.h> header file.])
1956 ], [with_libganglia="no (gm_protocol.h not found)"])
1957fi
1958
1959if test "x$with_libganglia" = "xyes"
1960then
1961 AC_CHECK_LIB(ganglia, xdr_Ganglia_value_msg,
1962 [
1963 AC_DEFINE(HAVE_LIBGANGLIA, 1,
1964 [Define to 1 if you have the ganglia library (-lganglia).])
1965 ], [with_libganglia="no (symbol xdr_Ganglia_value_msg not found)"])
1966fi
1967
1968CPPFLAGS="$SAVE_CPPFLAGS"
1969LDFLAGS="$SAVE_LDFLAGS"
1970
1971AC_SUBST(GANGLIA_CPPFLAGS)
1972AC_SUBST(GANGLIA_LDFLAGS)
1973AC_SUBST(GANGLIA_LIBS)
1974AM_CONDITIONAL(BUILD_WITH_LIBGANGLIA, test "x$with_libganglia" = "xyes")
1975# }}}
1976
6c4006c2
FF
1977# --with-libgcrypt {{{
1978GCRYPT_CPPFLAGS="$GCRYPT_CPPFLAGS"
1979GCRYPT_LDFLAGS="$GCRYPT_LDFLAGS"
1980GCRYPT_LIBS="$GCRYPT_LIBS"
1981AC_ARG_WITH(libgcrypt, [AS_HELP_STRING([--with-libgcrypt@<:@=PREFIX@:>@], [Path to libgcrypt.])],
1982[
1983 if test -f "$withval" && test -x "$withval"
1984 then
1985 with_libgcrypt_config="$withval"
1986 with_libgcrypt="yes"
1987 else if test -f "$withval/bin/gcrypt-config" && test -x "$withval/bin/gcrypt-config"
1988 then
1989 with_libgcrypt_config="$withval/bin/gcrypt-config"
1990 with_libgcrypt="yes"
1991 else if test -d "$withval"
1992 then
1993 GCRYPT_CPPFLAGS="$GCRYPT_CPPFLAGS -I$withval/include"
1994 GCRYPT_LDFLAGS="$GCRYPT_LDFLAGS -L$withval/lib"
1995 with_libgcrypt="yes"
1996 else
1997 with_libgcrypt_config="gcrypt-config"
1998 with_libgcrypt="$withval"
1999 fi; fi; fi
2000],
2001[
2002 with_libgcrypt_config="libgcrypt-config"
2003 with_libgcrypt="yes"
2004])
2005
2006if test "x$with_libgcrypt" = "xyes" && test "x$with_libgcrypt_config" != "x"
2007then
2008 if test "x$GCRYPT_CPPFLAGS" = "x"
2009 then
2010 GCRYPT_CPPFLAGS=`"$with_libgcrypt_config" --cflags 2>/dev/null`
2011 fi
2012
6c4006c2
FF
2013 if test "x$GCRYPT_LIBS" = "x"
2014 then
2015 GCRYPT_LIBS=`"$with_libgcrypt_config" --libs 2>/dev/null`
2016 fi
2017fi
2018
2019SAVE_CPPFLAGS="$CPPFLAGS"
2020SAVE_LDFLAGS="$LDFLAGS"
2021CPPFLAGS="$CPPFLAGS $GCRYPT_CPPFLAGS"
2022LDFLAGS="$LDFLAGS $GCRYPT_LDFLAGS"
2023
2024if test "x$with_libgcrypt" = "xyes"
2025then
2026 if test "x$GCRYPT_CPPFLAGS" != "x"
2027 then
2028 AC_MSG_NOTICE([gcrypt CPPFLAGS: $GCRYPT_CPPFLAGS])
2029 fi
2030 AC_CHECK_HEADERS(gcrypt.h,
2031 [with_libgcrypt="yes"],
2032 [with_libgcrypt="no (gcrypt.h not found)"])
2033fi
2034
2035if test "x$with_libgcrypt" = "xyes"
2036then
6c4006c2
FF
2037 AC_CHECK_LIB(gcrypt, gcry_md_hash_buffer,
2038 [with_libgcrypt="yes"],
2039 [with_libgcrypt="no (symbol gcry_md_hash_buffer not found)"])
5f3f72cb
DM
2040
2041 if test "$with_libgcrypt" != "no"; then
3acf4aaf 2042 m4_ifdef([AM_PATH_LIBGCRYPT],[AM_PATH_LIBGCRYPT(1:1.2.0,,with_libgcrypt="no (version 1.2.0+ required)")])
b8ae524a 2043 GCRYPT_CPPFLAGS="$LIBGCRYPT_CPPFLAGS $LIBGCRYPT_CFLAGS"
597ada32 2044 GCRYPT_LIBS="$LIBGCRYPT_LIBS"
5f3f72cb 2045 fi
6c4006c2
FF
2046fi
2047
2048CPPFLAGS="$SAVE_CPPFLAGS"
2049LDFLAGS="$SAVE_LDFLAGS"
2050
bcd6151b
FF
2051if test "x$with_libgcrypt" = "xyes"
2052then
2053 AC_DEFINE(HAVE_LIBGCRYPT, 1, [Define to 1 if you have the gcrypt library (-lgcrypt).])
2054fi
2055
6c4006c2
FF
2056AC_SUBST(GCRYPT_CPPFLAGS)
2057AC_SUBST(GCRYPT_LDFLAGS)
2058AC_SUBST(GCRYPT_LIBS)
2059AM_CONDITIONAL(BUILD_WITH_LIBGCRYPT, test "x$with_libgcrypt" = "xyes")
2060# }}}
2061
975e7fd6 2062# --with-libiptc {{{
975e7fd6 2063AC_ARG_WITH(libiptc, [AS_HELP_STRING([--with-libiptc@<:@=PREFIX@:>@], [Path to libiptc.])],
86ca149a 2064[
452185d6 2065 if test "x$withval" = "xyes"
86ca149a 2066 then
d1f72747
FF
2067 with_libiptc="pkgconfig"
2068 else if test "x$withval" = "xno"
2069 then
2070 with_libiptc="no"
14ffdba9 2071 else
d1f72747
FF
2072 with_libiptc="yes"
2073 with_libiptc_cflags="-I$withval/include"
2074 with_libiptc_libs="-L$withval/lib"
452185d6 2075 fi; fi
86ca149a
FF
2076],
2077[
86ca149a
FF
2078 if test "x$ac_system" = "xLinux"
2079 then
d1f72747 2080 with_libiptc="pkgconfig"
86ca149a 2081 else
975e7fd6 2082 with_libiptc="no (Linux only)"
86ca149a
FF
2083 fi
2084])
d1f72747
FF
2085
2086if test "x$with_libiptc" = "xpkgconfig" && test "x$PKG_CONFIG" = "x"
86ca149a 2087then
d1f72747 2088 with_libiptc="no (Don't have pkg-config)"
3c12e8a6 2089fi
d1f72747
FF
2090
2091if test "x$with_libiptc" = "xpkgconfig"
3c12e8a6 2092then
d1f72747
FF
2093 $PKG_CONFIG --exists 'libiptc' 2>/dev/null
2094 if test $? -ne 0
2095 then
2096 with_libiptc="no (pkg-config doesn't know libiptc)"
2097 fi
2098fi
2099if test "x$with_libiptc" = "xpkgconfig"
3c12e8a6 2100then
d1f72747
FF
2101 with_libiptc_cflags="`$PKG_CONFIG --cflags 'libiptc'`"
2102 if test $? -ne 0
2103 then
2104 with_libiptc="no ($PKG_CONFIG failed)"
2105 fi
2106 with_libiptc_libs="`$PKG_CONFIG --libs 'libiptc'`"
2107 if test $? -ne 0
2108 then
2109 with_libiptc="no ($PKG_CONFIG failed)"
2110 fi
2111fi
2112
2113SAVE_CPPFLAGS="$CPPFLAGS"
2114CPPFLAGS="$CPPFLAGS $with_libiptc_cflags"
2115
2116# check whether the header file for libiptc is available.
2117if test "x$with_libiptc" = "xpkgconfig"
2118then
2119 AC_CHECK_HEADERS(libiptc/libiptc.h libiptc/libip6tc.h, ,
2120 [with_libiptc="no (header file missing)"])
975e7fd6 2121fi
88998e1d
FF
2122# If the header file is available, check for the required type declaractions.
2123# They may be missing in old versions of libiptc. In that case, they will be
2124# declared in the iptables plugin.
d1f72747 2125if test "x$with_libiptc" = "xpkgconfig"
b3315d59 2126then
d1f72747 2127 AC_CHECK_TYPES([iptc_handle_t, ip6tc_handle_t], [], [])
af0dd163 2128fi
88998e1d 2129# Check for the iptc_init symbol in the library.
3835b23a 2130# This could be in iptc or ip4tc
d1f72747 2131if test "x$with_libiptc" = "xpkgconfig"
af0dd163 2132then
c43464c9 2133 SAVE_LIBS="$LIBS"
3835b23a 2134 AC_SEARCH_LIBS(iptc_init, [iptc ip4tc],
d1f72747
FF
2135 [with_libiptc="pkgconfig"],
2136 [with_libiptc="no"],
2137 [$with_libiptc_libs])
c43464c9 2138 LIBS="$SAVE_LIBS"
d1f72747
FF
2139fi
2140if test "x$with_libiptc" = "xpkgconfig"
2141then
2142 with_libiptc="yes"
88998e1d 2143fi
d1f72747
FF
2144
2145CPPFLAGS="$SAVE_CPPFLAGS"
2146
a690e4ac 2147AM_CONDITIONAL(BUILD_WITH_LIBIPTC, test "x$with_libiptc" = "xyes")
a690e4ac
FF
2148if test "x$with_libiptc" = "xyes"
2149then
d1f72747
FF
2150 BUILD_WITH_LIBIPTC_CPPFLAGS="$with_libiptc_cflags"
2151 BUILD_WITH_LIBIPTC_LDFLAGS="$with_libiptc_libs"
a690e4ac
FF
2152 AC_SUBST(BUILD_WITH_LIBIPTC_CPPFLAGS)
2153 AC_SUBST(BUILD_WITH_LIBIPTC_LDFLAGS)
2154fi
8757c918 2155# }}}
86ca149a 2156
ff1c15a6
FF
2157# --with-java {{{
2158with_java_home="$JAVA_HOME"
fc6dcff7
RK
2159if test "x$with_java_home" = "x"
2160then
2161 with_java_home="/usr/lib/jvm"
2162fi
ff1c15a6
FF
2163with_java_vmtype="client"
2164with_java_cflags=""
2165with_java_libs=""
0e187c2e 2166JAVAC="$JAVAC"
c983405b 2167JAR="$JAR"
ff1c15a6
FF
2168AC_ARG_WITH(java, [AS_HELP_STRING([--with-java@<:@=PREFIX@:>@], [Path to Java home.])],
2169[
2170 if test "x$withval" = "xno"
2171 then
2172 with_java="no"
2173 else if test "x$withval" = "xyes"
2174 then
2175 with_java="yes"
2176 else
2177 with_java_home="$withval"
2178 with_java="yes"
2179 fi; fi
2180],
2181[with_java="yes"])
2182if test "x$with_java" = "xyes"
2183then
2184 if test -d "$with_java_home"
2185 then
33163ee3 2186 AC_MSG_CHECKING([for jni.h])
db7c38fe 2187 TMPVAR=`find -L "$with_java_home" -name jni.h -type f -exec 'dirname' '{}' ';' 2>/dev/null | head -n 1`
5680622e 2188 if test "x$TMPVAR" != "x"
ff1c15a6 2189 then
5680622e
DC
2190 AC_MSG_RESULT([found in $TMPVAR])
2191 JAVA_CPPFLAGS="$JAVA_CPPFLAGS -I$TMPVAR"
ff1c15a6 2192 else
33163ee3 2193 AC_MSG_RESULT([not found])
ff1c15a6 2194 fi
33163ee3
FF
2195
2196 AC_MSG_CHECKING([for jni_md.h])
db7c38fe 2197 TMPVAR=`find -L "$with_java_home" -name jni_md.h -type f -exec 'dirname' '{}' ';' 2>/dev/null | head -n 1`
5680622e 2198 if test "x$TMPVAR" != "x"
33163ee3 2199 then
5680622e
DC
2200 AC_MSG_RESULT([found in $TMPVAR])
2201 JAVA_CPPFLAGS="$JAVA_CPPFLAGS -I$TMPVAR"
33163ee3
FF
2202 else
2203 AC_MSG_RESULT([not found])
2204 fi
2205
2206 AC_MSG_CHECKING([for libjvm.so])
db7c38fe 2207 TMPVAR=`find -L "$with_java_home" -name libjvm.so -type f -exec 'dirname' '{}' ';' 2>/dev/null | head -n 1`
5680622e 2208 if test "x$TMPVAR" != "x"
ff1c15a6 2209 then
5680622e
DC
2210 AC_MSG_RESULT([found in $TMPVAR])
2211 JAVA_LDFLAGS="$JAVA_LDFLAGS -L$TMPVAR -Wl,-rpath -Wl,$TMPVAR"
ff1c15a6 2212 else
33163ee3 2213 AC_MSG_RESULT([not found])
ff1c15a6 2214 fi
0e187c2e
FF
2215
2216 if test "x$JAVAC" = "x"
2217 then
2218 AC_MSG_CHECKING([for javac])
db7c38fe 2219 TMPVAR=`find -L "$with_java_home" -name javac -type f 2>/dev/null | head -n 1`
5680622e 2220 if test "x$TMPVAR" != "x"
0e187c2e 2221 then
5680622e 2222 JAVAC="$TMPVAR"
0e187c2e
FF
2223 AC_MSG_RESULT([$JAVAC])
2224 else
2225 AC_MSG_RESULT([not found])
2226 fi
2227 fi
c983405b
AG
2228 if test "x$JAR" = "x"
2229 then
2230 AC_MSG_CHECKING([for jar])
db7c38fe 2231 TMPVAR=`find -L "$with_java_home" -name jar -type f 2>/dev/null | head -n 1`
5680622e 2232 if test "x$TMPVAR" != "x"
c983405b 2233 then
5680622e 2234 JAR="$TMPVAR"
c983405b
AG
2235 AC_MSG_RESULT([$JAR])
2236 else
2237 AC_MSG_RESULT([not found])
2238 fi
2239 fi
ff1c15a6
FF
2240 else if test "x$with_java_home" != "x"
2241 then
2242 AC_MSG_WARN([JAVA_HOME: No such directory: $with_java_home])
2243 fi; fi
2244fi
2245
2246if test "x$JAVA_CPPFLAGS" != "x"
2247then
2248 AC_MSG_NOTICE([Building with JAVA_CPPFLAGS set to: $JAVA_CPPFLAGS])
2249fi
2250if test "x$JAVA_CFLAGS" != "x"
2251then
2252 AC_MSG_NOTICE([Building with JAVA_CFLAGS set to: $JAVA_CFLAGS])
2253fi
2254if test "x$JAVA_LDFLAGS" != "x"
2255then
2256 AC_MSG_NOTICE([Building with JAVA_LDFLAGS set to: $JAVA_LDFLAGS])
2257fi
0e187c2e
FF
2258if test "x$JAVAC" = "x"
2259then
2260 with_javac_path="$PATH"
2261 if test "x$with_java_home" != "x"
2262 then
2263 with_javac_path="$with_java_home:with_javac_path"
2264 if test -d "$with_java_home/bin"
2265 then
2266 with_javac_path="$with_java_home/bin:with_javac_path"
2267 fi
2268 fi
2269
2270 AC_PATH_PROG(JAVAC, javac, [], "$with_javac_path")
2271fi
2272if test "x$JAVAC" = "x"
2273then
2274 with_java="no (javac not found)"
2275fi
c983405b
AG
2276if test "x$JAR" = "x"
2277then
2278 with_jar_path="$PATH"
2279 if test "x$with_java_home" != "x"
2280 then
f181a333 2281 with_jar_path="$with_java_home:$with_jar_path"
c983405b
AG
2282 if test -d "$with_java_home/bin"
2283 then
f181a333 2284 with_jar_path="$with_java_home/bin:$with_jar_path"
c983405b
AG
2285 fi
2286 fi
2287
2288 AC_PATH_PROG(JAR, jar, [], "$with_jar_path")
2289fi
2290if test "x$JAR" = "x"
2291then
2292 with_java="no (jar not found)"
2293fi
ff1c15a6
FF
2294
2295SAVE_CPPFLAGS="$CPPFLAGS"
2296SAVE_CFLAGS="$CFLAGS"
2297SAVE_LDFLAGS="$LDFLAGS"
2298CPPFLAGS="$CPPFLAGS $JAVA_CPPFLAGS"
2299CFLAGS="$CFLAGS $JAVA_CFLAGS"
2300LDFLAGS="$LDFLAGS $JAVA_LDFLAGS"
2301
2302if test "x$with_java" = "xyes"
2303then
2304 AC_CHECK_HEADERS(jni.h, [], [with_java="no (jni.h not found)"])
2305fi
2306if test "x$with_java" = "xyes"
2307then
2308 AC_CHECK_LIB(jvm, JNI_CreateJavaVM,
2309 [with_java="yes"],
2310 [with_java="no (libjvm not found)"],
2311 [$JAVA_LIBS])
2312fi
2313if test "x$with_java" = "xyes"
2314then
2315 JAVA_LIBS="$JAVA_LIBS -ljvm"
2316 AC_MSG_NOTICE([Building with JAVA_LIBS set to: $JAVA_LIBS])
2317fi
2318
2319CPPFLAGS="$SAVE_CPPFLAGS"
2320CFLAGS="$SAVE_CFLAGS"
2321LDFLAGS="$SAVE_LDFLAGS"
2322
2323AC_SUBST(JAVA_CPPFLAGS)
2324AC_SUBST(JAVA_CFLAGS)
2325AC_SUBST(JAVA_LDFLAGS)
2326AC_SUBST(JAVA_LIBS)
2327AM_CONDITIONAL(BUILD_WITH_JAVA, test "x$with_java" = "xyes")
2328# }}}
2329
6ecb1f03
KR
2330# --with-libldap {{{
2331AC_ARG_WITH(libldap, [AS_HELP_STRING([--with-libldap@<:@=PREFIX@:>@], [Path to libldap.])],
2332[
2333 if test "x$withval" = "xyes"
2334 then
2335 with_libldap="yes"
2336 else if test "x$withval" = "xno"
2337 then
2338 with_libldap="no"
2339 else
2340 with_libldap="yes"
2341 LIBLDAP_CPPFLAGS="$LIBLDAP_CPPFLAGS -I$withval/include"
2342 LIBLDAP_LDFLAGS="$LIBLDAP_LDFLAGS -L$withval/lib"
2343 fi; fi
2344],
2345[with_libldap="yes"])
2346
2347SAVE_CPPFLAGS="$CPPFLAGS"
2348SAVE_LDFLAGS="$LDFLAGS"
2349
2350CPPFLAGS="$CPPFLAGS $LIBLDAP_CPPFLAGS"
2351LDFLAGS="$LDFLAGS $LIBLDAP_LDFLAGS"
2352
2353if test "x$with_libldap" = "xyes"
2354then
2355 if test "x$LIBLDAP_CPPFLAGS" != "x"
2356 then
2357 AC_MSG_NOTICE([libldap CPPFLAGS: $LIBLDAP_CPPFLAGS])
2358 fi
2359 AC_CHECK_HEADERS(ldap.h,
2360 [with_libldap="yes"],
2361 [with_libldap="no ('ldap.h' not found)"])
2362fi
2363if test "x$with_libldap" = "xyes"
2364then
2365 if test "x$LIBLDAP_LDFLAGS" != "x"
2366 then
2367 AC_MSG_NOTICE([libldap LDFLAGS: $LIBLDAP_LDFLAGS])
2368 fi
2369 AC_CHECK_LIB(ldap, ldap_initialize,
2370 [with_libldap="yes"],
2371 [with_libldap="no (symbol 'ldap_initialize' not found)"])
2372
2373fi
2374
2375CPPFLAGS="$SAVE_CPPFLAGS"
2376LDFLAGS="$SAVE_LDFLAGS"
2377
2378if test "x$with_libldap" = "xyes"
2379then
2380 BUILD_WITH_LIBLDAP_CPPFLAGS="$LIBLDAP_CPPFLAGS"
2381 BUILD_WITH_LIBLDAP_LDFLAGS="$LIBLDAP_LDFLAGS"
2382 AC_SUBST(BUILD_WITH_LIBLDAP_CPPFLAGS)
2383 AC_SUBST(BUILD_WITH_LIBLDAP_LDFLAGS)
2384fi
2385AM_CONDITIONAL(BUILD_WITH_LIBLDAP, test "x$with_libldap" = "xyes")
2386# }}}
2387
d68f4c95
CM
2388# --with-liblvm2app {{{
2389with_liblvm2app_cppflags=""
2390with_liblvm2app_ldflags=""
2391AC_ARG_WITH(liblvm2app, [AS_HELP_STRING([--with-liblvm2app@<:@=PREFIX@:>@], [Path to liblvm2app.])],
2392[
2393 if test "x$withval" != "xno" && test "x$withval" != "xyes"
2394 then
2395 with_liblvm2app_cppflags="-I$withval/include"
2396 with_liblvm2app_ldflags="-L$withval/lib"
2397 with_liblvm2app="yes"
2398 else
2399 with_liblvm2app="$withval"
2400 fi
2401],
2402[
2403 with_liblvm2app="yes"
2404])
2405if test "x$with_liblvm2app" = "xyes"
2406then
2407 SAVE_CPPFLAGS="$CPPFLAGS"
2408 CPPFLAGS="$CPPFLAGS $with_liblvm2app_cppflags"
2409
2410 AC_CHECK_HEADERS(lvm2app.h, [with_liblvm2app="yes"], [with_liblvm2app="no (lvm2app.h not found)"])
2411
2412 CPPFLAGS="$SAVE_CPPFLAGS"
2413fi
2414
2415if test "x$with_liblvm2app" = "xyes"
2416then
2417 SAVE_CPPFLAGS="$CPPFLAGS"
2418 SAVE_LDFLAGS="$LDFLAGS"
2419 CPPFLAGS="$CPPFLAGS $with_liblvm2app_cppflags"
2420 LDFLAGS="$LDFLAGS $with_liblvm2app_ldflags"
2421
5e2ed291 2422 AC_CHECK_LIB(lvm2app, lvm_lv_get_property, [with_liblvm2app="yes"], [with_liblvm2app="no (Symbol 'lvm_lv_get_property' not found)"])
d68f4c95
CM
2423
2424 CPPFLAGS="$SAVE_CPPFLAGS"
2425 LDFLAGS="$SAVE_LDFLAGS"
2426fi
2427if test "x$with_liblvm2app" = "xyes"
2428then
2429 BUILD_WITH_LIBLVM2APP_CPPFLAGS="$with_liblvm2app_cppflags"
2430 BUILD_WITH_LIBLVM2APP_LDFLAGS="$with_liblvm2app_ldflags"
2431 BUILD_WITH_LIBLVM2APP_LIBS="-llvm2app"
2432 AC_SUBST(BUILD_WITH_LIBLVM2APP_CPPFLAGS)
2433 AC_SUBST(BUILD_WITH_LIBLVM2APP_LDFLAGS)
2434 AC_SUBST(BUILD_WITH_LIBLVM2APP_LIBS)
2435 AC_DEFINE(HAVE_LIBLVM2APP, 1, [Define if liblvm2app is present and usable.])
2436fi
2437AM_CONDITIONAL(BUILD_WITH_LIBLVM2APP, test "x$with_liblvm2app" = "xyes")
2438# }}}
2439
5e8e1fe1
FF
2440# --with-libmemcached {{{
2441with_libmemcached_cppflags=""
2442with_libmemcached_ldflags=""
2443AC_ARG_WITH(libmemcached, [AS_HELP_STRING([--with-libmemcached@<:@=PREFIX@:>@], [Path to libmemcached.])],
2444[
2445 if test "x$withval" != "xno" && test "x$withval" != "xyes"
2446 then
2447 with_libmemcached_cppflags="-I$withval/include"
2448 with_libmemcached_ldflags="-L$withval/lib"
2449 with_libmemcached="yes"
2450 else
2451 with_libmemcached="$withval"
2452 fi
2453],
2454[
2455 with_libmemcached="yes"
2456])
2457if test "x$with_libmemcached" = "xyes"
2458then
2459 SAVE_CPPFLAGS="$CPPFLAGS"
2460 CPPFLAGS="$CPPFLAGS $with_libmemcached_cppflags"
2461
2462 AC_CHECK_HEADERS(libmemcached/memcached.h, [with_libmemcached="yes"], [with_libmemcached="no (libmemcached/memcached.h not found)"])
2463
2464 CPPFLAGS="$SAVE_CPPFLAGS"
2465fi
2466if test "x$with_libmemcached" = "xyes"
2467then
2468 SAVE_CPPFLAGS="$CPPFLAGS"
2469 SAVE_LDFLAGS="$LDFLAGS"
2470 CPPFLAGS="$CPPFLAGS $with_libmemcached_cppflags"
2471 LDFLAGS="$LDFLAGS $with_libmemcached_ldflags"
2472
2473 AC_CHECK_LIB(memcached, memcached_create, [with_libmemcached="yes"], [with_libmemcached="no (Symbol 'memcached_create' not found)"])
2474
2475 CPPFLAGS="$SAVE_CPPFLAGS"
2476 LDFLAGS="$SAVE_LDFLAGS"
2477fi
2478if test "x$with_libmemcached" = "xyes"
2479then
2480 BUILD_WITH_LIBMEMCACHED_CPPFLAGS="$with_libmemcached_cppflags"
2481 BUILD_WITH_LIBMEMCACHED_LDFLAGS="$with_libmemcached_ldflags"
2482 BUILD_WITH_LIBMEMCACHED_LIBS="-lmemcached"
2483 AC_SUBST(BUILD_WITH_LIBMEMCACHED_CPPFLAGS)
2484 AC_SUBST(BUILD_WITH_LIBMEMCACHED_LDFLAGS)
2485 AC_SUBST(BUILD_WITH_LIBMEMCACHED_LIBS)
2486 AC_DEFINE(HAVE_LIBMEMCACHED, 1, [Define if libmemcached is present and usable.])
2487fi
2488AM_CONDITIONAL(BUILD_WITH_LIBMEMCACHED, test "x$with_libmemcached" = "xyes")
2489# }}}
2490
367405c9
FF
2491# --with-libmodbus {{{
2492with_libmodbus_config=""
2493with_libmodbus_cflags=""
2494with_libmodbus_libs=""
2495AC_ARG_WITH(libmodbus, [AS_HELP_STRING([--with-libmodbus@<:@=PREFIX@:>@], [Path to the modbus library.])],
2496[
2497 if test "x$withval" = "xno"
2498 then
2499 with_libmodbus="no"
2500 else if test "x$withval" = "xyes"
2501 then
2502 with_libmodbus="use_pkgconfig"
2503 else if test -d "$with_libmodbus/lib"
2504 then
2505 AC_MSG_NOTICE([Not checking for libmodbus: Manually configured])
2506 with_libmodbus_cflags="-I$withval/include"
2507 with_libmodbus_libs="-L$withval/lib -lmodbus"
2508 with_libmodbus="yes"
2509 fi; fi; fi
2510],
2511[with_libmodbus="use_pkgconfig"])
2512
2513# configure using pkg-config
2514if test "x$with_libmodbus" = "xuse_pkgconfig"
2515then
2516 if test "x$PKG_CONFIG" = "x"
2517 then
2518 with_libmodbus="no (Don't have pkg-config)"
2519 fi
2520fi
2521if test "x$with_libmodbus" = "xuse_pkgconfig"
2522then
97f36e3f
SN
2523 AC_MSG_NOTICE([Checking for libmodbus using $PKG_CONFIG])
2524 $PKG_CONFIG --exists 'libmodbus' 2>/dev/null
367405c9
FF
2525 if test $? -ne 0
2526 then
97f36e3f 2527 with_libmodbus="no (pkg-config doesn't know libmodbus)"
367405c9
FF
2528 fi
2529fi
2530if test "x$with_libmodbus" = "xuse_pkgconfig"
2531then
97f36e3f 2532 with_libmodbus_cflags="`$PKG_CONFIG --cflags 'libmodbus'`"
367405c9
FF
2533 if test $? -ne 0
2534 then
2535 with_libmodbus="no ($PKG_CONFIG failed)"
2536 fi
97f36e3f 2537 with_libmodbus_libs="`$PKG_CONFIG --libs 'libmodbus'`"
367405c9
FF
2538 if test $? -ne 0
2539 then
2540 with_libmodbus="no ($PKG_CONFIG failed)"
2541 fi
2542fi
2543if test "x$with_libmodbus" = "xuse_pkgconfig"
2544then
2545 with_libmodbus="yes"
2546fi
2547
2548# with_libmodbus_cflags and with_libmodbus_libs are set up now, let's do
2549# the actual checks.
2550if test "x$with_libmodbus" = "xyes"
2551then
2552 SAVE_CPPFLAGS="$CPPFLAGS"
2553 CPPFLAGS="$CPPFLAGS $with_libmodbus_cflags"
2554
6124da7a 2555 AC_CHECK_HEADERS(modbus.h, [], [with_libmodbus="no (modbus.h not found)"])
367405c9
FF
2556
2557 CPPFLAGS="$SAVE_CPPFLAGS"
2558fi
2559if test "x$with_libmodbus" = "xyes"
2560then
2561 SAVE_CPPFLAGS="$CPPFLAGS"
2562 SAVE_LDFLAGS="$LDFLAGS"
2563
2564 CPPFLAGS="$CPPFLAGS $with_libmodbus_cflags"
2565 LDFLAGS="$LDFLAGS $with_libmodbus_libs"
2566
c4e824e4 2567 AC_CHECK_LIB(modbus, modbus_connect,
367405c9 2568 [with_libmodbus="yes"],
c4e824e4 2569 [with_libmodbus="no (symbol modbus_connect not found)"])
367405c9
FF
2570
2571 CPPFLAGS="$SAVE_CPPFLAGS"
2572 LDFLAGS="$SAVE_LDFLAGS"
2573fi
2574if test "x$with_libmodbus" = "xyes"
2575then
2576 BUILD_WITH_LIBMODBUS_CFLAGS="$with_libmodbus_cflags"
2577 BUILD_WITH_LIBMODBUS_LIBS="$with_libmodbus_libs"
2578 AC_SUBST(BUILD_WITH_LIBMODBUS_CFLAGS)
2579 AC_SUBST(BUILD_WITH_LIBMODBUS_LIBS)
2580fi
2581# }}}
2582
13322bb3
FF
2583# --with-libmongoc {{{
2584AC_ARG_WITH(libmongoc, [AS_HELP_STRING([--with-libmongoc@<:@=PREFIX@:>@], [Path to libmongoc.])],
2585[
2586 if test "x$withval" = "xyes"
2587 then
2588 with_libmongoc="yes"
2589 else if test "x$withval" = "xno"
2590 then
2591 with_libmongoc="no"
2592 else
2593 with_libmongoc="yes"
2594 LIBMONGOC_CPPFLAGS="$LIBMONGOC_CPPFLAGS -I$withval/include"
2595 LIBMONGOC_LDFLAGS="$LIBMONGOC_LDFLAGS -L$withval/lib"
2596 fi; fi
2597],
2598[with_libmongoc="yes"])
2599
2600SAVE_CPPFLAGS="$CPPFLAGS"
2601SAVE_LDFLAGS="$LDFLAGS"
2602
2603CPPFLAGS="$CPPFLAGS $LIBMONGOC_CPPFLAGS"
2604LDFLAGS="$LDFLAGS $LIBMONGOC_LDFLAGS"
2605
2606if test "x$with_libmongoc" = "xyes"
2607then
2608 if test "x$LIBMONGOC_CPPFLAGS" != "x"
2609 then
2610 AC_MSG_NOTICE([libmongoc CPPFLAGS: $LIBMONGOC_CPPFLAGS])
2611 fi
2612 AC_CHECK_HEADERS(mongo.h,
2613 [with_libmongoc="yes"],
2614 [with_libmongoc="no ('mongo.h' not found)"],
2615[#if HAVE_STDINT_H
2616# define MONGO_HAVE_STDINT 1
2617#else
2618# define MONGO_USE_LONG_LONG_INT 1
2619#endif
2620])
2621fi
2622if test "x$with_libmongoc" = "xyes"
2623then
2624 if test "x$LIBMONGOC_LDFLAGS" != "x"
2625 then
2626 AC_MSG_NOTICE([libmongoc LDFLAGS: $LIBMONGOC_LDFLAGS])
2627 fi
2628 AC_CHECK_LIB(mongoc, mongo_run_command,
2629 [with_libmongoc="yes"],
2630 [with_libmongoc="no (symbol 'mongo_run_command' not found)"])
2631fi
2632
2633CPPFLAGS="$SAVE_CPPFLAGS"
2634LDFLAGS="$SAVE_LDFLAGS"
2635
2636if test "x$with_libmongoc" = "xyes"
2637then
2638 BUILD_WITH_LIBMONGOC_CPPFLAGS="$LIBMONGOC_CPPFLAGS"
2639 BUILD_WITH_LIBMONGOC_LDFLAGS="$LIBMONGOC_LDFLAGS"
2640 AC_SUBST(BUILD_WITH_LIBMONGOC_CPPFLAGS)
2641 AC_SUBST(BUILD_WITH_LIBMONGOC_LDFLAGS)
2642fi
2643AM_CONDITIONAL(BUILD_WITH_LIBMONGOC, test "x$with_libmongoc" = "xyes")
2644# }}}
2645
ed93534f
FF
2646# --with-libmosquitto {{{
2647with_libmosquitto_cppflags=""
2648with_libmosquitto_libs="-lmosquitto"
2649AC_ARG_WITH(libmosquitto, [AS_HELP_STRING([--with-libmosquitto@<:@=PREFIX@:>@], [Path to libmosquitto.])],
2650[
2651 if test "x$withval" != "xno" && test "x$withval" != "xyes"
2652 then
2653 with_libmosquitto_cppflags="-I$withval/include"
2654 with_libmosquitto_libs="-L$withval/lib -lmosquitto"
2655 with_libmosquitto="yes"
2656 else
2657 with_libmosquitto="$withval"
2658 fi
2659],
2660[
2661 with_libmosquitto="yes"
2662])
2663if test "x$with_libmosquitto" = "xyes"
2664then
2665 SAVE_CPPFLAGS="$CPPFLAGS"
2666 CPPFLAGS="$with_libmosquitto_cppflags"
2667
2668 AC_CHECK_HEADERS(mosquitto.h, [with_libmosquitto="yes"], [with_libmosquitto="no (mosquitto.h not found)"])
2669
2670 CPPFLAGS="$SAVE_CPPFLAGS"
2671fi
2672if test "x$with_libmosquitto" = "xyes"
2673then
2674 SAVE_LDFLAGS="$LDFLAGS"
2675 SAVE_CPPFLAGS="$CPPFLAGS"
2676 LDFLAGS="$with_libmosquitto_libs"
2677 CPPFLAGS="$with_libmosquitto_cppflags"
2678
2679 AC_CHECK_LIB(mosquitto, mosquitto_connect, [with_libmosquitto="yes"], [with_libmosquitto="no (libmosquitto not found)"])
2680
2681 LDFLAGS="$SAVE_LDFLAGS"
2682 CPPFLAGS="$SAVE_CPPFLAGS"
2683fi
2684if test "x$with_libmosquitto" = "xyes"
2685then
2686 BUILD_WITH_LIBMOSQUITTO_CPPFLAGS="$with_libmosquitto_cppflags"
2687 BUILD_WITH_LIBMOSQUITTO_LIBS="$with_libmosquitto_libs"
2688 AC_SUBST(BUILD_WITH_LIBMOSQUITTO_CPPFLAGS)
2689 AC_SUBST(BUILD_WITH_LIBMOSQUITTO_LIBS)
2690fi
2691# }}}
2692
8757c918 2693# --with-libmysql {{{
805c4940 2694with_mysql_config="mysql_config"
805c4940
FF
2695with_mysql_cflags=""
2696with_mysql_libs=""
e4303e15
FF
2697AC_ARG_WITH(libmysql, [AS_HELP_STRING([--with-libmysql@<:@=PREFIX@:>@], [Path to libmysql.])],
2698[
805c4940
FF
2699 if test "x$withval" = "xno"
2700 then
2701 with_libmysql="no"
8f6c03d5 2702 else if test "x$withval" = "xyes"
e4303e15 2703 then
e4303e15 2704 with_libmysql="yes"
8f6c03d5 2705 else
a3cd4630 2706 if test -f "$withval" && test -x "$withval";
8f6c03d5
FF
2707 then
2708 with_mysql_config="$withval"
2709 else if test -x "$withval/bin/mysql_config"
2710 then
2711 with_mysql_config="$withval/bin/mysql_config"
2712 fi; fi
a3cd4630 2713 with_libmysql="yes"
8f6c03d5 2714 fi; fi
e4303e15
FF
2715],
2716[
2717 with_libmysql="yes"
2718])
2719if test "x$with_libmysql" = "xyes"
2720then
805c4940
FF
2721 with_mysql_cflags=`$with_mysql_config --cflags 2>/dev/null`
2722 mysql_config_status=$?
2723
2724 if test $mysql_config_status -ne 0
2725 then
23164f56 2726 with_libmysql="no ($with_mysql_config failed)"
805c4940 2727 else
06c09fee
FF
2728 SAVE_CPPFLAGS="$CPPFLAGS"
2729 CPPFLAGS="$CPPFLAGS $with_mysql_cflags"
805c4940 2730
23164f56
SH
2731 have_mysql_h="no"
2732 have_mysql_mysql_h="no"
2733 AC_CHECK_HEADERS(mysql.h, [have_mysql_h="yes"])
2734
2735 if test "x$have_mysql_h" = "xno"
2736 then
2737 AC_CHECK_HEADERS(mysql/mysql.h, [have_mysql_mysql_h="yes"])
2738 fi
2739
2740 if test "x$have_mysql_h$have_mysql_mysql_h" = "xnono"
2741 then
2742 with_libmysql="no (mysql.h not found)"
2743 fi
805c4940 2744
06c09fee 2745 CPPFLAGS="$SAVE_CPPFLAGS"
805c4940 2746 fi
e4303e15
FF
2747fi
2748if test "x$with_libmysql" = "xyes"
2749then
a956e9ab 2750 with_mysql_libs=`$with_mysql_config --libs_r 2>/dev/null`
8f6c03d5
FF
2751 mysql_config_status=$?
2752
2753 if test $mysql_config_status -ne 0
2754 then
23164f56 2755 with_libmysql="no ($with_mysql_config failed)"
8f6c03d5
FF
2756 else
2757 AC_CHECK_LIB(mysqlclient, mysql_init,
48bc4be8
FF
2758 [with_libmysql="yes"],
2759 [with_libmysql="no (symbol 'mysql_init' not found)"],
8f6c03d5 2760 [$with_mysql_libs])
2b65cef7
DM
2761
2762 AC_CHECK_LIB(mysqlclient, mysql_get_server_version,
2763 [with_libmysql="yes"],
2764 [with_libmysql="no (symbol 'mysql_get_server_version' not found)"],
2765 [$with_mysql_libs])
8f6c03d5 2766 fi
e4303e15
FF
2767fi
2768if test "x$with_libmysql" = "xyes"
2769then
805c4940
FF
2770 BUILD_WITH_LIBMYSQL_CFLAGS="$with_mysql_cflags"
2771 BUILD_WITH_LIBMYSQL_LIBS="$with_mysql_libs"
2772 AC_SUBST(BUILD_WITH_LIBMYSQL_CFLAGS)
2773 AC_SUBST(BUILD_WITH_LIBMYSQL_LIBS)
e4303e15 2774fi
e4303e15 2775AM_CONDITIONAL(BUILD_WITH_LIBMYSQL, test "x$with_libmysql" = "xyes")
8757c918 2776# }}}
86ca149a 2777
25bf8128
MF
2778# --with-libmnl {{{
2779with_libmnl_cflags=""
490b7542 2780with_libmnl_libs=""
25bf8128 2781AC_ARG_WITH(libmnl, [AS_HELP_STRING([--with-libmnl@<:@=PREFIX@:>@], [Path to libmnl.])],
975e7fd6 2782[
25bf8128 2783 echo "libmnl: withval = $withval"
975e7fd6
FF
2784 if test "x$withval" = "xyes"
2785 then
25bf8128 2786 with_libmnl="yes"
975e7fd6
FF
2787 else if test "x$withval" = "xno"
2788 then
25bf8128 2789 with_libmnl="no"
975e7fd6
FF
2790 else
2791 if test -d "$withval/include"
2792 then
25bf8128
MF
2793 with_libmnl_cflags="-I$withval/include"
2794 with_libmnl_libs="-L$withval/lib -lmnl"
2795 with_libmnl="yes"
975e7fd6
FF
2796 else
2797 AC_MSG_ERROR("no such directory: $withval/include")
2798 fi
2799 fi; fi
2800],
2801[
2802 if test "x$ac_system" = "xLinux"
2803 then
25bf8128 2804 with_libmnl="yes"
975e7fd6 2805 else
25bf8128 2806 with_libmnl="no (Linux only library)"
975e7fd6
FF
2807 fi
2808])
490b7542 2809if test "x$PKG_CONFIG" = "x"
975e7fd6 2810then
490b7542
MF
2811 with_libmnl="no (Don't have pkg-config)"
2812fi
25bf8128 2813if test "x$with_libmnl" = "xyes"
975e7fd6 2814then
490b7542
MF
2815 if $PKG_CONFIG --exists libmnl 2>/dev/null; then
2816 with_libmnl_cflags="$with_libmnl_ldflags `$PKG_CONFIG --cflags libmnl`"
2817 with_libmnl_libs="$with_libmnl_libs `$PKG_CONFIG --libs libmnl`"
2818 fi
975e7fd6 2819
25bf8128 2820 AC_CHECK_HEADERS(libmnl.h libmnl/libmnl.h,
975e7fd6 2821 [
25bf8128 2822 with_libmnl="yes"
975e7fd6
FF
2823 break
2824 ], [],
2825[#include <stdio.h>
2826#include <sys/types.h>
2827#include <asm/types.h>
2828#include <sys/socket.h>
2829#include <linux/netlink.h>
2830#include <linux/rtnetlink.h>])
2831 AC_CHECK_HEADERS(linux/gen_stats.h linux/pkt_sched.h, [], [],
2832[#include <stdio.h>
2833#include <sys/types.h>
2834#include <asm/types.h>
2835#include <sys/socket.h>])
2836
601a4eae 2837 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
4def66d6 2838[[
ef3e1650 2839#include <stdio.h>
975e7fd6
FF
2840#include <sys/types.h>
2841#include <asm/types.h>
2842#include <sys/socket.h>
2843#include <linux/netlink.h>
2844#include <linux/rtnetlink.h>
4def66d6
AH
2845]],
2846[[
ef3e1650
FF
2847int retval = TCA_STATS2;
2848return (retval);
4def66d6 2849]]
ef3e1650
FF
2850 )],
2851 [AC_DEFINE([HAVE_TCA_STATS2], [1], [True if the enum-member TCA_STATS2 exists])])
975e7fd6 2852
ce8b96ae 2853 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
4def66d6 2854[[
ef3e1650 2855#include <stdio.h>
975e7fd6
FF
2856#include <sys/types.h>
2857#include <asm/types.h>
2858#include <sys/socket.h>
2859#include <linux/netlink.h>
2860#include <linux/rtnetlink.h>
4def66d6
AH
2861]],
2862[[
ef3e1650
FF
2863int retval = TCA_STATS;
2864return (retval);
4def66d6 2865]]
ef3e1650
FF
2866 )],
2867 [AC_DEFINE([HAVE_TCA_STATS], 1, [True if the enum-member TCA_STATS exists])])
975e7fd6 2868fi
25bf8128 2869if test "x$with_libmnl" = "xyes"
772b275d
MB
2870then
2871 AC_CHECK_MEMBERS([struct rtnl_link_stats64.tx_window_errors],
2872 [AC_DEFINE(HAVE_RTNL_LINK_STATS64, 1, [Define if struct rtnl_link_stats64 exists and is usable.])],
2873 [],
2874 [
2875 #include <linux/if_link.h>
2876 ])
2877fi
2878if test "x$with_libmnl" = "xyes"
975e7fd6 2879then
25bf8128
MF
2880 AC_CHECK_LIB(mnl, mnl_nlmsg_get_payload,
2881 [with_libmnl="yes"],
2882 [with_libmnl="no (symbol 'mnl_nlmsg_get_payload' not found)"],
2883 [$with_libmnl_libs])
975e7fd6 2884fi
25bf8128 2885if test "x$with_libmnl" = "xyes"
975e7fd6 2886then
25bf8128
MF
2887 AC_DEFINE(HAVE_LIBMNL, 1, [Define if libmnl is present and usable.])
2888 BUILD_WITH_LIBMNL_CFLAGS="$with_libmnl_cflags"
2889 BUILD_WITH_LIBMNL_LIBS="$with_libmnl_libs"
2890 AC_SUBST(BUILD_WITH_LIBMNL_CFLAGS)
2891 AC_SUBST(BUILD_WITH_LIBMNL_LIBS)
975e7fd6 2892fi
25bf8128 2893AM_CONDITIONAL(BUILD_WITH_LIBMNL, test "x$with_libmnl" = "xyes")
975e7fd6
FF
2894# }}}
2895
9f8962fb
FF
2896# --with-libnetapp {{{
2897AC_ARG_VAR([LIBNETAPP_CPPFLAGS], [C preprocessor flags required to build with libnetapp])
2898AC_ARG_VAR([LIBNETAPP_LDFLAGS], [Linker flags required to build with libnetapp])
2899AC_ARG_VAR([LIBNETAPP_LIBS], [Other libraries required to link against libnetapp])
2900LIBNETAPP_CPPFLAGS="$LIBNETAPP_CPPFLAGS"
2901LIBNETAPP_LDFLAGS="$LIBNETAPP_LDFLAGS"
2902LIBNETAPP_LIBS="$LIBNETAPP_LIBS"
2903AC_ARG_WITH(libnetapp, [AS_HELP_STRING([--with-libnetapp@<:@=PREFIX@:>@], [Path to libnetapp.])],
2904[
2905 if test -d "$withval"
2906 then
2907 LIBNETAPP_CPPFLAGS="$LIBNETAPP_CPPFLAGS -I$withval/include"
2908 LIBNETAPP_LDFLAGS="$LIBNETAPP_LDFLAGS -L$withval/lib"
2909 with_libnetapp="yes"
2910 else
2911 with_libnetapp="$withval"
2912 fi
2913],
2914[
2915 with_libnetapp="yes"
2916])
2917
2918SAVE_CPPFLAGS="$CPPFLAGS"
2919SAVE_LDFLAGS="$LDFLAGS"
2920CPPFLAGS="$CPPFLAGS $LIBNETAPP_CPPFLAGS"
2921LDFLAGS="$LDFLAGS $LIBNETAPP_LDFLAGS"
2922
2923if test "x$with_libnetapp" = "xyes"
2924then
2925 if test "x$LIBNETAPP_CPPFLAGS" != "x"
2926 then
2927 AC_MSG_NOTICE([netapp CPPFLAGS: $LIBNETAPP_CPPFLAGS])
2928 fi
2929 AC_CHECK_HEADERS(netapp_api.h,
2930 [with_libnetapp="yes"],
2931 [with_libnetapp="no (netapp_api.h not found)"])
2932fi
2933
2934if test "x$with_libnetapp" = "xyes"
2935then
2936 if test "x$LIBNETAPP_LDFLAGS" != "x"
2937 then
2938 AC_MSG_NOTICE([netapp LDFLAGS: $LIBNETAPP_LDFLAGS])
2939 fi
2940
2941 if test "x$LIBNETAPP_LIBS" = "x"
2942 then
3dd0749c 2943 LIBNETAPP_LIBS="-lpthread -lxml -ladt -lssl -lm -lcrypto -lz"
9f8962fb
FF
2944 fi
2945 AC_MSG_NOTICE([netapp LIBS: $LIBNETAPP_LIBS])
2946
2947 AC_CHECK_LIB(netapp, na_server_invoke_elem,
2948 [with_libnetapp="yes"],
2949 [with_libnetapp="no (symbol na_server_invoke_elem not found)"],
2950 [$LIBNETAPP_LIBS])
df32b9d5 2951 LIBNETAPP_LIBS="-lnetapp $LIBNETAPP_LIBS"
9f8962fb
FF
2952fi
2953
2954CPPFLAGS="$SAVE_CPPFLAGS"
2955LDFLAGS="$SAVE_LDFLAGS"
2956
2957if test "x$with_libnetapp" = "xyes"
2958then
2959 AC_DEFINE(HAVE_LIBNETAPP, 1, [Define to 1 if you have the netapp library (-lnetapp).])
2960fi
2961
2962AC_SUBST(LIBNETAPP_CPPFLAGS)
2963AC_SUBST(LIBNETAPP_LDFLAGS)
2964AC_SUBST(LIBNETAPP_LIBS)
2965AM_CONDITIONAL(BUILD_WITH_LIBNETAPP, test "x$with_libnetapp" = "xyes")
2966# }}}
2967
975e7fd6
FF
2968# --with-libnetsnmp {{{
2969with_snmp_config="net-snmp-config"
2970with_snmp_cflags=""
2971with_snmp_libs=""
2972AC_ARG_WITH(libnetsnmp, [AS_HELP_STRING([--with-libnetsnmp@<:@=PREFIX@:>@], [Path to the Net-SNMPD library.])],
2973[
2974 if test "x$withval" = "xno"
2975 then
2976 with_libnetsnmp="no"
2977 else if test "x$withval" = "xyes"
2978 then
2979 with_libnetsnmp="yes"
2980 else
2981 if test -x "$withval"
2982 then
2983 with_snmp_config="$withval"
2984 with_libnetsnmp="yes"
2985 else
2986 with_snmp_config="$withval/bin/net-snmp-config"
2987 with_libnetsnmp="yes"
2988 fi
2989 fi; fi
2990],
2991[with_libnetsnmp="yes"])
2992if test "x$with_libnetsnmp" = "xyes"
2993then
2994 with_snmp_cflags=`$with_snmp_config --cflags 2>/dev/null`
2995 snmp_config_status=$?
2996
2997 if test $snmp_config_status -ne 0
2998 then
2999 with_libnetsnmp="no ($with_snmp_config failed)"
3000 else
3001 SAVE_CPPFLAGS="$CPPFLAGS"
3002 CPPFLAGS="$CPPFLAGS $with_snmp_cflags"
630e3bba 3003
975e7fd6
FF
3004 AC_CHECK_HEADERS(net-snmp/net-snmp-config.h, [], [with_libnetsnmp="no (net-snmp/net-snmp-config.h not found)"])
3005
3006 CPPFLAGS="$SAVE_CPPFLAGS"
3007 fi
3008fi
3009if test "x$with_libnetsnmp" = "xyes"
3010then
3011 with_snmp_libs=`$with_snmp_config --libs 2>/dev/null`
3012 snmp_config_status=$?
3013
3014 if test $snmp_config_status -ne 0
3015 then
3016 with_libnetsnmp="no ($with_snmp_config failed)"
3017 else
3018 AC_CHECK_LIB(netsnmp, init_snmp,
3019 [with_libnetsnmp="yes"],
3020 [with_libnetsnmp="no (libnetsnmp not found)"],
3021 [$with_snmp_libs])
3022 fi
3023fi
3024if test "x$with_libnetsnmp" = "xyes"
3025then
3026 BUILD_WITH_LIBSNMP_CFLAGS="$with_snmp_cflags"
3027 BUILD_WITH_LIBSNMP_LIBS="$with_snmp_libs"
3028 AC_SUBST(BUILD_WITH_LIBSNMP_CFLAGS)
3029 AC_SUBST(BUILD_WITH_LIBSNMP_LIBS)
3030fi
3031AM_CONDITIONAL(BUILD_WITH_LIBNETSNMP, test "x$with_libnetsnmp" = "xyes")
3032# }}}
3033
8757c918 3034# --with-liboconfig {{{
c64b3f3b
SH
3035with_own_liboconfig="no"
3036liboconfig_LDFLAGS="$LDFLAGS"
3037liboconfig_CPPFLAGS="$CPPFLAGS"
3038AC_ARG_WITH(liboconfig, [AS_HELP_STRING([--with-liboconfig@<:@=PREFIX@:>@], [Path to liboconfig.])],
3039[
3040 if test "x$withval" != "xno" && test "x$withval" != "xyes"
3041 then
3042 if test -d "$withval/lib"
3043 then
3044 liboconfig_LDFLAGS="$LDFLAGS -L$withval/lib"
3045 fi
3046 if test -d "$withval/include"
3047 then
3048 liboconfig_CPPFLAGS="$CPPFLAGS -I$withval/include"
3049 fi
3050 fi
3051 if test "x$withval" = "xno"
3052 then
3053 AC_MSG_ERROR("liboconfig is required")
3054 fi
3055],
3056[
3057 with_liboconfig="yes"
3058])
3059
3060save_LDFLAGS="$LDFLAGS"
3061save_CPPFLAGS="$CPPFLAGS"
3062LDFLAGS="$liboconfig_LDFLAGS"
3063CPPFLAGS="$liboconfig_CPPFLAGS"
3064AC_CHECK_LIB(oconfig, oconfig_parse_fh,
3065[
3066 with_liboconfig="yes"
3067 with_own_liboconfig="no"
3068],
3069[
3070 with_liboconfig="yes"
3071 with_own_liboconfig="yes"
3072 LDFLAGS="$save_LDFLAGS"
3073 CPPFLAGS="$save_CPPFLAGS"
3074])
3075
3076AM_CONDITIONAL(BUILD_WITH_OWN_LIBOCONFIG, test "x$with_own_liboconfig" = "xyes")
3077if test "x$with_own_liboconfig" = "xyes"
3078then
3079 with_liboconfig="yes (shipped version)"
3080fi
8757c918 3081# }}}
c64b3f3b 3082
8757c918 3083# --with-liboping {{{
6997fb33
FF
3084AC_ARG_WITH(liboping, [AS_HELP_STRING([--with-liboping@<:@=PREFIX@:>@], [Path to liboping.])],
3085[
0f60795b
FF
3086 if test "x$withval" = "xyes"
3087 then
3088 with_liboping="yes"
3089 else if test "x$withval" = "xno"
3090 then
3091 with_liboping="no"
3092 else
3093 with_liboping="yes"
3094 LIBOPING_CPPFLAGS="$LIBOPING_CPPFLAGS -I$withval/include"
3095 LIBOPING_LDFLAGS="$LIBOPING_LDFLAGS -L$withval/lib"
3096 fi; fi
3097],
3098[with_liboping="yes"])
3099
3100SAVE_CPPFLAGS="$CPPFLAGS"
3101SAVE_LDFLAGS="$LDFLAGS"
3102
3103CPPFLAGS="$CPPFLAGS $LIBOPING_CPPFLAGS"
3104LDFLAGS="$LDFLAGS $LIBOPING_LDFLAGS"
3105
3106if test "x$with_liboping" = "xyes"
3107then
3108 if test "x$LIBOPING_CPPFLAGS" != "x"
6997fb33 3109 then
0f60795b 3110 AC_MSG_NOTICE([liboping CPPFLAGS: $LIBOPING_CPPFLAGS])
6997fb33 3111 fi
0f60795b
FF
3112 AC_CHECK_HEADERS(oping.h,
3113 [with_liboping="yes"],
67d4532f 3114 [with_liboping="no (oping.h not found)"])
0f60795b
FF
3115fi
3116if test "x$with_liboping" = "xyes"
3117then
3118 if test "x$LIBOPING_LDFLAGS" != "x"
fb713675 3119 then
0f60795b
FF
3120 AC_MSG_NOTICE([liboping LDFLAGS: $LIBOPING_LDFLAGS])
3121 fi
3122 AC_CHECK_LIB(oping, ping_construct,
3123 [with_liboping="yes"],
3124 [with_liboping="no (symbol 'ping_construct' not found)"])
3125fi
3126
3127CPPFLAGS="$SAVE_CPPFLAGS"
3128LDFLAGS="$SAVE_LDFLAGS"
6997fb33
FF
3129
3130if test "x$with_liboping" = "xyes"
3131then
0f60795b
FF
3132 BUILD_WITH_LIBOPING_CPPFLAGS="$LIBOPING_CPPFLAGS"
3133 BUILD_WITH_LIBOPING_LDFLAGS="$LIBOPING_LDFLAGS"
3134 AC_SUBST(BUILD_WITH_LIBOPING_CPPFLAGS)
3135 AC_SUBST(BUILD_WITH_LIBOPING_LDFLAGS)
6997fb33
FF
3136fi
3137AM_CONDITIONAL(BUILD_WITH_LIBOPING, test "x$with_liboping" = "xyes")
8757c918 3138# }}}
6997fb33 3139
c87da662 3140# --with-oracle {{{
a737ed74
FF
3141with_oracle_cppflags=""
3142with_oracle_libs=""
3143AC_ARG_WITH(oracle, [AS_HELP_STRING([--with-oracle@<:@=ORACLE_HOME@:>@], [Path to Oracle.])],
3144[
3145 if test "x$withval" = "xyes"
3146 then
3147 if test "x$ORACLE_HOME" = "x"
3148 then
3149 AC_MSG_WARN([Use of the Oracle library has been forced, but the environment variable ORACLE_HOME is not set.])
3150 fi
3151 with_oracle="yes"
3152 else if test "x$withval" = "xno"
3153 then
3154 with_oracle="no"
3155 else
3156 with_oracle="yes"
3157 ORACLE_HOME="$withval"
3158 fi; fi
3159],
3160[
3161 if test "x$ORACLE_HOME" = "x"
3162 then
3163 with_oracle="no (ORACLE_HOME is not set)"
3164 else
3165 with_oracle="yes"
3166 fi
3167])
3168if test "x$ORACLE_HOME" != "x"
3169then
3170 with_oracle_cppflags="-I$ORACLE_HOME/rdbms/public"
3171
3172 if test -e "$ORACLE_HOME/lib/ldflags"
3173 then
3174 with_oracle_libs=`cat "$ORACLE_HOME/lib/ldflags"`
3175 fi
3176 #with_oracle_libs="-L$ORACLE_HOME/lib $with_oracle_libs -lclntsh"
3177 with_oracle_libs="-L$ORACLE_HOME/lib -lclntsh"
3178fi
3179if test "x$with_oracle" = "xyes"
3180then
3181 SAVE_CPPFLAGS="$CPPFLAGS"
3182 CPPFLAGS="$CPPFLAGS $with_oracle_cppflags"
3183
3184 AC_CHECK_HEADERS(oci.h, [with_oracle="yes"], [with_oracle="no (oci.h not found)"])
3185
3186 CPPFLAGS="$SAVE_CPPFLAGS"
3187fi
3188if test "x$with_oracle" = "xyes"
3189then
3190 SAVE_CPPFLAGS="$CPPFLAGS"
f7159bab 3191 SAVE_LIBS="$LIBS"
a737ed74 3192 CPPFLAGS="$CPPFLAGS $with_oracle_cppflags"
3b502dfd 3193 LIBS="$LIBS $with_oracle_libs"
a737ed74
FF
3194
3195 AC_CHECK_FUNC(OCIEnvCreate, [with_oracle="yes"], [with_oracle="no (Symbol 'OCIEnvCreate' not found)"])
3196
3197 CPPFLAGS="$SAVE_CPPFLAGS"
3b502dfd 3198 LIBS="$SAVE_LIBS"
a737ed74
FF
3199fi
3200if test "x$with_oracle" = "xyes"
3201then
3202 BUILD_WITH_ORACLE_CFLAGS="$with_oracle_cppflags"
3203 BUILD_WITH_ORACLE_LIBS="$with_oracle_libs"
3204 AC_SUBST(BUILD_WITH_ORACLE_CFLAGS)
3205 AC_SUBST(BUILD_WITH_ORACLE_LIBS)
3206fi
c87da662 3207# }}}
a737ed74 3208
8757c918 3209# --with-libowcapi {{{
11ba6e7c
FF
3210with_libowcapi_cppflags=""
3211with_libowcapi_libs="-lowcapi"
3212AC_ARG_WITH(libowcapi, [AS_HELP_STRING([--with-libowcapi@<:@=PREFIX@:>@], [Path to libowcapi.])],
3213[
3214 if test "x$withval" != "xno" && test "x$withval" != "xyes"
3215 then
3216 with_libowcapi_cppflags="-I$withval/include"
3217 with_libowcapi_libs="-L$withval/lib -lowcapi"
3218 with_libowcapi="yes"
3219 else
3220 with_libowcapi="$withval"
3221 fi
3222],
3223[
3224 with_libowcapi="yes"
3225])
3226if test "x$with_libowcapi" = "xyes"
3227then
3228 SAVE_CPPFLAGS="$CPPFLAGS"
3229 CPPFLAGS="$with_libowcapi_cppflags"
630e3bba 3230
11ba6e7c
FF
3231 AC_CHECK_HEADERS(owcapi.h, [with_libowcapi="yes"], [with_libowcapi="no (owcapi.h not found)"])
3232
3233 CPPFLAGS="$SAVE_CPPFLAGS"
3234fi
3235if test "x$with_libowcapi" = "xyes"
3236then
3237 SAVE_LDFLAGS="$LDFLAGS"
3238 SAVE_CPPFLAGS="$CPPFLAGS"
3239 LDFLAGS="$with_libowcapi_libs"
3240 CPPFLAGS="$with_libowcapi_cppflags"
630e3bba 3241
11ba6e7c
FF
3242 AC_CHECK_LIB(owcapi, OW_get, [with_libowcapi="yes"], [with_libowcapi="no (libowcapi not found)"])
3243
3244 LDFLAGS="$SAVE_LDFLAGS"
3245 CPPFLAGS="$SAVE_CPPFLAGS"
3246fi
3247if test "x$with_libowcapi" = "xyes"
3248then
3249 BUILD_WITH_LIBOWCAPI_CPPFLAGS="$with_libowcapi_cppflags"
3250 BUILD_WITH_LIBOWCAPI_LIBS="$with_libowcapi_libs"
3251 AC_SUBST(BUILD_WITH_LIBOWCAPI_CPPFLAGS)
3252 AC_SUBST(BUILD_WITH_LIBOWCAPI_LIBS)
3253fi
8757c918 3254# }}}
11ba6e7c 3255
8757c918 3256# --with-libpcap {{{
dd7a9bc9
FF
3257AC_ARG_WITH(libpcap, [AS_HELP_STRING([--with-libpcap@<:@=PREFIX@:>@], [Path to libpcap.])],
3258[
3259 if test "x$withval" != "xno" && test "x$withval" != "xyes"
3260 then
3261 LDFLAGS="$LDFLAGS -L$withval/lib"
3262 CPPFLAGS="$CPPFLAGS -I$withval/include"
3263 with_libpcap="yes"
fb713675
SH
3264 else
3265 with_libpcap="$withval"
dd7a9bc9
FF
3266 fi
3267],
3268[
3269 with_libpcap="yes"
3270])
3271if test "x$with_libpcap" = "xyes"
3272then
3273 AC_CHECK_LIB(pcap, pcap_open_live,
3274 [
3275 AC_DEFINE(HAVE_LIBPCAP, 1, [Define to 1 if you have the pcap library (-lpcap).])
3276 ], [with_libpcap="no (libpcap not found)"])
3277fi
3278if test "x$with_libpcap" = "xyes"
3279then
589c5f25
FF
3280 AC_CHECK_HEADERS(pcap.h,,
3281 [with_libpcap="no (pcap.h not found)"])
dd7a9bc9
FF
3282fi
3283if test "x$with_libpcap" = "xyes"
3284then
135fcb2f
FF
3285 AC_CHECK_HEADERS(pcap-bpf.h,,
3286 [with_libpcap="no (pcap-bpf.h not found)"])
dd7a9bc9 3287fi
5fea70db
MF
3288if test "x$with_libpcap" = "xyes"
3289then
3290 AC_CACHE_CHECK([whether libpcap has PCAP_ERROR_IFACE_NOT_UP],
3291 [c_cv_libpcap_have_pcap_error_iface_not_up],
3292 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
3293[[[
3294#include <pcap.h>
3295]]],
3296[[[
3297 int val = PCAP_ERROR_IFACE_NOT_UP;
39d06560 3298 return(val);
5fea70db
MF
3299]]]
3300 )],
3301 [c_cv_libpcap_have_pcap_error_iface_not_up="yes"],
3302 [c_cv_libpcap_have_pcap_error_iface_not_up="no"]))
3303fi
3304if test "x$c_cv_libpcap_have_pcap_error_iface_not_up" != "xyes"
3305then
3306 with_libpcap="no (pcap.h misses PCAP_ERROR_IFACE_NOT_UP)"
3307fi
92f43553 3308AM_CONDITIONAL(BUILD_WITH_LIBPCAP, test "x$with_libpcap" = "xyes")
8757c918 3309# }}}
dd7a9bc9 3310
975e7fd6
FF
3311# --with-libperl {{{
3312perl_interpreter="perl"
3313AC_ARG_WITH(libperl, [AS_HELP_STRING([--with-libperl@<:@=PREFIX@:>@], [Path to libperl.])],
a1dd93a2 3314[
aa4d1f79 3315 if test -f "$withval" && test -x "$withval"
975e7fd6
FF
3316 then
3317 perl_interpreter="$withval"
3318 with_libperl="yes"
3319 else if test "x$withval" != "xno" && test "x$withval" != "xyes"
a1dd93a2
OK
3320 then
3321 LDFLAGS="$LDFLAGS -L$withval/lib"
975e7fd6
FF
3322 CPPFLAGS="$CPPFLAGS -I$withval/include"
3323 perl_interpreter="$withval/bin/perl"
3324 with_libperl="yes"
a1dd93a2 3325 else
975e7fd6
FF
3326 with_libperl="$withval"
3327 fi; fi
a1dd93a2
OK
3328],
3329[
975e7fd6 3330 with_libperl="yes"
a432a981 3331])
a459afe5 3332
f1075c22
SH
3333AC_MSG_CHECKING([for perl])
3334perl_interpreter=`which "$perl_interpreter" 2> /dev/null`
3335if test -x "$perl_interpreter"
3336then
a791a086 3337 AC_MSG_RESULT([yes ($perl_interpreter)])
f1075c22
SH
3338else
3339 perl_interpreter=""
3340 AC_MSG_RESULT([no])
3341fi
3342
a459afe5
SH
3343AC_SUBST(PERL, "$perl_interpreter")
3344
d45c77ca
FF
3345if test "x$with_libperl" = "xyes" \
3346 && test -n "$perl_interpreter"
a432a981 3347then
4519a3ef 3348 SAVE_CFLAGS="$CFLAGS"
cd15f837 3349 SAVE_LIBS="$LIBS"
068e095e
DM
3350dnl ARCHFLAGS="" -> disable multi -arch on OSX (see Config_heavy.pl:fetch_string)
3351 PERL_CFLAGS=`ARCHFLAGS="" $perl_interpreter -MExtUtils::Embed -e ccopts`
cd15f837 3352 PERL_LIBS=`ARCHFLAGS="" $perl_interpreter -MExtUtils::Embed -e ldopts`
3acac9b0 3353 CFLAGS="$CFLAGS $PERL_CFLAGS"
cd15f837 3354 LIBS="$LIBS $PERL_LIBS"
a432a981
FF
3355
3356 AC_CACHE_CHECK([for libperl],
5f5da97b 3357 [c_cv_have_libperl],
e0552af6
FF
3358 AC_LINK_IFELSE([AC_LANG_PROGRAM(
3359[[[
0be8165a 3360#define PERL_NO_GET_CONTEXT
a432a981
FF
3361#include <EXTERN.h>
3362#include <perl.h>
3363#include <XSUB.h>
e0552af6
FF
3364]]],
3365[[[
0be8165a
SH
3366 dTHX;
3367 load_module (PERL_LOADMOD_NOIMPORT,
3acac9b0 3368 newSVpv ("Collectd::Plugin::FooBar", 24),
a432a981 3369 Nullsv);
e0552af6
FF
3370]]]
3371 )],
5f5da97b
SH
3372 [c_cv_have_libperl="yes"],
3373 [c_cv_have_libperl="no"]
a432a981
FF
3374 )
3375 )
3376
5f5da97b 3377 if test "x$c_cv_have_libperl" = "xyes"
a432a981
FF
3378 then
3379 AC_DEFINE(HAVE_LIBPERL, 1, [Define if libperl is present and usable.])
3acac9b0 3380 AC_SUBST(PERL_CFLAGS)
cd15f837 3381 AC_SUBST(PERL_LIBS)
a432a981
FF
3382 else
3383 with_libperl="no"
3384 fi
3385
4519a3ef 3386 CFLAGS="$SAVE_CFLAGS"
cd15f837 3387 LIBS="$SAVE_LIBS"
f1075c22
SH
3388else if test -z "$perl_interpreter"; then
3389 with_libperl="no (no perl interpreter found)"
5f5da97b 3390 c_cv_have_libperl="no"
f1075c22 3391fi; fi
a432a981
FF
3392AM_CONDITIONAL(BUILD_WITH_LIBPERL, test "x$with_libperl" = "xyes")
3393
28785769
SH
3394if test "x$with_libperl" = "xyes"
3395then
4519a3ef 3396 SAVE_CFLAGS="$CFLAGS"
cd15f837 3397 SAVE_LIBS="$LIBS"
28785769 3398 CFLAGS="$CFLAGS $PERL_CFLAGS"
cd15f837 3399 LIBS="$LIBS $PERL_LIBS"
28785769
SH
3400
3401 AC_CACHE_CHECK([if perl supports ithreads],
5f5da97b 3402 [c_cv_have_perl_ithreads],
e0552af6
FF
3403 AC_LINK_IFELSE([AC_LANG_PROGRAM(
3404[[[
28785769
SH
3405#include <EXTERN.h>
3406#include <perl.h>
3407#include <XSUB.h>
3408
3409#if !defined(USE_ITHREADS)
3410# error "Perl does not support ithreads!"
3411#endif /* !defined(USE_ITHREADS) */
e0552af6
FF
3412]]],
3413[[[ ]]]
3414 )],
5f5da97b
SH
3415 [c_cv_have_perl_ithreads="yes"],
3416 [c_cv_have_perl_ithreads="no"]
28785769
SH
3417 )
3418 )
3419
5f5da97b 3420 if test "x$c_cv_have_perl_ithreads" = "xyes"
28785769
SH
3421 then
3422 AC_DEFINE(HAVE_PERL_ITHREADS, 1, [Define if Perl supports ithreads.])
3423 fi
3424
4519a3ef 3425 CFLAGS="$SAVE_CFLAGS"
cd15f837 3426 LIBS="$SAVE_LIBS"
28785769 3427fi
037645b1
SH
3428
3429if test "x$with_libperl" = "xyes"
3430then
4519a3ef 3431 SAVE_CFLAGS="$CFLAGS"
cd15f837 3432 SAVE_LIBS="$LIBS"
037645b1
SH
3433 # trigger an error if Perl_load_module*() uses __attribute__nonnull__(3)
3434 # (see issues #41 and #42)
3435 CFLAGS="$CFLAGS $PERL_CFLAGS -Wall -Werror"
cd15f837 3436 LIBS="$LIBS $PERL_LIBS"
037645b1
SH
3437
3438 AC_CACHE_CHECK([for broken Perl_load_module()],
b1d3856d 3439 [c_cv_have_broken_perl_load_module],
e0552af6
FF
3440 AC_LINK_IFELSE([AC_LANG_PROGRAM(
3441[[[
037645b1
SH
3442#define PERL_NO_GET_CONTEXT
3443#include <EXTERN.h>
3444#include <perl.h>
3445#include <XSUB.h>
e0552af6
FF
3446]]],
3447[[[
037645b1
SH
3448 dTHX;
3449 load_module (PERL_LOADMOD_NOIMPORT,
3450 newSVpv ("Collectd::Plugin::FooBar", 24),
3451 Nullsv);
e0552af6
FF
3452]]]
3453 )],
b1d3856d
FF
3454 [c_cv_have_broken_perl_load_module="no"],
3455 [c_cv_have_broken_perl_load_module="yes"]
037645b1
SH
3456 )
3457 )
3458
4519a3ef 3459 CFLAGS="$SAVE_CFLAGS"
cd15f837 3460 LIBS="$SAVE_LIBS"
037645b1 3461fi
61c19cc1 3462AM_CONDITIONAL(HAVE_BROKEN_PERL_LOAD_MODULE,
b1d3856d 3463 test "x$c_cv_have_broken_perl_load_module" = "xyes")
388dfe0e
SH
3464
3465if test "x$with_libperl" = "xyes"
3466then
4519a3ef 3467 SAVE_CFLAGS="$CFLAGS"
cd15f837 3468 SAVE_LIBS="$LIBS"
388dfe0e 3469 CFLAGS="$CFLAGS $PERL_CFLAGS"
cd15f837 3470 LIBS="$LIBS $PERL_LIBS"
388dfe0e
SH
3471
3472 AC_CHECK_MEMBER(
3473 [struct mgvtbl.svt_local],
3474 [have_struct_mgvtbl_svt_local="yes"],
3475 [have_struct_mgvtbl_svt_local="no"],
3476 [
3477#include <EXTERN.h>
3478#include <perl.h>
3479#include <XSUB.h>
3480 ])
3481
3482 if test "x$have_struct_mgvtbl_svt_local" = "xyes"
3483 then
3484 AC_DEFINE(HAVE_PERL_STRUCT_MGVTBL_SVT_LOCAL, 1,
3485 [Define if Perl's struct mgvtbl has member svt_local.])
3486 fi
3487
4519a3ef 3488 CFLAGS="$SAVE_CFLAGS"
cd15f837 3489 LIBS="$SAVE_LIBS"
388dfe0e 3490fi
8757c918 3491# }}}
28785769 3492
975e7fd6
FF
3493# --with-libpq {{{
3494with_pg_config="pg_config"
3495with_libpq_includedir=""
3496with_libpq_libdir=""
3497with_libpq_cppflags=""
3498with_libpq_ldflags=""
3499AC_ARG_WITH(libpq, [AS_HELP_STRING([--with-libpq@<:@=PREFIX@:>@],
3500 [Path to libpq.])],
c02ba630 3501[
7f45f5b3 3502 if test "x$withval" = "xno"
c39428ae 3503 then
975e7fd6 3504 with_libpq="no"
ae03d749 3505 else if test "x$withval" = "xyes"
c02ba630 3506 then
975e7fd6 3507 with_libpq="yes"
c39428ae 3508 else
975e7fd6 3509 if test -f "$withval" && test -x "$withval";
c39428ae 3510 then
975e7fd6
FF
3511 with_pg_config="$withval"
3512 else if test -x "$withval/bin/pg_config"
3513 then
3514 with_pg_config="$withval/bin/pg_config"
3515 fi; fi
3516 with_libpq="yes"
c39428ae 3517 fi; fi
c02ba630 3518],
975e7fd6
FF
3519[
3520 with_libpq="yes"
3521])
3522if test "x$with_libpq" = "xyes"
c02ba630 3523then
975e7fd6
FF
3524 with_libpq_includedir=`$with_pg_config --includedir 2> /dev/null`
3525 pg_config_status=$?
c39428ae 3526
975e7fd6 3527 if test $pg_config_status -eq 0
c39428ae 3528 then
975e7fd6
FF
3529 if test -n "$with_libpq_includedir"; then
3530 for dir in $with_libpq_includedir; do
3531 with_libpq_cppflags="$with_libpq_cppflags -I$dir"
3532 done
3533 fi
c39428ae 3534 else
975e7fd6 3535 AC_MSG_WARN([$with_pg_config returned with status $pg_config_status])
c39428ae 3536 fi
975e7fd6
FF
3537
3538 SAVE_CPPFLAGS="$CPPFLAGS"
3539 CPPFLAGS="$CPPFLAGS $with_libpq_cppflags"
3540
3541 AC_CHECK_HEADERS(libpq-fe.h, [],
3542 [with_libpq="no (libpq-fe.h not found)"], [])
3543
3544 CPPFLAGS="$SAVE_CPPFLAGS"
c02ba630 3545fi
975e7fd6 3546if test "x$with_libpq" = "xyes"
c02ba630 3547then
975e7fd6
FF
3548 with_libpq_libdir=`$with_pg_config --libdir 2> /dev/null`
3549 pg_config_status=$?
c39428ae 3550
975e7fd6 3551 if test $pg_config_status -eq 0
c39428ae 3552 then
975e7fd6
FF
3553 if test -n "$with_libpq_libdir"; then
3554 for dir in $with_libpq_libdir; do
3555 with_libpq_ldflags="$with_libpq_ldflags -L$dir"
3556 done
3557 fi
c39428ae 3558 else
975e7fd6 3559 AC_MSG_WARN([$with_pg_config returned with status $pg_config_status])
c39428ae 3560 fi
975e7fd6
FF
3561
3562 SAVE_LDFLAGS="$LDFLAGS"
3563 LDFLAGS="$LDFLAGS $with_libpq_ldflags"
3564
3565 AC_CHECK_LIB(pq, PQconnectdb,
3566 [with_libpq="yes"],
3567 [with_libpq="no (symbol 'PQconnectdb' not found)"])
3568
351026b0
DM
3569 AC_CHECK_LIB(pq, PQserverVersion,
3570 [with_libpq="yes"],
3571 [with_libpq="no (symbol 'PQserverVersion' not found)"])
3572
975e7fd6 3573 LDFLAGS="$SAVE_LDFLAGS"
c39428ae 3574fi
975e7fd6 3575if test "x$with_libpq" = "xyes"
c39428ae 3576then
975e7fd6
FF
3577 BUILD_WITH_LIBPQ_CPPFLAGS="$with_libpq_cppflags"
3578 BUILD_WITH_LIBPQ_LDFLAGS="$with_libpq_ldflags"
3579 AC_SUBST(BUILD_WITH_LIBPQ_CPPFLAGS)
3580 AC_SUBST(BUILD_WITH_LIBPQ_LDFLAGS)
c02ba630 3581fi
975e7fd6 3582AM_CONDITIONAL(BUILD_WITH_LIBPQ, test "x$with_libpq" = "xyes")
8757c918 3583# }}}
c02ba630 3584
975e7fd6
FF
3585# --with-libpthread {{{
3586AC_ARG_WITH(libpthread, [AS_HELP_STRING([--with-libpthread=@<:@=PREFIX@:>@], [Path to libpthread.])],
3587[ if test "x$withval" != "xno" \
3588 && test "x$withval" != "xyes"
bc2d9402 3589 then
975e7fd6
FF
3590 LDFLAGS="$LDFLAGS -L$withval/lib"
3591 CPPFLAGS="$CPPFLAGS -I$withval/include"
3592 with_libpthread="yes"
bcb24183 3593 else
975e7fd6
FF
3594 if test "x$withval" = "xno"
3595 then
3596 with_libpthread="no (disabled)"
3597 fi
bc2d9402 3598 fi
975e7fd6
FF
3599], [with_libpthread="yes"])
3600if test "x$with_libpthread" = "xyes"
3fc0feb6 3601then
975e7fd6 3602 AC_CHECK_LIB(pthread, pthread_create, [with_libpthread="yes"], [with_libpthread="no (libpthread not found)"], [])
3fc0feb6 3603fi
24cae1ec 3604
975e7fd6 3605if test "x$with_libpthread" = "xyes"
1398c68c 3606then
975e7fd6 3607 AC_CHECK_HEADERS(pthread.h,, [with_libpthread="no (pthread.h not found)"])
1398c68c 3608fi
975e7fd6
FF
3609if test "x$with_libpthread" = "xyes"
3610then
3611 collect_pthread=1
3612else
3613 collect_pthread=0
3614fi
3615AC_DEFINE_UNQUOTED(HAVE_LIBPTHREAD, [$collect_pthread],
3616 [Wether or not to use pthread (POSIX threads) library])
3617AM_CONDITIONAL(BUILD_WITH_LIBPTHREAD, test "x$with_libpthread" = "xyes")
3618# }}}
3619
b8c32e9f
FF
3620# --with-python {{{
3621with_python_prog=""
3622with_python_path="$PATH"
3623AC_ARG_WITH(python, [AS_HELP_STRING([--with-python@<:@=PREFIX@:>@], [Path to the python interpreter.])],
3624[
3625 if test "x$withval" = "xyes" || test "x$withval" = "xno"
3626 then
3627 with_python="$withval"
3628 else if test -x "$withval"
3629 then
3630 with_python_prog="$withval"
3631 with_python_path="`dirname \"$withval\"`$PATH_SEPARATOR$with_python_path"
3632 with_python="yes"
3633 else if test -d "$withval"
3634 then
3635 with_python_path="$withval$PATH_SEPARATOR$with_python_path"
3636 with_python="yes"
3637 else
3638 AC_MSG_WARN([Argument not recognized: $withval])
3639 fi; fi; fi
3640], [with_python="yes"])
3641
3642SAVE_PATH="$PATH"
68362bd8
FF
3643SAVE_CPPFLAGS="$CPPFLAGS"
3644SAVE_LDFLAGS="$LDFLAGS"
3645SAVE_LIBS="$LIBS"
3646
b8c32e9f
FF
3647PATH="$with_python_path"
3648
3649if test "x$with_python" = "xyes" && test "x$with_python_prog" = "x"
3650then
3651 AC_MSG_CHECKING([for python])
3652 with_python_prog="`which python 2>/dev/null`"
3653 if test "x$with_python_prog" = "x"
3654 then
3655 AC_MSG_RESULT([not found])
3656 with_python="no (interpreter not found)"
3657 else
3658 AC_MSG_RESULT([$with_python_prog])
3659 fi
3660fi
3661
b8c32e9f
FF
3662if test "x$with_python" = "xyes"
3663then
3664 AC_MSG_CHECKING([for Python CPPFLAGS])
b9934400 3665 python_include_path=`echo "import distutils.sysconfig;import sys;sys.stdout.write(distutils.sysconfig.get_python_inc())" | "$with_python_prog" 2>&1`
b8c32e9f
FF
3666 python_config_status=$?
3667
3668 if test "$python_config_status" -ne 0 || test "x$python_include_path" = "x"
3669 then
563b2bdd 3670 AC_MSG_RESULT([failed with status $python_config_status (output: $python_include_path)])
b8c32e9f
FF
3671 with_python="no"
3672 else
3673 AC_MSG_RESULT([$python_include_path])
3674 fi
3675fi
3676
68362bd8
FF
3677if test "x$with_python" = "xyes"
3678then
3679 CPPFLAGS="-I$python_include_path $CPPFLAGS"
3680 AC_CHECK_HEADERS(Python.h,
3681 [with_python="yes"],
3682 [with_python="no ('Python.h' not found)"])
3683fi
3684
b8c32e9f
FF
3685if test "x$with_python" = "xyes"
3686then
3687 AC_MSG_CHECKING([for Python LDFLAGS])
b9934400 3688 python_library_path=`echo "import distutils.sysconfig;import sys;sys.stdout.write(distutils.sysconfig.get_config_vars(\"LIBDIR\").__getitem__(0))" | "$with_python_prog" 2>&1`
b8c32e9f
FF
3689 python_config_status=$?
3690
3691 if test "$python_config_status" -ne 0 || test "x$python_library_path" = "x"
3692 then
563b2bdd 3693 AC_MSG_RESULT([failed with status $python_config_status (output: $python_library_path)])
b8c32e9f
FF
3694 with_python="no"
3695 else
3696 AC_MSG_RESULT([$python_library_path])
3697 fi
3698fi
3699
3700if test "x$with_python" = "xyes"
3701then
3702 AC_MSG_CHECKING([for Python LIBS])
b9934400 3703 python_library_flags=`echo "import distutils.sysconfig;import sys;sys.stdout.write(distutils.sysconfig.get_config_vars(\"BLDLIBRARY\").__getitem__(0))" | "$with_python_prog" 2>&1`
b8c32e9f
FF
3704 python_config_status=$?
3705
3706 if test "$python_config_status" -ne 0 || test "x$python_library_flags" = "x"
3707 then
563b2bdd 3708 AC_MSG_RESULT([failed with status $python_config_status (output: $python_library_flags)])
b8c32e9f
FF
3709 with_python="no"
3710 else
3711 AC_MSG_RESULT([$python_library_flags])
3712 fi
3713fi
3714
68362bd8
FF
3715if test "x$with_python" = "xyes"
3716then
3717 LDFLAGS="-L$python_library_path $LDFLAGS"
3718 LIBS="$python_library_flags $LIBS"
3719
3720 AC_CHECK_FUNC(PyObject_CallFunction,
3721 [with_python="yes"],
3722 [with_python="no (Symbol 'PyObject_CallFunction' not found)"])
3723fi
3724
3725PATH="$SAVE_PATH"
3726CPPFLAGS="$SAVE_CPPFLAGS"
3727LDFLAGS="$SAVE_LDFLAGS"
3728LIBS="$SAVE_LIBS"
3729
b8c32e9f
FF
3730if test "x$with_python" = "xyes"
3731then
3732 BUILD_WITH_PYTHON_CPPFLAGS="-I$python_include_path"
3733 BUILD_WITH_PYTHON_LDFLAGS="-L$python_library_path"
3734 BUILD_WITH_PYTHON_LIBS="$python_library_flags"
3735 AC_SUBST(BUILD_WITH_PYTHON_CPPFLAGS)
3736 AC_SUBST(BUILD_WITH_PYTHON_LDFLAGS)
3737 AC_SUBST(BUILD_WITH_PYTHON_LIBS)
3738fi
3739# }}} --with-python
3740
3e77c9e8 3741# --with-librabbitmq {{{
c1c5087f
RK
3742with_librabbitmq_cppflags="-I/usr/local/include"
3743with_librabbitmq_ldflags="-L/usr/local/lib"
3e77c9e8
FF
3744AC_ARG_WITH(librabbitmq, [AS_HELP_STRING([--with-librabbitmq@<:@=PREFIX@:>@], [Path to librabbitmq.])],
3745[
3746 if test "x$withval" != "xno" && test "x$withval" != "xyes"
3747 then
3748 with_librabbitmq_cppflags="-I$withval/include"
3749 with_librabbitmq_ldflags="-L$withval/lib"
3750 with_librabbitmq="yes"
3751 else
3752 with_librabbitmq="$withval"
3753 fi
3754],
3755[
3756 with_librabbitmq="yes"
3757])
8991abf9
FF
3758SAVE_CPPFLAGS="$CPPFLAGS"
3759SAVE_LDFLAGS="$LDFLAGS"
3760CPPFLAGS="$CPPFLAGS $with_librabbitmq_cppflags"
3761LDFLAGS="$LDFLAGS $with_librabbitmq_ldflags"
3e77c9e8
FF
3762if test "x$with_librabbitmq" = "xyes"
3763then
3e77c9e8 3764 AC_CHECK_HEADERS(amqp.h, [with_librabbitmq="yes"], [with_librabbitmq="no (amqp.h not found)"])
3e77c9e8
FF
3765fi
3766if test "x$with_librabbitmq" = "xyes"
3767then
8991abf9
FF
3768 # librabbitmq up to version 0.9.1 provides "library_errno", later
3769 # versions use "library_error". The library does not provide a version
3770 # macro :( Use "AC_CHECK_MEMBERS" (plural) for automatic defines.
3771 AC_CHECK_MEMBERS([amqp_rpc_reply_t.library_errno],,,
3772 [
3773#if HAVE_STDLIB_H
3774# include <stdlib.h>
3775#endif
3776#if HAVE_STDIO_H
3777# include <stdio.h>
3778#endif
3779#if HAVE_STDINT_H
3780# include <stdint.h>
3781#endif
3782#if HAVE_INTTYPES_H
3783# include <inttypes.h>
3784#endif
3785#include <amqp.h>
3786 ])
3787fi
3788if test "x$with_librabbitmq" = "xyes"
3789then
3e77c9e8 3790 AC_CHECK_LIB(rabbitmq, amqp_basic_publish, [with_librabbitmq="yes"], [with_librabbitmq="no (Symbol 'amqp_basic_publish' not found)"])
3e77c9e8
FF
3791fi
3792if test "x$with_librabbitmq" = "xyes"
3793then
3794 BUILD_WITH_LIBRABBITMQ_CPPFLAGS="$with_librabbitmq_cppflags"
3795 BUILD_WITH_LIBRABBITMQ_LDFLAGS="$with_librabbitmq_ldflags"
3796 BUILD_WITH_LIBRABBITMQ_LIBS="-lrabbitmq"
3797 AC_SUBST(BUILD_WITH_LIBRABBITMQ_CPPFLAGS)
3798 AC_SUBST(BUILD_WITH_LIBRABBITMQ_LDFLAGS)
3799 AC_SUBST(BUILD_WITH_LIBRABBITMQ_LIBS)
3800 AC_DEFINE(HAVE_LIBRABBITMQ, 1, [Define if librabbitmq is present and usable.])
3801fi
8991abf9
FF
3802CPPFLAGS="$SAVE_CPPFLAGS"
3803LDFLAGS="$SAVE_LDFLAGS"
3e77c9e8 3804AM_CONDITIONAL(BUILD_WITH_LIBRABBITMQ, test "x$with_librabbitmq" = "xyes")
1a477ecb
SH
3805
3806with_amqp_tcp_socket="no"
3807if test "x$with_librabbitmq" = "xyes"
3808then
3809 SAVE_CPPFLAGS="$CPPFLAGS"
3810 SAVE_LDFLAGS="$LDFLAGS"
1c04bafe 3811 SAVE_LIBS="$LIBS"
1a477ecb 3812 CPPFLAGS="$CPPFLAGS $with_librabbitmq_cppflags"
1c04bafe
SH
3813 LDFLAGS="$LDFLAGS $with_librabbitmq_ldflags"
3814 LIBS="-lrabbitmq"
1a477ecb
SH
3815
3816 AC_CHECK_HEADERS(amqp_tcp_socket.h amqp_socket.h)
3817 AC_CHECK_FUNC(amqp_tcp_socket_new, [with_amqp_tcp_socket="yes"], [with_amqp_tcp_socket="no"])
3818 if test "x$with_amqp_tcp_socket" = "xyes"
3819 then
3820 AC_DEFINE(HAVE_AMQP_TCP_SOCKET, 1,
3821 [Define if librabbitmq provides the new TCP socket interface.])
3822 fi
3823
3824 AC_CHECK_DECLS(amqp_socket_close,
3825 [amqp_socket_close_decl="yes"], [amqp_socket_close_decl="no"],
3826 [[
3827#include <amqp.h>
3828#ifdef HAVE_AMQP_TCP_SOCKET_H
3829# include <amqp_tcp_socket.h>
3830#endif
3831#ifdef HAVE_AMQP_SOCKET_H
3832# include <amqp_socket.h>
3833#endif
3834 ]])
3835
3836 CPPFLAGS="$SAVE_CPPFLAGS"
3837 LDFLAGS="$SAVE_LDFLAGS"
1c04bafe 3838 LIBS="$SAVE_LIBS"
1a477ecb 3839fi
3e77c9e8
FF
3840# }}}
3841
630e3bba
PYR
3842# --with-librdkafka {{{
3843AC_ARG_WITH(librdkafka, [AS_HELP_STRING([--with-librdkafka@<:@=PREFIX@:>@], [Path to librdkafka.])],
3844[
cc5653ae 3845 if test "x$withval" != "xno" && test "x$withval" != "xyes"
630e3bba
PYR
3846 then
3847 with_librdkafka_cppflags="-I$withval/include"
3848 with_librdkafka_ldflags="-L$withval/lib"
f8cecf10 3849 with_librdkafka_rpath="$withval/lib"
630e3bba
PYR
3850 with_librdkafka="yes"
3851 else
3852 with_librdkafka="$withval"
3853 fi
3854],
3855[
3856 with_librdkafka="yes"
3857])
3858SAVE_CPPFLAGS="$CPPFLAGS"
3859SAVE_LDFLAGS="$LDFLAGS"
3860
f8cecf10 3861CPPFLAGS="$CPPFLAGS $with_librdkafka_cppflags"
3862LDFLAGS="$LDFLAGS $with_librdkafka_ldflags"
3863
630e3bba
PYR
3864if test "x$with_librdkafka" = "xyes"
3865then
3866 AC_CHECK_HEADERS(librdkafka/rdkafka.h, [with_librdkafka="yes"], [with_librdkafka="no (librdkafka/rdkafka.h not found)"])
3867fi
3868
3869if test "x$with_librdkafka" = "xyes"
3870then
3871 AC_CHECK_LIB(rdkafka, rd_kafka_new, [with_librdkafka="yes"], [with_librdkafka="no (Symbol 'rd_kafka_new' not found)"])
19d5c74d 3872 AC_CHECK_LIB(rdkafka, rd_kafka_conf_set_log_cb, [with_librdkafka_log_cb="yes"], [with_librdkafka_log_cb="no"])
0cf5df3d 3873 AC_CHECK_LIB(rdkafka, rd_kafka_set_logger, [with_librdkafka_logger="yes"], [with_librdkafka_logger="no"])
630e3bba
PYR
3874fi
3875if test "x$with_librdkafka" = "xyes"
3876then
3877 BUILD_WITH_LIBRDKAFKA_CPPFLAGS="$with_librdkafka_cppflags"
3878 BUILD_WITH_LIBRDKAFKA_LDFLAGS="$with_librdkafka_ldflags"
f8cecf10 3879 if test "x$with_librdkafka_rpath" != "x"
3880 then
3881 BUILD_WITH_LIBRDKAFKA_LIBS="-Wl,-rpath,$with_librdkafka_rpath -lrdkafka"
3882 else
3883 BUILD_WITH_LIBRDKAFKA_LIBS="-lrdkafka"
3884 fi
630e3bba
PYR
3885 AC_SUBST(BUILD_WITH_LIBRDKAFKA_CPPFLAGS)
3886 AC_SUBST(BUILD_WITH_LIBRDKAFKA_LDFLAGS)
3887 AC_SUBST(BUILD_WITH_LIBRDKAFKA_LIBS)
3888 AC_DEFINE(HAVE_LIBRDKAFKA, 1, [Define if librdkafka is present and usable.])
19d5c74d 3889 if test "x$with_librdkafka_log_cb" = "xyes"
480d66bb 3890 then
19d5c74d
PYR
3891 AC_DEFINE(HAVE_LIBRDKAFKA_LOG_CB, 1, [Define if librdkafka log facility is present and usable.])
3892 fi
3893 if test "x$with_librdkafka_logger" = "xyes"
3894 then
3895 AC_DEFINE(HAVE_LIBRDKAFKA_LOGGER, 1, [Define if librdkafka log facility is present and usable.])
480d66bb 3896 fi
630e3bba
PYR
3897fi
3898CPPFLAGS="$SAVE_CPPFLAGS"
3899LDFLAGS="$SAVE_LDFLAGS"
3900AM_CONDITIONAL(BUILD_WITH_LIBRDKAFKA, test "x$with_librdkafka" = "xyes")
3901
3902# }}}
3903
f51548ec
FF
3904# --with-librouteros {{{
3905AC_ARG_WITH(librouteros, [AS_HELP_STRING([--with-librouteros@<:@=PREFIX@:>@], [Path to librouteros.])],
3906[
3907 if test "x$withval" = "xyes"
3908 then
3909 with_librouteros="yes"
3910 else if test "x$withval" = "xno"
3911 then
3912 with_librouteros="no"
3913 else
3914 with_librouteros="yes"
3915 LIBROUTEROS_CPPFLAGS="$LIBROUTEROS_CPPFLAGS -I$withval/include"
3916 LIBROUTEROS_LDFLAGS="$LIBROUTEROS_LDFLAGS -L$withval/lib"
3917 fi; fi
3918],
3919[with_librouteros="yes"])
3920
3921SAVE_CPPFLAGS="$CPPFLAGS"
3922SAVE_LDFLAGS="$LDFLAGS"
3923
3924CPPFLAGS="$CPPFLAGS $LIBROUTEROS_CPPFLAGS"
3925LDFLAGS="$LDFLAGS $LIBROUTEROS_LDFLAGS"
3926
3927if test "x$with_librouteros" = "xyes"
3928then
3929 if test "x$LIBROUTEROS_CPPFLAGS" != "x"
3930 then
3931 AC_MSG_NOTICE([librouteros CPPFLAGS: $LIBROUTEROS_CPPFLAGS])
3932 fi
3933 AC_CHECK_HEADERS(routeros_api.h,
3934 [with_librouteros="yes"],
67d4532f 3935 [with_librouteros="no (routeros_api.h not found)"])
f51548ec
FF
3936fi
3937if test "x$with_librouteros" = "xyes"
3938then
3939 if test "x$LIBROUTEROS_LDFLAGS" != "x"
3940 then
3941 AC_MSG_NOTICE([librouteros LDFLAGS: $LIBROUTEROS_LDFLAGS])
3942 fi
3943 AC_CHECK_LIB(routeros, ros_interface,
3944 [with_librouteros="yes"],
3945 [with_librouteros="no (symbol 'ros_interface' not found)"])
3946fi
3947
3948CPPFLAGS="$SAVE_CPPFLAGS"
3949LDFLAGS="$SAVE_LDFLAGS"
3950
3951if test "x$with_librouteros" = "xyes"
3952then
3953 BUILD_WITH_LIBROUTEROS_CPPFLAGS="$LIBROUTEROS_CPPFLAGS"
3954 BUILD_WITH_LIBROUTEROS_LDFLAGS="$LIBROUTEROS_LDFLAGS"
3955 AC_SUBST(BUILD_WITH_LIBROUTEROS_CPPFLAGS)
3956 AC_SUBST(BUILD_WITH_LIBROUTEROS_LDFLAGS)
3957fi
3958AM_CONDITIONAL(BUILD_WITH_LIBROUTEROS, test "x$with_librouteros" = "xyes")
3959# }}}
3960
975e7fd6
FF
3961# --with-librrd {{{
3962# AC_ARG_WITH (package, help-string, [action-if-given], [action-if-not-given])
3963librrd_cflags=""
3964librrd_ldflags=""
3965librrd_threadsafe="yes"
3966librrd_rrdc_update="no"
3967AC_ARG_WITH(librrd, [AS_HELP_STRING([--with-librrd@<:@=PREFIX@:>@], [Path to rrdtool.])],
3968[ if test "x$withval" != "xno" && test "x$withval" != "xyes"
3969 then
3970 librrd_cflags="-I$withval/include"
3971 librrd_ldflags="-L$withval/lib"
3972 with_librrd="yes"
3973 else
3974 with_librrd="$withval"
3975 fi
3976], [with_librrd="yes"])
3977if test "x$with_librrd" = "xyes"
3fc0feb6 3978then
bcb24183
FF
3979 SAVE_CPPFLAGS="$CPPFLAGS"
3980 SAVE_LDFLAGS="$LDFLAGS"
3981
975e7fd6
FF
3982 CPPFLAGS="$CPPFLAGS $librrd_cflags"
3983 LDFLAGS="$LDFLAGS $librrd_ldflags"
3fc0feb6 3984
975e7fd6 3985 AC_CHECK_HEADERS(rrd.h,, [with_librrd="no (rrd.h not found)"])
bcb24183
FF
3986
3987 CPPFLAGS="$SAVE_CPPFLAGS"
3988 LDFLAGS="$SAVE_LDFLAGS"
bc2d9402 3989fi
975e7fd6 3990if test "x$with_librrd" = "xyes"
8f6c03d5 3991then
06c09fee 3992 SAVE_CPPFLAGS="$CPPFLAGS"
975e7fd6 3993 SAVE_LDFLAGS="$LDFLAGS"
06c09fee 3994
975e7fd6
FF
3995 CPPFLAGS="$CPPFLAGS $librrd_cflags"
3996 LDFLAGS="$LDFLAGS $librrd_ldflags"
3997
3998 AC_CHECK_LIB(rrd_th, rrd_update_r,
3999 [with_librrd="yes"
4000 librrd_ldflags="$librrd_ldflags -lrrd_th -lm"
4001 ],
4002 [librrd_threadsafe="no"
4003 AC_CHECK_LIB(rrd, rrd_update,
4004 [with_librrd="yes"
4005 librrd_ldflags="$librrd_ldflags -lrrd -lm"
4006 ],
4007 [with_librrd="no (symbol 'rrd_update' not found)"],
4008 [-lm])
4009 ],
4010 [-lm])
4011
4012 if test "x$librrd_threadsafe" = "xyes"
4013 then
4014 AC_CHECK_LIB(rrd_th, rrdc_update, [librrd_rrdc_update="yes"], [librrd_rrdc_update="no"])
4015 else
4016 AC_CHECK_LIB(rrd, rrdc_update, [librrd_rrdc_update="yes"], [librrd_rrdc_update="no"])
4017 fi
06c09fee
FF
4018
4019 CPPFLAGS="$SAVE_CPPFLAGS"
975e7fd6 4020 LDFLAGS="$SAVE_LDFLAGS"
8f6c03d5 4021fi
975e7fd6 4022if test "x$with_librrd" = "xyes"
bcb24183 4023then
975e7fd6
FF
4024 BUILD_WITH_LIBRRD_CFLAGS="$librrd_cflags"
4025 BUILD_WITH_LIBRRD_LDFLAGS="$librrd_ldflags"
4026 AC_SUBST(BUILD_WITH_LIBRRD_CFLAGS)
4027 AC_SUBST(BUILD_WITH_LIBRRD_LDFLAGS)
4028fi
4029if test "x$librrd_threadsafe" = "xyes"
4030then
4031 AC_DEFINE(HAVE_THREADSAFE_LIBRRD, 1, [Define to 1 if you have the threadsafe rrd library (-lrrd_th).])
bcb24183 4032fi
8757c918 4033# }}}
bc2d9402 4034
975e7fd6
FF
4035# --with-libsensors {{{
4036with_sensors_cflags=""
4037with_sensors_ldflags=""
4038AC_ARG_WITH(libsensors, [AS_HELP_STRING([--with-libsensors@<:@=PREFIX@:>@], [Path to lm_sensors.])],
558a6a1c 4039[
975e7fd6 4040 if test "x$withval" = "xno"
558a6a1c 4041 then
975e7fd6 4042 with_libsensors="no"
558a6a1c 4043 else
975e7fd6
FF
4044 with_libsensors="yes"
4045 if test "x$withval" != "xyes"
4046 then
4047 with_sensors_cflags="-I$withval/include"
4048 with_sensors_ldflags="-L$withval/lib"
4049 with_libsensors="yes"
4050 fi
4051 fi
558a6a1c
FF
4052],
4053[
975e7fd6 4054 if test "x$ac_system" = "xLinux"
558a6a1c 4055 then
975e7fd6
FF
4056 with_libsensors="yes"
4057 else
4058 with_libsensors="no (Linux only library)"
558a6a1c 4059 fi
975e7fd6
FF
4060])
4061if test "x$with_libsensors" = "xyes"
558a6a1c 4062then
975e7fd6
FF
4063 SAVE_CPPFLAGS="$CPPFLAGS"
4064 CPPFLAGS="$CPPFLAGS $with_sensors_cflags"
558a6a1c 4065
975e7fd6
FF
4066# AC_CHECK_HEADERS(sensors/sensors.h,
4067# [
4068# AC_DEFINE(HAVE_SENSORS_SENSORS_H, 1, [Define to 1 if you have the <sensors/sensors.h> header file.])
4069# ],
4070# [with_libsensors="no (sensors/sensors.h not found)"])
4071 AC_CHECK_HEADERS(sensors/sensors.h, [], [with_libsensors="no (sensors/sensors.h not found)"])
4072
4073 CPPFLAGS="$SAVE_CPPFLAGS"
558a6a1c 4074fi
975e7fd6 4075if test "x$with_libsensors" = "xyes"
558a6a1c 4076then
975e7fd6
FF
4077 SAVE_CPPFLAGS="$CPPFLAGS"
4078 SAVE_LDFLAGS="$LDFLAGS"
4079 CPPFLAGS="$CPPFLAGS $with_sensors_cflags"
4080 LDFLAGS="$LDFLAGS $with_sensors_ldflags"
4081
4082 AC_CHECK_LIB(sensors, sensors_init,
558a6a1c 4083 [
975e7fd6 4084 AC_DEFINE(HAVE_LIBSENSORS, 1, [Define to 1 if you have the sensors library (-lsensors).])
558a6a1c 4085 ],
975e7fd6
FF
4086 [with_libsensors="no (libsensors not found)"])
4087
4088 CPPFLAGS="$SAVE_CPPFLAGS"
4089 LDFLAGS="$SAVE_LDFLAGS"
558a6a1c 4090fi
975e7fd6 4091if test "x$with_libsensors" = "xyes"
558a6a1c 4092then
975e7fd6
FF
4093 BUILD_WITH_LIBSENSORS_CFLAGS="$with_sensors_cflags"
4094 BUILD_WITH_LIBSENSORS_LDFLAGS="$with_sensors_ldflags"
4095 AC_SUBST(BUILD_WITH_LIBSENSORS_CFLAGS)
4096 AC_SUBST(BUILD_WITH_LIBSENSORS_LDFLAGS)
558a6a1c 4097fi
975e7fd6 4098AM_CONDITIONAL(BUILD_WITH_LM_SENSORS, test "x$with_libsensors" = "xyes")
8757c918 4099# }}}
558a6a1c 4100
5415a1c9
BV
4101# --with-libsigrok {{{
4102with_libsigrok_cflags=""
4103with_libsigrok_ldflags=""
4104AC_ARG_WITH(libsigrok, [AS_HELP_STRING([--with-libsigrok@<:@=PREFIX@:>@], [Path to libsigrok.])],
4105[
4106 if test "x$withval" = "xno"
4107 then
4108 with_libsigrok="no"
4109 else
4110 with_libsigrok="yes"
4111 if test "x$withval" != "xyes"
4112 then
4113 with_libsigrok_cflags="-I$withval/include"
4114 with_libsigrok_ldflags="-L$withval/lib"
4115 fi
4116 fi
5bdc5d3e 4117],[with_libsigrok="yes"])
5415a1c9
BV
4118
4119# libsigrok has a glib dependency
4120if test "x$with_libsigrok" = "xyes"
4121then
5bdc5d3e
SH
4122m4_ifdef([AM_PATH_GLIB_2_0],
4123 [
4124 AM_PATH_GLIB_2_0([2.28.0],
4125 [with_libsigrok_cflags="$with_libsigrok_cflags $GLIB_CFLAGS"; with_libsigrok_ldflags="$with_libsigrok_ldflags $GLIB_LIBS"])
4126 ],
4127 [
4128 with_libsigrok="no (glib not available)"
4129 ]
4130)
5415a1c9
BV
4131fi
4132
4133# libsigrok headers
4134if test "x$with_libsigrok" = "xyes"
4135then
4136 SAVE_CPPFLAGS="$CPPFLAGS"
4137 CPPFLAGS="$CPPFLAGS $with_libsigrok_cflags"
4138
4139 AC_CHECK_HEADERS(libsigrok/libsigrok.h, [], [with_libsigrok="no (libsigrok/libsigrok.h not found)"])
4140
4141 CPPFLAGS="$SAVE_CPPFLAGS"
4142fi
4143
4144# libsigrok library
4145if test "x$with_libsigrok" = "xyes"
4146then
4147 SAVE_CPPFLAGS="$CPPFLAGS"
4148 SAVE_LDFLAGS="$LDFLAGS"
4149 CPPFLAGS="$CPPFLAGS $with_libsigrok_cflags"
4150 LDFLAGS="$LDFLAGS $with_libsigrok_ldflags"
4151
4152 AC_CHECK_LIB(sigrok, sr_init,
4153 [
4154 AC_DEFINE(HAVE_LIBSIGROK, 1, [Define to 1 if you have the sigrok library (-lsigrok).])
4155 ],
4156 [with_libsigrok="no (libsigrok not found)"])
4157
4158 CPPFLAGS="$SAVE_CPPFLAGS"
4159 LDFLAGS="$SAVE_LDFLAGS"
4160fi
4161if test "x$with_libsigrok" = "xyes"
4162then
4163 BUILD_WITH_LIBSIGROK_CFLAGS="$with_libsigrok_cflags"
4164 BUILD_WITH_LIBSIGROK_LDFLAGS="$with_libsigrok_ldflags"
4165 AC_SUBST(BUILD_WITH_LIBSIGROK_CFLAGS)
4166 AC_SUBST(BUILD_WITH_LIBSIGROK_LDFLAGS)
4167fi
4168AM_CONDITIONAL(BUILD_WITH_LIBSIGROK, test "x$with_libsigrok" = "xyes")
4169# }}}
4170
975e7fd6
FF
4171# --with-libstatgrab {{{
4172with_libstatgrab_cflags=""
4173with_libstatgrab_ldflags=""
4174AC_ARG_WITH(libstatgrab, [AS_HELP_STRING([--with-libstatgrab@<:@=PREFIX@:>@], [Path to libstatgrab.])],
c1406acc 4175[
ad44a981
FF
4176 if test "x$withval" != "xno" \
4177 && test "x$withval" != "xyes"
4178 then
4179 with_libstatgrab_cflags="-I$withval/include"
4180 with_libstatgrab_ldflags="-L$withval/lib -lstatgrab"
4181 with_libstatgrab="yes"
4182 with_libstatgrab_pkg_config="no"
4183 else
4184 with_libstatgrab="$withval"
4185 with_libstatgrab_pkg_config="yes"
4186 fi
4187 ],
c1406acc 4188[
ad44a981
FF
4189 with_libstatgrab="yes"
4190 with_libstatgrab_pkg_config="yes"
c1406acc 4191])
ad44a981 4192
975e7fd6 4193if test "x$with_libstatgrab" = "xyes" \
ad44a981 4194 && test "x$with_libstatgrab_pkg_config" = "xyes"
c1406acc 4195then
ad44a981 4196 if test "x$PKG_CONFIG" != "x"
975e7fd6 4197 then
ad44a981
FF
4198 AC_MSG_CHECKING([pkg-config for libstatgrab])
4199 temp_result="found"
4200 $PKG_CONFIG --exists libstatgrab 2>/dev/null
4201 if test "$?" != "0"
4202 then
4203 with_libstatgrab_pkg_config="no"
67d4532f 4204 with_libstatgrab="no (pkg-config doesn't know libstatgrab)"
ad44a981
FF
4205 temp_result="not found"
4206 fi
4207 AC_MSG_RESULT([$temp_result])
4208 else
4209 AC_MSG_NOTICE([pkg-config not available, trying to guess flags for the statgrab library.])
975e7fd6 4210 with_libstatgrab_pkg_config="no"
ad44a981 4211 with_libstatgrab_ldflags="$with_libstatgrab_ldflags -lstatgrab"
975e7fd6 4212 fi
975e7fd6 4213fi
5d26a660 4214
975e7fd6
FF
4215if test "x$with_libstatgrab" = "xyes" \
4216 && test "x$with_libstatgrab_pkg_config" = "xyes" \
4217 && test "x$with_libstatgrab_cflags" = "x"
4218then
4219 AC_MSG_CHECKING([for libstatgrab CFLAGS])
4220 temp_result="`$PKG_CONFIG --cflags libstatgrab`"
4221 if test "$?" = "0"
4222 then
4223 with_libstatgrab_cflags="$temp_result"
4224 else
4225 with_libstatgrab="no ($PKG_CONFIG --cflags libstatgrab failed)"
4226 temp_result="$PKG_CONFIG --cflags libstatgrab failed"
4227 fi
4228 AC_MSG_RESULT([$temp_result])
4229fi
5d26a660 4230
975e7fd6
FF
4231if test "x$with_libstatgrab" = "xyes" \
4232 && test "x$with_libstatgrab_pkg_config" = "xyes" \
4233 && test "x$with_libstatgrab_ldflags" = "x"
4234then
4235 AC_MSG_CHECKING([for libstatgrab LDFLAGS])
4236 temp_result="`$PKG_CONFIG --libs libstatgrab`"
4237 if test "$?" = "0"
4238 then
4239 with_libstatgrab_ldflags="$temp_result"
4240 else
4241 with_libstatgrab="no ($PKG_CONFIG --libs libstatgrab failed)"
4242 temp_result="$PKG_CONFIG --libs libstatgrab failed"
4243 fi
4244 AC_MSG_RESULT([$temp_result])
4245fi
5d26a660 4246
975e7fd6
FF
4247if test "x$with_libstatgrab" = "xyes"
4248then
4249 SAVE_CPPFLAGS="$CPPFLAGS"
4250 CPPFLAGS="$CPPFLAGS $with_libstatgrab_cflags"
5d26a660 4251
975e7fd6
FF
4252 AC_CHECK_HEADERS(statgrab.h,
4253 [with_libstatgrab="yes"],
4254 [with_libstatgrab="no (statgrab.h not found)"])
c1406acc 4255
975e7fd6 4256 CPPFLAGS="$SAVE_CPPFLAGS"
c1406acc 4257fi
975e7fd6
FF
4258
4259if test "x$with_libstatgrab" = "xyes"
c1406acc 4260then
975e7fd6
FF
4261 SAVE_CFLAGS="$CFLAGS"
4262 SAVE_LDFLAGS="$LDFLAGS"
4263
4264 CFLAGS="$CFLAGS $with_libstatgrab_cflags"
4265 LDFLAGS="$LDFLAGS $with_libstatgrab_ldflags"
4266
4267 AC_CHECK_LIB(statgrab, sg_init,
4268 [with_libstatgrab="yes"],
4269 [with_libstatgrab="no (symbol sg_init not found)"])
4270
4271 CFLAGS="$SAVE_CFLAGS"
4272 LDFLAGS="$SAVE_LDFLAGS"
c1406acc 4273fi
975e7fd6 4274
2bd9ed64
VB
4275if test "x$with_libstatgrab" = "xyes"
4276then
4277 SAVE_CFLAGS="$CFLAGS"
35d95175 4278 SAVE_LIBS="$LIBS"
2bd9ed64
VB
4279
4280 CFLAGS="$CFLAGS $with_libstatgrab_cflags"
4281 LDFLAGS="$LDFLAGS $with_libstatgrab_ldflags"
35d95175 4282 LIBS="-lstatgrab $LIBS"
2bd9ed64 4283
36841c62
VB
4284 AC_CACHE_CHECK([if libstatgrab >= 0.90],
4285 [c_cv_have_libstatgrab_0_90],
2bd9ed64
VB
4286 AC_LINK_IFELSE([AC_LANG_PROGRAM(
4287[[[
4288#include <stdio.h>
4289#include <statgrab.h>
4290]]],
4291[[[
4292 if (sg_init()) return 0;
4293]]]
4294 )],
36841c62
VB
4295 [c_cv_have_libstatgrab_0_90="no"],
4296 [c_cv_have_libstatgrab_0_90="yes"]
c963d35f
VB
4297 )
4298 )
4299
2bd9ed64
VB
4300 CFLAGS="$SAVE_CFLAGS"
4301 LDFLAGS="$SAVE_LDFLAGS"
35d95175 4302 LIBS="$SAVE_LIBS"
2bd9ed64
VB
4303fi
4304
975e7fd6
FF
4305AM_CONDITIONAL(BUILD_WITH_LIBSTATGRAB, test "x$with_libstatgrab" = "xyes")
4306if test "x$with_libstatgrab" = "xyes"
c1406acc 4307then
975e7fd6
FF
4308 AC_DEFINE(HAVE_LIBSTATGRAB, 1, [Define to 1 if you have the 'statgrab' library (-lstatgrab)])
4309 BUILD_WITH_LIBSTATGRAB_CFLAGS="$with_libstatgrab_cflags"
4310 BUILD_WITH_LIBSTATGRAB_LDFLAGS="$with_libstatgrab_ldflags"
4311 AC_SUBST(BUILD_WITH_LIBSTATGRAB_CFLAGS)
4312 AC_SUBST(BUILD_WITH_LIBSTATGRAB_LDFLAGS)
36841c62 4313 if test "x$c_cv_have_libstatgrab_0_90" = "xyes"
c963d35f 4314 then
36841c62 4315 AC_DEFINE(HAVE_LIBSTATGRAB_0_90, 1, [Define to 1 if libstatgrab version >= 0.90])
c963d35f 4316 fi
c1406acc 4317fi
8757c918 4318# }}}
5d99fadf 4319
5395a6d4
FF
4320# --with-libtokyotyrant {{{
4321with_libtokyotyrant_cppflags=""
4322with_libtokyotyrant_ldflags=""
4323with_libtokyotyrant_libs=""
4324AC_ARG_WITH(libtokyotyrant, [AS_HELP_STRING([--with-libtokyotyrant@<:@=PREFIX@:>@], [Path to libtokyotyrant.])],
4325[
4326 if test "x$withval" = "xno"
4327 then
4328 with_libtokyotyrant="no"
4329 else if test "x$withval" = "xyes"
4330 then
4331 with_libtokyotyrant="yes"
4332 else
4333 with_libtokyotyrant_cppflags="-I$withval/include"
4334 with_libtokyotyrant_ldflags="-L$withval/include"
4335 with_libtokyotyrant_libs="-ltokyotyrant"
4336 with_libtokyotyrant="yes"
4337 fi; fi
4338],
4339[
4340 with_libtokyotyrant="yes"
4341])
4342
4343if test "x$with_libtokyotyrant" = "xyes"
4344then
4345 if $PKG_CONFIG --exists tokyotyrant
4346 then
4347 with_libtokyotyrant_cppflags="$with_libtokyotyrant_cppflags `$PKG_CONFIG --cflags tokyotyrant`"
c2ca2a46
LT
4348 with_libtokyotyrant_ldflags="$with_libtokyotyrant_ldflags `$PKG_CONFIG --libs-only-L tokyotyrant`"
4349 with_libtokyotyrant_libs="$with_libtokyotyrant_libs `$PKG_CONFIG --libs-only-l tokyotyrant`"
5395a6d4
FF
4350 fi
4351fi
4352
4353SAVE_CPPFLAGS="$CPPFLAGS"
4354SAVE_LDFLAGS="$LDFLAGS"
4355CPPFLAGS="$CPPFLAGS $with_libtokyotyrant_cppflags"
4356LDFLAGS="$LDFLAGS $with_libtokyotyrant_ldflags"
4357
4358if test "x$with_libtokyotyrant" = "xyes"
4359then
4360 AC_CHECK_HEADERS(tcrdb.h,
4361 [
4362 AC_DEFINE(HAVE_TCRDB_H, 1,
4363 [Define to 1 if you have the <tcrdb.h> header file.])
4364 ], [with_libtokyotyrant="no (tcrdb.h not found)"])
4365fi
4366
4367if test "x$with_libtokyotyrant" = "xyes"
4368then
4369 AC_CHECK_LIB(tokyotyrant, tcrdbrnum,
4370 [
4371 AC_DEFINE(HAVE_LIBTOKYOTYRANT, 1,
4372 [Define to 1 if you have the tokyotyrant library (-ltokyotyrant).])
4373 ],
4374 [with_libtokyotyrant="no (symbol tcrdbrnum not found)"],
4375 [$with_libtokyotyrant_libs])
4376fi
4377
4378CPPFLAGS="$SAVE_CPPFLAGS"
4379LDFLAGS="$SAVE_LDFLAGS"
4380
4381if test "x$with_libtokyotyrant" = "xyes"
630e3bba 4382then
5395a6d4
FF
4383 BUILD_WITH_LIBTOKYOTYRANT_CPPFLAGS="$with_libtokyotyrant_cppflags"
4384 BUILD_WITH_LIBTOKYOTYRANT_LDFLAGS="$with_libtokyotyrant_ldflags"
4385 BUILD_WITH_LIBTOKYOTYRANT_LIBS="$with_libtokyotyrant_libs"
4386 AC_SUBST(BUILD_WITH_LIBTOKYOTYRANT_CPPFLAGS)
4387 AC_SUBST(BUILD_WITH_LIBTOKYOTYRANT_LDFLAGS)
4388 AC_SUBST(BUILD_WITH_LIBTOKYOTYRANT_LIBS)
4389fi
4390AM_CONDITIONAL(BUILD_WITH_LIBTOKYOTYRANT, test "x$with_libtokyotyrant" = "xyes")
4391# }}}
4392
c8e86419
PM
4393# --with-libudev {{{
4394with_libudev_cflags=""
4395with_libudev_ldflags=""
4396AC_ARG_WITH(libudev, [AS_HELP_STRING([--with-libudev@<:@=PREFIX@:>@], [Path to libudev.])],
4397[
4398 if test "x$withval" = "xno"
4399 then
4400 with_libudev="no"
4401 else
4402 with_libudev="yes"
4403 if test "x$withval" != "xyes"
4404 then
4405 with_libudev_cflags="-I$withval/include"
4406 with_libudev_ldflags="-L$withval/lib"
4407 with_libudev="yes"
4408 fi
4409 fi
4410],
4411[
4412 if test "x$ac_system" = "xLinux"
4413 then
4414 with_libudev="yes"
4415 else
4416 with_libudev="no (Linux only library)"
4417 fi
4418])
4419if test "x$with_libudev" = "xyes"
4420then
4421 SAVE_CPPFLAGS="$CPPFLAGS"
4422 CPPFLAGS="$CPPFLAGS $with_libudev_cflags"
4423
4424 AC_CHECK_HEADERS(libudev.h, [], [with_libudev="no (libudev.h not found)"])
4425
4426 CPPFLAGS="$SAVE_CPPFLAGS"
4427fi
4428if test "x$with_libudev" = "xyes"
4429then
4430 SAVE_CPPFLAGS="$CPPFLAGS"
4431 SAVE_LDFLAGS="$LDFLAGS"
4432 CPPFLAGS="$CPPFLAGS $with_libudev_cflags"
4433 LDFLAGS="$LDFLAGS $with_libudev_ldflags"
4434
4435 AC_CHECK_LIB(udev, udev_new,
4436 [
4437 AC_DEFINE(HAVE_LIBUDEV, 1, [Define to 1 if you have the udev library (-ludev).])
4438 ],
4439 [with_libudev="no (libudev not found)"])
4440
4441 CPPFLAGS="$SAVE_CPPFLAGS"
4442 LDFLAGS="$SAVE_LDFLAGS"
4443fi
4444if test "x$with_libudev" = "xyes"
4445then
4446 BUILD_WITH_LIBUDEV_CFLAGS="$with_libudev_cflags"
4447 BUILD_WITH_LIBUDEV_LDFLAGS="$with_libudev_ldflags"
4448 AC_SUBST(BUILD_WITH_LIBUDEV_CFLAGS)
4449 AC_SUBST(BUILD_WITH_LIBUDEV_LDFLAGS)
4450fi
4451AM_CONDITIONAL(BUILD_WITH_LIBUDEV, test "x$with_libudev" = "xyes")
4452# }}}
4453
6597f3a6
FF
4454# --with-libupsclient {{{
4455with_libupsclient_config=""
4456with_libupsclient_cflags=""
4457with_libupsclient_libs=""
296384e9 4458AC_ARG_WITH(libupsclient, [AS_HELP_STRING([--with-libupsclient@<:@=PREFIX@:>@], [Path to the upsclient library.])],
a0b4b6b4 4459[
6597f3a6 4460 if test "x$withval" = "xno"
a0b4b6b4 4461 then
6597f3a6
FF
4462 with_libupsclient="no"
4463 else if test "x$withval" = "xyes"
4464 then
4465 with_libupsclient="use_pkgconfig"
4466 else
4467 if test -x "$withval"
a0b4b6b4 4468 then
6597f3a6
FF
4469 with_libupsclient_config="$withval"
4470 with_libupsclient="use_libupsclient_config"
4471 else if test -x "$withval/bin/libupsclient-config"
a0b4b6b4 4472 then
caa17ae8 4473 with_libupsclient_config="$withval/bin/libupsclient-config"
6597f3a6
FF
4474 with_libupsclient="use_libupsclient_config"
4475 else
4476 AC_MSG_NOTICE([Not checking for libupsclient: Manually configured])
4477 with_libupsclient_cflags="-I$withval/include"
4478 with_libupsclient_libs="-L$withval/lib -lupsclient"
4479 with_libupsclient="yes"
a0b4b6b4 4480 fi; fi
a0b4b6b4
SH
4481 fi; fi
4482],
6597f3a6 4483[with_libupsclient="use_pkgconfig"])
a0b4b6b4 4484
6597f3a6
FF
4485# configure using libupsclient-config
4486if test "x$with_libupsclient" = "xuse_libupsclient_config"
249d5776 4487then
6597f3a6
FF
4488 AC_MSG_NOTICE([Checking for libupsclient using $with_libupsclient_config])
4489 with_libupsclient_cflags="`$with_libupsclient_config --cflags`"
4490 if test $? -ne 0
a0b4b6b4 4491 then
6597f3a6 4492 with_libupsclient="no ($with_libupsclient_config failed)"
a0b4b6b4 4493 fi
6597f3a6
FF
4494 with_libupsclient_libs="`$with_libupsclient_config --libs`"
4495 if test $? -ne 0
a0b4b6b4 4496 then
6597f3a6 4497 with_libupsclient="no ($with_libupsclient_config failed)"
a0b4b6b4 4498 fi
a0b4b6b4 4499fi
6597f3a6 4500if test "x$with_libupsclient" = "xuse_libupsclient_config"
c044208a 4501then
6597f3a6 4502 with_libupsclient="yes"
c044208a 4503fi
249d5776 4504
6597f3a6
FF
4505# configure using pkg-config
4506if test "x$with_libupsclient" = "xuse_pkgconfig"
c044208a 4507then
6597f3a6 4508 if test "x$PKG_CONFIG" = "x"
249d5776 4509 then
6597f3a6 4510 with_libupsclient="no (Don't have pkg-config)"
249d5776 4511 fi
c044208a 4512fi
6597f3a6 4513if test "x$with_libupsclient" = "xuse_pkgconfig"
c044208a 4514then
6597f3a6
FF
4515 AC_MSG_NOTICE([Checking for libupsclient using $PKG_CONFIG])
4516 $PKG_CONFIG --exists 'libupsclient' 2>/dev/null
4517 if test $? -ne 0
c044208a 4518 then
67d4532f 4519 with_libupsclient="no (pkg-config doesn't know libupsclient)"
c044208a 4520 fi
c044208a 4521fi
6597f3a6 4522if test "x$with_libupsclient" = "xuse_pkgconfig"
c044208a 4523then
6597f3a6 4524 with_libupsclient_cflags="`$PKG_CONFIG --cflags 'libupsclient'`"
975e7fd6 4525 if test $? -ne 0
c044208a 4526 then
6597f3a6 4527 with_libupsclient="no ($PKG_CONFIG failed)"
975e7fd6 4528 fi
6597f3a6 4529 with_libupsclient_libs="`$PKG_CONFIG --libs 'libupsclient'`"
975e7fd6
FF
4530 if test $? -ne 0
4531 then
6597f3a6 4532 with_libupsclient="no ($PKG_CONFIG failed)"
c044208a 4533 fi
c044208a 4534fi
6597f3a6
FF
4535if test "x$with_libupsclient" = "xuse_pkgconfig"
4536then
4537 with_libupsclient="yes"
4538fi
4539
4540# with_libupsclient_cflags and with_libupsclient_libs are set up now, let's do
4541# the actual checks.
975e7fd6
FF
4542if test "x$with_libupsclient" = "xyes"
4543then
4544 SAVE_CPPFLAGS="$CPPFLAGS"
4545 CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags"
c044208a 4546
975e7fd6
FF
4547 AC_CHECK_HEADERS(upsclient.h, [], [with_libupsclient="no (upsclient.h not found)"])
4548
4549 CPPFLAGS="$SAVE_CPPFLAGS"
4550fi
4551if test "x$with_libupsclient" = "xyes"
c044208a
FF
4552then
4553 SAVE_CPPFLAGS="$CPPFLAGS"
975e7fd6 4554 SAVE_LDFLAGS="$LDFLAGS"
c044208a 4555
975e7fd6
FF
4556 CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags"
4557 LDFLAGS="$LDFLAGS $with_libupsclient_libs"
4558
4559 AC_CHECK_LIB(upsclient, upscli_connect,
4560 [with_libupsclient="yes"],
4561 [with_libupsclient="no (symbol upscli_connect not found)"])
c044208a
FF
4562
4563 CPPFLAGS="$SAVE_CPPFLAGS"
975e7fd6 4564 LDFLAGS="$SAVE_LDFLAGS"
c044208a 4565fi
975e7fd6
FF
4566if test "x$with_libupsclient" = "xyes"
4567then
4568 SAVE_CPPFLAGS="$CPPFLAGS"
4569 CPPFLAGS="$CPPFLAGS $with_libupsclient_cflags"
c044208a 4570
975e7fd6
FF
4571 AC_CHECK_TYPES([UPSCONN_t, UPSCONN], [], [],
4572[#include <stdlib.h>
4573#include <stdio.h>
4574#include <upsclient.h>])
4575
4576 CPPFLAGS="$SAVE_CPPFLAGS"
4577fi
4578if test "x$with_libupsclient" = "xyes"
c044208a 4579then
975e7fd6
FF
4580 BUILD_WITH_LIBUPSCLIENT_CFLAGS="$with_libupsclient_cflags"
4581 BUILD_WITH_LIBUPSCLIENT_LIBS="$with_libupsclient_libs"
4582 AC_SUBST(BUILD_WITH_LIBUPSCLIENT_CFLAGS)
4583 AC_SUBST(BUILD_WITH_LIBUPSCLIENT_LIBS)
c044208a
FF
4584fi
4585# }}}
4586
6597f3a6
FF
4587# --with-libxmms {{{
4588with_xmms_config="xmms-config"
4589with_xmms_cflags=""
4590with_xmms_libs=""
4591AC_ARG_WITH(libxmms, [AS_HELP_STRING([--with-libxmms@<:@=PREFIX@:>@], [Path to libxmms.])],
a0b4b6b4 4592[
6597f3a6
FF
4593 if test "x$withval" != "xno" \
4594 && test "x$withval" != "xyes"
a0b4b6b4 4595 then
a0b4b6b4
SH
4596 if test -f "$withval" && test -x "$withval";
4597 then
6597f3a6
FF
4598 with_xmms_config="$withval"
4599 else if test -x "$withval/bin/xmms-config"
a0b4b6b4 4600 then
6597f3a6 4601 with_xmms_config="$withval/bin/xmms-config"
a0b4b6b4 4602 fi; fi
6597f3a6
FF
4603 with_libxmms="yes"
4604 else if test "x$withval" = "xno"
4605 then
4606 with_libxmms="no"
4607 else
4608 with_libxmms="yes"
a0b4b6b4
SH
4609 fi; fi
4610],
4611[
6597f3a6 4612 with_libxmms="yes"
a0b4b6b4 4613])
6597f3a6 4614if test "x$with_libxmms" = "xyes"
a0b4b6b4 4615then
6597f3a6
FF
4616 with_xmms_cflags=`$with_xmms_config --cflags 2>/dev/null`
4617 xmms_config_status=$?
a0b4b6b4 4618
6597f3a6 4619 if test $xmms_config_status -ne 0
a0b4b6b4 4620 then
6597f3a6 4621 with_libxmms="no"
a0b4b6b4 4622 fi
a0b4b6b4 4623fi
6597f3a6 4624if test "x$with_libxmms" = "xyes"
a0b4b6b4 4625then
6597f3a6
FF
4626 with_xmms_libs=`$with_xmms_config --libs 2>/dev/null`
4627 xmms_config_status=$?
a0b4b6b4 4628
6597f3a6 4629 if test $xmms_config_status -ne 0
a0b4b6b4 4630 then
6597f3a6 4631 with_libxmms="no"
a0b4b6b4 4632 fi
a0b4b6b4 4633fi
6597f3a6 4634if test "x$with_libxmms" = "xyes"
a0b4b6b4 4635then
6597f3a6
FF
4636 AC_CHECK_LIB(xmms, xmms_remote_get_info,
4637 [
4638 BUILD_WITH_LIBXMMS_CFLAGS="$with_xmms_cflags"
4639 BUILD_WITH_LIBXMMS_LIBS="$with_xmms_libs"
4640 AC_SUBST(BUILD_WITH_LIBXMMS_CFLAGS)
4641 AC_SUBST(BUILD_WITH_LIBXMMS_LIBS)
4642 ],
4643 [
4644 with_libxmms="no"
4645 ],
4646 [$with_xmms_libs])
a0b4b6b4 4647fi
6597f3a6
FF
4648with_libxmms_numeric=0
4649if test "x$with_libxmms" = "xyes"
4650then
4651 with_libxmms_numeric=1
4652fi
4653AC_DEFINE_UNQUOTED(HAVE_LIBXMMS, [$with_libxmms_numeric], [Define to 1 if you have the 'xmms' library (-lxmms).])
4654AM_CONDITIONAL(BUILD_WITH_LIBXMMS, test "x$with_libxmms" = "xyes")
4655# }}}
a0b4b6b4 4656
bc51ef21
DM
4657# --with-libyajl {{{
4658with_libyajl_cppflags=""
4659with_libyajl_ldflags=""
4660AC_ARG_WITH(libyajl, [AS_HELP_STRING([--with-libyajl@<:@=PREFIX@:>@], [Path to libyajl.])],
4661[
4662 if test "x$withval" != "xno" && test "x$withval" != "xyes"
4663 then
4664 with_libyajl_cppflags="-I$withval/include"
4665 with_libyajl_ldflags="-L$withval/lib"
4666 with_libyajl="yes"
4667 else
4668 with_libyajl="$withval"
4669 fi
4670],
4671[
4672 with_libyajl="yes"
4673])
4674if test "x$with_libyajl" = "xyes"
4675then
4676 SAVE_CPPFLAGS="$CPPFLAGS"
4677 CPPFLAGS="$CPPFLAGS $with_libyajl_cppflags"
4678
4679 AC_CHECK_HEADERS(yajl/yajl_parse.h, [with_libyajl="yes"], [with_libyajl="no (yajl/yajl_parse.h not found)"])
5ec7a37c 4680 AC_CHECK_HEADERS(yajl/yajl_version.h)
bc51ef21
DM
4681
4682 CPPFLAGS="$SAVE_CPPFLAGS"
4683fi
4684if test "x$with_libyajl" = "xyes"
4685then
4686 SAVE_CPPFLAGS="$CPPFLAGS"
4687 SAVE_LDFLAGS="$LDFLAGS"
4688 CPPFLAGS="$CPPFLAGS $with_libyajl_cppflags"
4689 LDFLAGS="$LDFLAGS $with_libyajl_ldflags"
4690
4691 AC_CHECK_LIB(yajl, yajl_alloc, [with_libyajl="yes"], [with_libyajl="no (Symbol 'yajl_alloc' not found)"])
4692
4693 CPPFLAGS="$SAVE_CPPFLAGS"
4694 LDFLAGS="$SAVE_LDFLAGS"
4695fi
4696if test "x$with_libyajl" = "xyes"
4697then
4698 BUILD_WITH_LIBYAJL_CPPFLAGS="$with_libyajl_cppflags"
4699 BUILD_WITH_LIBYAJL_LDFLAGS="$with_libyajl_ldflags"
4700 BUILD_WITH_LIBYAJL_LIBS="-lyajl"
4701 AC_SUBST(BUILD_WITH_LIBYAJL_CPPFLAGS)
4702 AC_SUBST(BUILD_WITH_LIBYAJL_LDFLAGS)
4703 AC_SUBST(BUILD_WITH_LIBYAJL_LIBS)
4704 AC_DEFINE(HAVE_LIBYAJL, 1, [Define if libyajl is present and usable.])
4705fi
4706AM_CONDITIONAL(BUILD_WITH_LIBYAJL, test "x$with_libyajl" = "xyes")
4707# }}}
4708
573c602b
EF
4709# --with-mic {{{
4710with_mic_cflags="-I/opt/intel/mic/sysmgmt/sdk/include"
4711with_mic_ldpath="-L/opt/intel/mic/sysmgmt/sdk/lib/Linux"
4712with_mic_libs=""
4713AC_ARG_WITH(mic,[AS_HELP_STRING([--with-mic@<:@=PREFIX@:>@], [Path to Intel MIC Access API.])],
4714[
4715 if test "x$withval" = "xno"
4716 then
4717 with_mic="no"
4718 else if test "x$withval" = "xyes"
4719 then
4720 with_mic="yes"
4721 else if test -d "$with_mic/lib"
4722 then
4723 AC_MSG_NOTICE([Not checking for Intel Mic: Manually configured])
4724 with_mic_cflags="-I$withval/include"
ad02e903 4725 with_mic_ldpath="-L$withval/lib/Linux"
573c602b
EF
4726 with_mic_libs="-lMicAccessSDK -lscif -lpthread"
4727 with_mic="yes"
4728 fi; fi; fi
4729],
4730[with_mic="yes"])
4731if test "x$with_mic" = "xyes"
4732then
8284de77
DB
4733 SAVE_CPPFLAGS="$CPPFLAGS"
4734 CPPFLAGS="$CPPFLAGS $with_mic_cflags"
573c602b 4735 AC_CHECK_HEADERS(MicAccessApi.h,[],[with_mic="no (MicAccessApi not found)"])
8284de77 4736 CPPFLAGS="$SAVE_CPPFLAGS"
573c602b
EF
4737fi
4738if test "x$with_mic" = "xyes"
4739then
8284de77 4740 SAVE_CPPFLAGS="$CPPFLAGS"
573c602b
EF
4741 SAVE_LDFLAGS="$LDFLAGS"
4742
8284de77 4743 CPPFLAGS="$CPPFLAGS $with_mic_cflags"
573c602b
EF
4744 LDFLAGS="$LDFLAGS $with_mic_ldpath"
4745
4746 AC_CHECK_LIB(MicAccessSDK, MicInitAPI,
ad02e903
EF
4747 [with_mic_ldpath="$with_mic_ldpath"
4748 with_mic_libs="-lMicAccessSDK -lscif -lpthread"],
4749 [with_mic="no (symbol MicInitAPI not found)"],[-lscif -lpthread])
573c602b 4750
8284de77 4751 CPPFLAGS="$SAVE_CPPFLAGS"
573c602b
EF
4752 LDFLAGS="$SAVE_LDFLAGS"
4753fi
4754
4755if test "x$with_mic" = "xyes"
4756then
8284de77 4757 BUILD_WITH_MIC_CPPFLAGS="$with_mic_cflags"
573c602b
EF
4758 BUILD_WITH_MIC_LIBPATH="$with_mic_ldpath"
4759 BUILD_WITH_MIC_LDADD="$with_mic_libs"
8284de77 4760 AC_SUBST(BUILD_WITH_MIC_CPPFLAGS)
573c602b
EF
4761 AC_SUBST(BUILD_WITH_MIC_LIBPATH)
4762 AC_SUBST(BUILD_WITH_MIC_LDADD)
4763fi
4764#}}}
4765
e9a9482a
JR
4766# --with-libvarnish {{{
4767with_libvarnish_cppflags=""
24da3d76
FF
4768with_libvarnish_cflags=""
4769with_libvarnish_libs=""
e9a9482a
JR
4770AC_ARG_WITH(libvarnish, [AS_HELP_STRING([--with-libvarnish@<:@=PREFIX@:>@], [Path to libvarnish.])],
4771[
24da3d76
FF
4772 if test "x$withval" = "xno"
4773 then
4774 with_libvarnish="no"
4775 else if test "x$withval" = "xyes"
4776 then
4777 with_libvarnish="use_pkgconfig"
4778 else if test -d "$with_libvarnish/lib"
e9a9482a 4779 then
24da3d76
FF
4780 AC_MSG_NOTICE([Not checking for libvarnish: Manually configured])
4781 with_libvarnish_cflags="-I$withval/include"
30f927c1 4782 with_libvarnish_libs="-L$withval/lib -lvarnishapi"
e9a9482a 4783 with_libvarnish="yes"
24da3d76 4784 fi; fi; fi
e9a9482a 4785],
24da3d76
FF
4786[with_libvarnish="use_pkgconfig"])
4787
4788# configure using pkg-config
4789if test "x$with_libvarnish" = "xuse_pkgconfig"
4790then
4791 if test "x$PKG_CONFIG" = "x"
4792 then
4793 with_libvarnish="no (Don't have pkg-config)"
4794 fi
4795fi
4796if test "x$with_libvarnish" = "xuse_pkgconfig"
4797then
4798 AC_MSG_NOTICE([Checking for varnishapi using $PKG_CONFIG])
4799 $PKG_CONFIG --exists 'varnishapi' 2>/dev/null
4800 if test $? -ne 0
4801 then
67d4532f 4802 with_libvarnish="no (pkg-config doesn't know varnishapi)"
24da3d76
FF
4803 fi
4804fi
4805if test "x$with_libvarnish" = "xuse_pkgconfig"
4806then
4807 with_libvarnish_cflags="`$PKG_CONFIG --cflags 'varnishapi'`"
4808 if test $? -ne 0
4809 then
4810 with_libvarnish="no ($PKG_CONFIG failed)"
4811 fi
4812 with_libvarnish_libs="`$PKG_CONFIG --libs 'varnishapi'`"
4813 if test $? -ne 0
4814 then
4815 with_libvarnish="no ($PKG_CONFIG failed)"
4816 fi
4817fi
4818if test "x$with_libvarnish" = "xuse_pkgconfig"
4819then
e9a9482a 4820 with_libvarnish="yes"
24da3d76
FF
4821fi
4822
4823# with_libvarnish_cflags and with_libvarnish_libs are set up now, let's do
4824# the actual checks.
e9a9482a
JR
4825if test "x$with_libvarnish" = "xyes"
4826then
4827 SAVE_CPPFLAGS="$CPPFLAGS"
24da3d76
FF
4828
4829 CPPFLAGS="$CPPFLAGS $with_libvarnish_cflags"
e9a9482a 4830
ec2e074f 4831 AC_CHECK_HEADERS(vapi/vsc.h,
dc03739e 4832 [AC_DEFINE([HAVE_VARNISH_V4], [1], [Varnish 4 API support])],
ec2e074f 4833 [AC_CHECK_HEADERS(vsc.h,
dc03739e 4834 [AC_DEFINE([HAVE_VARNISH_V3], [1], [Varnish 3 API support])],
ec2e074f 4835 [AC_CHECK_HEADERS(varnishapi.h,
dc03739e
MF
4836 [AC_DEFINE([HAVE_VARNISH_V2], [1], [Varnish 2 API support])],
4837 [with_libvarnish="no (found none of the varnish header files)"])])])
e9a9482a
JR
4838
4839 CPPFLAGS="$SAVE_CPPFLAGS"
e9a9482a
JR
4840fi
4841if test "x$with_libvarnish" = "xyes"
4842then
24da3d76
FF
4843 BUILD_WITH_LIBVARNISH_CFLAGS="$with_libvarnish_cflags"
4844 BUILD_WITH_LIBVARNISH_LIBS="$with_libvarnish_libs"
4845 AC_SUBST(BUILD_WITH_LIBVARNISH_CFLAGS)
e9a9482a 4846 AC_SUBST(BUILD_WITH_LIBVARNISH_LIBS)
e9a9482a 4847fi
e9a9482a
JR
4848# }}}
4849
8757c918 4850# pkg-config --exists 'libxml-2.0'; pkg-config --exists libvirt {{{
c6be63a7
FF
4851with_libxml2="no (pkg-config isn't available)"
4852with_libxml2_cflags=""
4853with_libxml2_ldflags=""
4854with_libvirt="no (pkg-config isn't available)"
df26df90
FF
4855with_libvirt_cflags=""
4856with_libvirt_ldflags=""
c6be63a7
FF
4857if test "x$PKG_CONFIG" != "x"
4858then
c2ca2a46 4859 $PKG_CONFIG --exists 'libxml-2.0' 2>/dev/null
c6be63a7
FF
4860 if test "$?" = "0"
4861 then
4862 with_libxml2="yes"
4863 else
67d4532f 4864 with_libxml2="no (pkg-config doesn't know libxml-2.0)"
c6be63a7
FF
4865 fi
4866
c2ca2a46 4867 $PKG_CONFIG --exists libvirt 2>/dev/null
c6be63a7
FF
4868 if test "$?" = "0"
4869 then
4870 with_libvirt="yes"
4871 else
67d4532f 4872 with_libvirt="no (pkg-config doesn't know libvirt)"
c6be63a7
FF
4873 fi
4874fi
df26df90
FF
4875if test "x$with_libxml2" = "xyes"
4876then
c2ca2a46 4877 with_libxml2_cflags="`$PKG_CONFIG --cflags libxml-2.0`"
c6be63a7
FF
4878 if test $? -ne 0
4879 then
4880 with_libxml2="no"
4881 fi
497f5785 4882 with_libxml2_ldflags="`$PKG_CONFIG --libs libxml-2.0`"
c6be63a7
FF
4883 if test $? -ne 0
4884 then
4885 with_libxml2="no"
4886 fi
4887fi
4888if test "x$with_libxml2" = "xyes"
4889then
4890 SAVE_CPPFLAGS="$CPPFLAGS"
4891 CPPFLAGS="$CPPFLAGS $with_libxml2_cflags"
4892
4893 AC_CHECK_HEADERS(libxml/parser.h, [],
4894 [with_libxml2="no (libxml/parser.h not found)"])
4895
4896 CPPFLAGS="$SAVE_CPPFLAGS"
4897fi
4898if test "x$with_libxml2" = "xyes"
4899then
4900 SAVE_CFLAGS="$CFLAGS"
ae6f041d 4901 SAVE_LDFLAGS="$LDFLAGS"
c6be63a7
FF
4902
4903 CFLAGS="$CFLAGS $with_libxml2_cflags"
4904 LDFLAGS="$LDFLAGS $with_libxml2_ldflags"
4905
4906 AC_CHECK_LIB(xml2, xmlXPathEval,
4907 [with_libxml2="yes"],
4908 [with_libxml2="no (symbol xmlXPathEval not found)"])
4909
4910 CFLAGS="$SAVE_CFLAGS"
4911 LDFLAGS="$SAVE_LDFLAGS"
4912fi
4913dnl Add the right compiler flags and libraries.
4914if test "x$with_libxml2" = "xyes"; then
4915 BUILD_WITH_LIBXML2_CFLAGS="$with_libxml2_cflags"
4916 BUILD_WITH_LIBXML2_LIBS="$with_libxml2_ldflags"
4917 AC_SUBST(BUILD_WITH_LIBXML2_CFLAGS)
4918 AC_SUBST(BUILD_WITH_LIBXML2_LIBS)
4919fi
4920if test "x$with_libvirt" = "xyes"
4921then
497f5785 4922 with_libvirt_cflags="`$PKG_CONFIG --cflags libvirt`"
df26df90
FF
4923 if test $? -ne 0
4924 then
4925 with_libvirt="no"
4926 fi
497f5785 4927 with_libvirt_ldflags="`$PKG_CONFIG --libs libvirt`"
df26df90
FF
4928 if test $? -ne 0
4929 then
4930 with_libvirt="no"
4931 fi
4932fi
4933if test "x$with_libvirt" = "xyes"
c6be63a7
FF
4934then
4935 SAVE_CPPFLAGS="$CPPFLAGS"
4936 CPPFLAGS="$CPPFLAGS $with_libvirt_cflags"
4937
4938 AC_CHECK_HEADERS(libvirt/libvirt.h, [],
4939 [with_libvirt="no (libvirt/libvirt.h not found)"])
4940
4941 CPPFLAGS="$SAVE_CPPFLAGS"
4942fi
4943if test "x$with_libvirt" = "xyes"
df26df90
FF
4944then
4945 SAVE_CFLAGS="$CFLAGS"
ae6f041d 4946 SAVE_LDFLAGS="$LDFLAGS"
df26df90
FF
4947
4948 CFLAGS="$CFLAGS $with_libvirt_cflags"
4949 LDFLAGS="$LDFLAGS $with_libvirt_ldflags"
4950
c6be63a7 4951 AC_CHECK_LIB(virt, virDomainBlockStats,
df26df90
FF
4952 [with_libvirt="yes"],
4953 [with_libvirt="no (symbol virDomainBlockStats not found)"])
4954
4955 CFLAGS="$SAVE_CFLAGS"
4956 LDFLAGS="$SAVE_LDFLAGS"
f69ce75e
RJ
4957fi
4958dnl Add the right compiler flags and libraries.
4959if test "x$with_libvirt" = "xyes"; then
c6be63a7
FF
4960 BUILD_WITH_LIBVIRT_CFLAGS="$with_libvirt_cflags"
4961 BUILD_WITH_LIBVIRT_LIBS="$with_libvirt_ldflags"
4962 AC_SUBST(BUILD_WITH_LIBVIRT_CFLAGS)
4963 AC_SUBST(BUILD_WITH_LIBVIRT_LIBS)
f69ce75e 4964fi
8757c918 4965# }}}
f69ce75e 4966
975e7fd6
FF
4967# $PKG_CONFIG --exists OpenIPMIpthread {{{
4968with_libopenipmipthread="yes"
4969with_libopenipmipthread_cflags=""
4970with_libopenipmipthread_libs=""
4971
4972AC_MSG_CHECKING([for pkg-config])
4973temp_result="no"
4974if test "x$PKG_CONFIG" = "x"
4975then
4976 with_libopenipmipthread="no"
4977 temp_result="no"
4978else
4979 temp_result="$PKG_CONFIG"
4980fi
4981AC_MSG_RESULT([$temp_result])
4982
4983if test "x$with_libopenipmipthread" = "xyes"
4984then
4985 AC_MSG_CHECKING([for libOpenIPMIpthread])
4986 $PKG_CONFIG --exists OpenIPMIpthread 2>/dev/null
4987 if test "$?" != "0"
4988 then
67d4532f 4989 with_libopenipmipthread="no (pkg-config doesn't know OpenIPMIpthread)"
975e7fd6
FF
4990 fi
4991 AC_MSG_RESULT([$with_libopenipmipthread])
4992fi
4993
4994if test "x$with_libopenipmipthread" = "xyes"
4995then
4996 AC_MSG_CHECKING([for libOpenIPMIpthread CFLAGS])
4997 temp_result="`$PKG_CONFIG --cflags OpenIPMIpthread`"
4998 if test "$?" = "0"
4999 then
5000 with_libopenipmipthread_cflags="$temp_result"
5001 else
5002 with_libopenipmipthread="no ($PKG_CONFIG --cflags OpenIPMIpthread failed)"
5003 temp_result="$PKG_CONFIG --cflags OpenIPMIpthread failed"
5004 fi
5005 AC_MSG_RESULT([$temp_result])
5006fi
5007
5008if test "x$with_libopenipmipthread" = "xyes"
5009then
5010 AC_MSG_CHECKING([for libOpenIPMIpthread LDFLAGS])
5011 temp_result="`$PKG_CONFIG --libs OpenIPMIpthread`"
5012 if test "$?" = "0"
5013 then
5014 with_libopenipmipthread_ldflags="$temp_result"
5015 else
5016 with_libopenipmipthread="no ($PKG_CONFIG --libs OpenIPMIpthread failed)"
5017 temp_result="$PKG_CONFIG --libs OpenIPMIpthread failed"
5018 fi
5019 AC_MSG_RESULT([$temp_result])
5020fi
5021
5022if test "x$with_libopenipmipthread" = "xyes"
5023then
5024 SAVE_CPPFLAGS="$CPPFLAGS"
5025 CPPFLAGS="$CPPFLAGS $with_libopenipmipthread_cflags"
5026
5027 AC_CHECK_HEADERS(OpenIPMI/ipmi_smi.h,
5028 [with_libopenipmipthread="yes"],
5029 [with_libopenipmipthread="no (OpenIPMI/ipmi_smi.h not found)"],
5030[#include <OpenIPMI/ipmiif.h>
5031#include <OpenIPMI/ipmi_err.h>
5032#include <OpenIPMI/ipmi_posix.h>
5033#include <OpenIPMI/ipmi_conn.h>
5034])
5035
5036 CPPFLAGS="$SAVE_CPPFLAGS"
5037fi
5038
5039if test "x$with_libopenipmipthread" = "xyes"
5040then
5041 BUILD_WITH_OPENIPMI_CFLAGS="$with_libopenipmipthread_cflags"
5042 BUILD_WITH_OPENIPMI_LIBS="$with_libopenipmipthread_ldflags"
5043 AC_SUBST(BUILD_WITH_OPENIPMI_CFLAGS)
5044 AC_SUBST(BUILD_WITH_OPENIPMI_LIBS)
5045fi
5046# }}}
5047
5e77bd67
VB
5048# --with-libatasmart {{{
5049with_libatasmart_cppflags=""
5050with_libatasmart_ldflags=""
5051AC_ARG_WITH(libatasmart, [AS_HELP_STRING([--with-libatasmart@<:@=PREFIX@:>@], [Path to libatasmart.])],
5052[
5053 if test "x$withval" != "xno" && test "x$withval" != "xyes"
5054 then
5055 with_libatasmart_cppflags="-I$withval/include"
5056 with_libatasmart_ldflags="-L$withval/lib"
5057 with_libatasmart="yes"
5058 else
5059 with_libatasmart="$withval"
5060 fi
5061],
5062[
5063 if test "x$ac_system" = "xLinux"
5064 then
5065 with_libatasmart="yes"
5066 else
5067 with_libatasmart="no (Linux only library)"
5068 fi
5069])
5070if test "x$with_libatasmart" = "xyes"
5071then
5072 SAVE_CPPFLAGS="$CPPFLAGS"
5073 CPPFLAGS="$CPPFLAGS $with_libatasmart_cppflags"
5074
5075 AC_CHECK_HEADERS(atasmart.h, [with_libatasmart="yes"], [with_libatasmart="no (atasmart.h not found)"])
5076
5077 CPPFLAGS="$SAVE_CPPFLAGS"
5078fi
5079if test "x$with_libatasmart" = "xyes"
5080then
5081 SAVE_CPPFLAGS="$CPPFLAGS"
5082 SAVE_LDFLAGS="$LDFLAGS"
5083 CPPFLAGS="$CPPFLAGS $with_libatasmart_cppflags"
5084 LDFLAGS="$LDFLAGS $with_libatasmart_ldflags"
5085
5086 AC_CHECK_LIB(atasmart, sk_disk_open, [with_libatasmart="yes"], [with_libatasmart="no (Symbol 'sk_disk_open' not found)"])
5087
5088 CPPFLAGS="$SAVE_CPPFLAGS"
5089 LDFLAGS="$SAVE_LDFLAGS"
5090fi
5091if test "x$with_libatasmart" = "xyes"
5092then
5093 BUILD_WITH_LIBATASMART_CPPFLAGS="$with_libatasmart_cppflags"
5094 BUILD_WITH_LIBATASMART_LDFLAGS="$with_libatasmart_ldflags"
5095 BUILD_WITH_LIBATASMART_LIBS="-latasmart"
5096 AC_SUBST(BUILD_WITH_LIBATASMART_CPPFLAGS)
5097 AC_SUBST(BUILD_WITH_LIBATASMART_LDFLAGS)
5098 AC_SUBST(BUILD_WITH_LIBATASMART_LIBS)
5099 AC_DEFINE(HAVE_LIBATASMART, 1, [Define if libatasmart is present and usable.])
5100fi
5101AM_CONDITIONAL(BUILD_WITH_LIBATASMART, test "x$with_libatasmart" = "xyes")
5102# }}}
5103
c044208a
FF
5104PKG_CHECK_MODULES([LIBNOTIFY], [libnotify],
5105 [with_libnotify="yes"],
67d4532f
FF
5106 [if test "x$LIBNOTIFY_PKG_ERRORS" = "x"; then
5107 with_libnotify="no"
5108 else
5109 with_libnotify="no ($LIBNOTIFY_PKG_ERRORS)"
5110 fi])
c044208a 5111
86ca149a
FF
5112# Check for enabled/disabled features
5113#
6e765a02 5114
3c12e8a6
NW
5115# AC_COLLECTD(name, enable/disable, info-text, feature/module)
5116# ------------------------------------------------------------
5117dnl
5118m4_define([my_toupper], [m4_translit([$1], m4_defn([m4_cr_letters]), m4_defn([m4_cr_LETTERS]))])
5119dnl
5120AC_DEFUN(
5121 [AC_COLLECTD],
5122 [
5123 m4_if([$1], [], [AC_FATAL([AC_COLLECTD([$1], [$2], [$3], [$4]): 1st argument must not be empty])])dnl
5124 m4_if(
5125 [$2],
5126 [enable],
5127 [dnl
5128 m4_define([EnDis],[disabled])dnl
5129 m4_define([YesNo],[no])dnl
5130 ],dnl
5131 [m4_if(
5132 [$2],
5133 [disable],
5134 [dnl
5135 m4_define([EnDis],[enabled])dnl
5136 m4_define([YesNo],[yes])dnl
5137 ],
5138 [dnl
5139 AC_FATAL([AC_COLLECTD([$1], [$2], [$3], [$4]): 2nd argument must be either enable or disable])dnl
5140 ]dnl
5141 )]dnl
5142 )dnl
5143 m4_if([$3], [feature], [],
5144 [m4_if(
5145 [$3], [module], [],
5146 [dnl
5147 AC_FATAL([AC_COLLECTD([$1], [$2], [$3], [$4]): 3rd argument must be either feature or disable])dnl
5148 ]dnl
5149 )]dnl
5150 )dnl
5151 AC_ARG_ENABLE(
5152 [$1],
5153 AS_HELP_STRING([--$2-$1], [$2 $4 (EnDis by def)]),
5154 [],
5155 enable_$1='[YesNo]'dnl
5156 )# AC_ARG_ENABLE
5157if test "x$enable_$1" = "xno"
5158then
5159 collectd_$1=0
6e765a02 5160else
3c12e8a6 5161 if test "x$enable_$1" = "xyes"
6e765a02 5162 then
3c12e8a6 5163 collectd_$1=1
6e765a02 5164 else
3c12e8a6
NW
5165 AC_MSG_NOTICE([please specify either --enable-$1 or --disable-$1; enabling $1.])
5166 collectd_$1=1
5167 enable_$1='yes'
6e765a02
FF
5168 fi
5169fi
3c12e8a6
NW
5170 AC_DEFINE_UNQUOTED([COLLECT_]my_toupper([$1]), [$collectd_$1], [wether or not to enable $3 $4])
5171 AM_CONDITIONAL([BUILD_]my_toupper([$3])[_]my_toupper([$1]), [test "x$enable_$1" = "xyes"])dnl
5172 ]dnl
5173)# AC_COLLECTD(name, enable/disable, info-text, feature/module)
5174
a905d397
FF
5175# AC_PLUGIN(name, default, info)
5176# ------------------------------------------------------------
5177dnl
5178AC_DEFUN(
5179 [AC_PLUGIN],
5180 [
5181 enable_plugin="no"
cb622208 5182 force="no"
d4fcceb7 5183 AC_ARG_ENABLE([$1], AS_HELP_STRING([--enable-$1],[$3]),
a905d397
FF
5184 [
5185 if test "x$enableval" = "xyes"
5186 then
5187 enable_plugin="yes"
cb622208 5188 else if test "x$enableval" = "xforce"
a905d397
FF
5189 then
5190 enable_plugin="yes"
cb622208 5191 force="yes"
a905d397 5192 else
c632c2e5 5193 enable_plugin="no (disabled on command line)"
cb622208 5194 fi; fi
a905d397
FF
5195 ],
5196 [
2fd1f725
SH
5197 if test "x$enable_all_plugins" = "xauto"
5198 then
5199 if test "x$2" = "xyes"
5200 then
5201 enable_plugin="yes"
5202 else
5203 enable_plugin="no"
5204 fi
5205 else
5206 enable_plugin="$enable_all_plugins"
5207 fi
a905d397
FF
5208 ])
5209 if test "x$enable_plugin" = "xyes"
5210 then
cb622208 5211 if test "x$2" = "xyes" || test "x$force" = "xyes"
452db816
FF
5212 then
5213 AC_DEFINE([HAVE_PLUGIN_]my_toupper([$1]), 1, [Define to 1 if the $1 plugin is enabled.])
cb622208
SH
5214 if test "x$2" != "xyes"
5215 then
5216 dependency_warning="yes"
5217 fi
452db816
FF
5218 else # User passed "yes" but dependency checking yielded "no" => Dependency problem.
5219 dependency_error="yes"
5220 enable_plugin="no (dependency error)"
5221 fi
a905d397
FF
5222 fi
5223 AM_CONDITIONAL([BUILD_PLUGIN_]my_toupper([$1]), test "x$enable_plugin" = "xyes")
5224 enable_$1="$enable_plugin"
5225 ]
5226)# AC_PLUGIN(name, default, info)
5227
3c12e8a6
NW
5228m4_divert_once([HELP_ENABLE], [
5229collectd features:])
a905d397 5230# FIXME: Remove these calls to `AC_COLLECTD' and then remove that macro.
3c12e8a6
NW
5231AC_COLLECTD([debug], [enable], [feature], [debugging])
5232AC_COLLECTD([daemon], [disable], [feature], [daemon mode])
14740db4 5233AC_COLLECTD([getifaddrs],[enable], [feature], [getifaddrs under Linux])
6e765a02 5234
cb622208 5235dependency_warning="no"
9276a813 5236dependency_error="no"
cb622208 5237
99ef5283 5238plugin_ascent="no"
d0bd9cfd 5239plugin_barometer="no"
a905d397 5240plugin_battery="no"
db4f7362 5241plugin_bind="no"
75291e58 5242plugin_ceph="no"
9e1b0c68 5243plugin_cgroups="no"
2239c03f 5244plugin_conntrack="no"
11c3445e 5245plugin_contextswitch="no"
a905d397
FF
5246plugin_cpu="no"
5247plugin_cpufreq="no"
a30d7659 5248plugin_curl_json="no"
1d333244 5249plugin_curl_xml="no"
a905d397
FF
5250plugin_df="no"
5251plugin_disk="no"
df570a36 5252plugin_drbd="no"
a905d397 5253plugin_entropy="no"
8ae25a97 5254plugin_ethstat="no"
d61648a2 5255plugin_fscache="no"
a905d397 5256plugin_interface="no"
249d5776 5257plugin_ipmi="no"
6d431b70 5258plugin_ipvs="no"
a905d397
FF
5259plugin_irq="no"
5260plugin_load="no"
ab4488bb 5261plugin_log_logstash="no"
a905d397 5262plugin_memory="no"
3fc0feb6 5263plugin_multimeter="no"
a905d397 5264plugin_nfs="no"
d61648a2 5265plugin_numa="no"
28785769 5266plugin_perl="no"
a905d397 5267plugin_processes="no"
15f09880 5268plugin_protocols="no"
a905d397
FF
5269plugin_serial="no"
5270plugin_swap="no"
5271plugin_tape="no"
03b7ec00 5272plugin_tcpconns="no"
4e8795c7 5273plugin_ted="no"
2004f542 5274plugin_thermal="no"
4f79fc14 5275plugin_turbostat="no"
d0da1c4e 5276plugin_uptime="no"
62f94860
FF
5277plugin_users="no"
5278plugin_virt="no"
7b6abfd0 5279plugin_vmem="no"
a905d397
FF
5280plugin_vserver="no"
5281plugin_wireless="no"
87a3da3a 5282plugin_zfs_arc="no"
005af449 5283plugin_zone="no"
ff8752c6 5284plugin_zookeeper="no"
a905d397
FF
5285
5286# Linux
5287if test "x$ac_system" = "xLinux"
5288then
5289 plugin_battery="yes"
2239c03f 5290 plugin_conntrack="yes"
11c3445e 5291 plugin_contextswitch="yes"
9e1b0c68 5292 plugin_cgroups="yes"
a905d397
FF
5293 plugin_cpu="yes"
5294 plugin_cpufreq="yes"
5295 plugin_disk="yes"
df570a36 5296 plugin_drbd="yes"
a905d397 5297 plugin_entropy="yes"
d61648a2 5298 plugin_fscache="yes"
a905d397 5299 plugin_interface="yes"
a0ba86d5 5300 plugin_ipc="yes"
a905d397
FF
5301 plugin_irq="yes"
5302 plugin_load="yes"
25a4bb88 5303 plugin_lvm="yes"
a905d397
FF
5304 plugin_memory="yes"
5305 plugin_nfs="yes"
d61648a2 5306 plugin_numa="yes"
a905d397 5307 plugin_processes="yes"
15f09880 5308 plugin_protocols="yes"
a905d397
FF
5309 plugin_serial="yes"
5310 plugin_swap="yes"
03b7ec00 5311 plugin_tcpconns="yes"
2004f542 5312 plugin_thermal="yes"
d0da1c4e 5313 plugin_uptime="yes"
7b6abfd0 5314 plugin_vmem="yes"
a905d397
FF
5315 plugin_vserver="yes"
5316 plugin_wireless="yes"
521df2ea 5317 plugin_zfs_arc="yes"
fb3a07dc 5318
d87bf146 5319 if test "x$have_linux_ip_vs_h" = "xyes" || test "x$have_net_ip_vs_h" = "xyes" || test "x$have_ip_vs_h" = "xyes"
fb3a07dc
SH
5320 then
5321 plugin_ipvs="yes"
5322 fi
dfe9bb8c 5323 if test "x$c_cv_have_usable_asm_msrindex_h" = "xyes" && test "x$have_cpuid_h" = "xyes"
6b9773c7
VB
5324 then
5325 plugin_turbostat="yes"
5326 fi
a905d397
FF
5327fi
5328
7132090f
FF
5329if test "x$ac_system" = "xOpenBSD"
5330then
5331 plugin_tcpconns="yes"
5332fi
5333
a905d397
FF
5334# Mac OS X devices
5335if test "x$with_libiokit" = "xyes"
5336then
5337 plugin_battery="yes"
5338 plugin_disk="yes"
5339fi
5340
11b1e65a 5341# AIX
95b08a82
MLSR
5342
5343if test "x$ac_system" = "xAIX"
5344then
9dad8162
RK
5345 plugin_tcpconns="yes"
5346 plugin_ipc="yes"
95b08a82
MLSR
5347fi
5348
95c50593
XL
5349# FreeBSD
5350
5351if test "x$ac_system" = "xFreeBSD"
5352then
9dad8162 5353 plugin_zfs_arc="yes"
95c50593
XL
5354fi
5355
5356
11b1e65a
MS
5357if test "x$with_perfstat" = "xyes"
5358then
5359 plugin_cpu="yes"
d4195dfb 5360 plugin_contextswitch="yes"
11b1e65a
MS
5361 plugin_disk="yes"
5362 plugin_memory="yes"
5363 plugin_swap="yes"
5364 plugin_interface="yes"
5365 plugin_load="yes"
48096d34 5366 plugin_uptime="yes"
11b1e65a
MS
5367fi
5368
5369if test "x$with_procinfo" = "xyes"
5370then
5371 plugin_processes="yes"
5372fi
5373
a905d397 5374# Solaris
d0da1c4e
FF
5375if test "x$with_kstat" = "xyes"
5376then
b08f4f6e 5377 plugin_nfs="yes"
36cb8649 5378 plugin_processes="yes"
d0da1c4e 5379 plugin_uptime="yes"
87a3da3a 5380 plugin_zfs_arc="yes"
005af449 5381 plugin_zone="yes"
d0da1c4e
FF
5382fi
5383
a905d397
FF
5384if test "x$with_devinfo$with_kstat" = "xyesyes"
5385then
5386 plugin_cpu="yes"
5387 plugin_disk="yes"
5388 plugin_interface="yes"
5389 plugin_memory="yes"
a905d397
FF
5390 plugin_tape="yes"
5391fi
5392
d0bd9cfd
T
5393# libi2c-dev
5394with_libi2c="no"
5395if test "x$ac_system" = "xLinux"
5396then
22c1fc78
PYR
5397AC_CHECK_DECL(i2c_smbus_read_i2c_block_data,
5398 [with_libi2c="yes"],
5399 [with_libi2c="no (symbol i2c_smbus_read_i2c_block_data not found - have you installed libi2c-dev ?)"],
d0bd9cfd
T
5400 [[#include <stdlib.h>
5401 #include <linux/i2c-dev.h>]])
5402fi
5403
5404if test "x$with_libi2c" = "xyes"
5405then
5406 plugin_barometer="yes"
5407fi
5408
5409
a905d397
FF
5410# libstatgrab
5411if test "x$with_libstatgrab" = "xyes"
5412then
9ac28385 5413 plugin_cpu="yes"
d5ad8445 5414 plugin_disk="yes"
a905d397
FF
5415 plugin_interface="yes"
5416 plugin_load="yes"
5417 plugin_memory="yes"
5418 plugin_swap="yes"
c87e3fc2 5419 plugin_users="yes"
a905d397
FF
5420fi
5421
99ef5283
FF
5422if test "x$with_libcurl" = "xyes" && test "x$with_libxml2" = "xyes"
5423then
5424 plugin_ascent="yes"
adee81fe
FF
5425 if test "x$have_strptime" = "xyes"
5426 then
5427 plugin_bind="yes"
5428 fi
99ef5283
FF
5429fi
5430
249d5776
FF
5431if test "x$with_libopenipmipthread" = "xyes"
5432then
5433 plugin_ipmi="yes"
5434fi
5435
bc51ef21
DM
5436if test "x$with_libcurl" = "xyes" && test "x$with_libyajl" = "xyes"
5437then
a30d7659 5438 plugin_curl_json="yes"
bc51ef21
DM
5439fi
5440
1d333244
AG
5441if test "x$with_libcurl" = "xyes" && test "x$with_libxml2" = "xyes"
5442then
5443 plugin_curl_xml="yes"
5444fi
5445
4a9a6875 5446if test "x$with_libyajl" = "xyes"
75291e58 5447then
5448 plugin_ceph="yes"
5449fi
5450
a905d397
FF
5451if test "x$have_processor_info" = "xyes"
5452then
5453 plugin_cpu="yes"
5454fi
22188738
FF
5455if test "x$have_sysctl" = "xyes"
5456then
5457 plugin_cpu="yes"
cfb15b5d 5458 plugin_memory="yes"
d0da1c4e 5459 plugin_uptime="yes"
1411661f
FF
5460 if test "x$ac_system" = "xDarwin"
5461 then
5462 plugin_swap="yes"
5463 fi
22188738 5464fi
a905d397
FF
5465if test "x$have_sysctlbyname" = "xyes"
5466then
1538fa84 5467 plugin_contextswitch="yes"
a905d397
FF
5468 plugin_cpu="yes"
5469 plugin_memory="yes"
1695cd07 5470 plugin_tcpconns="yes"
a905d397
FF
5471fi
5472
eafb8003
FF
5473# Df plugin: Check if we know how to determine mount points first.
5474#if test "x$have_listmntent" = "xyes"; then
5475# plugin_df="yes"
5476#fi
5477if test "x$have_getvfsstat" = "xyes" || test "x$have_getfsstat" = "xyes"
a905d397
FF
5478then
5479 plugin_df="yes"
5480fi
eafb8003 5481if test "x$c_cv_have_two_getmntent" = "xyes" || test "x$have_getmntent" = "xgen" || test "x$have_getmntent" = "xsun"
a905d397
FF
5482then
5483 plugin_df="yes"
5484fi
eafb8003
FF
5485#if test "x$have_getmntent" = "xseq"
5486#then
5487# plugin_df="yes"
5488#fi
5489if test "x$c_cv_have_one_getmntent" = "xyes"
a905d397
FF
5490then
5491 plugin_df="yes"
5492fi
5493
eafb8003
FF
5494# Df plugin: Check if we have either `statfs' or `statvfs' second.
5495if test "x$plugin_df" = "xyes"
5496then
5497 plugin_df="no"
5498 if test "x$have_statfs" = "xyes"
5499 then
5500 plugin_df="yes"
5501 fi
5502 if test "x$have_statvfs" = "xyes"
5503 then
5504 plugin_df="yes"
5505 fi
5506fi
a905d397 5507
8ae25a97
FF
5508if test "x$have_linux_sockios_h$have_linux_ethtool_h" = "xyesyes"
5509then
5510 plugin_ethstat="yes"
5511fi
5512
a905d397
FF
5513if test "x$have_getifaddrs" = "xyes"
5514then
5515 plugin_interface="yes"
5516fi
5517
5518if test "x$have_getloadavg" = "xyes"
5519then
5520 plugin_load="yes"
5521fi
5522
ab4488bb
PYR
5523if test "x$with_libyajl" = "xyes"
5524then
5525 plugin_log_logstash="yes"
5526fi
5527
5f5da97b 5528if test "x$c_cv_have_libperl$c_cv_have_perl_ithreads" = "xyesyes"
28785769
SH
5529then
5530 plugin_perl="yes"
5531fi
5532
a905d397
FF
5533# Mac OS X memory interface
5534if test "x$have_host_statistics" = "xyes"
5535then
5536 plugin_memory="yes"
5537fi
5538
3fc0feb6
FF
5539if test "x$have_termios_h" = "xyes"
5540then
3c83a068
MLSR
5541 if test "x$ac_system" != "xAIX"
5542 then
5543 plugin_multimeter="yes"
5544 fi
4e8795c7 5545 plugin_ted="yes"
3fc0feb6
FF
5546fi
5547
a905d397
FF
5548if test "x$have_thread_info" = "xyes"
5549then
5550 plugin_processes="yes"
5551fi
5552
2d3861c5 5553if test "x$with_kvm_getprocs" = "xyes" && test "x$have_struct_kinfo_proc_freebsd" = "xyes"
a905d397 5554then
49908d76 5555 plugin_processes="yes"
d4a4b86e
FF
5556fi
5557
0e45add1
LB
5558if test "x$with_kvm_getprocs" = "xyes" && test "x$have_struct_kinfo_proc_openbsd" = "xyes"
5559then
5560 plugin_processes="yes"
5561fi
5562
d4a4b86e
FF
5563if test "x$with_kvm_getswapinfo" = "xyes"
5564then
a905d397
FF
5565 plugin_swap="yes"
5566fi
5567
1ff51088 5568if test "x$have_swapctl" = "xyes" && test "x$c_cv_have_swapctl_two_args" = "xyes"
b10e5d81
FF
5569then
5570 plugin_swap="yes"
5571fi
5572
37b23384 5573if test "x$with_kvm_openfiles$with_kvm_nlist" = "xyesyes"
043a6f45
FF
5574then
5575 plugin_tcpconns="yes"
5576fi
5577
a905d397
FF
5578if test "x$have_getutent" = "xyes"
5579then
5580 plugin_users="yes"
5581fi
5582if test "x$have_getutxent" = "xyes"
5583then
5584 plugin_users="yes"
5585fi
5586
62f94860
FF
5587if test "x$with_libxml2" = "xyes" && test "x$with_libvirt" = "xyes"
5588then
5589 plugin_virt="yes"
5590fi
5591
5592
f9ee71b2 5593m4_divert_once([HELP_ENABLE], [
a905d397
FF
5594collectd plugins:])
5595
2fd1f725 5596AC_ARG_ENABLE([all-plugins],
d4fcceb7 5597 AS_HELP_STRING([--enable-all-plugins],[enable all plugins (auto by def)]),
2fd1f725
SH
5598 [
5599 if test "x$enableval" = "xyes"
5600 then
5601 enable_all_plugins="yes"
5602 else if test "x$enableval" = "xauto"
5603 then
5604 enable_all_plugins="auto"
5605 else
5606 enable_all_plugins="no"
5607 fi; fi
5608 ],
5609 [enable_all_plugins="auto"])
5610
5611m4_divert_once([HELP_ENABLE], [])
5612
03ed4b71 5613AC_PLUGIN([aggregation], [yes], [Aggregation plugin])
cd423f6a 5614AC_PLUGIN([amqp], [$with_librabbitmq], [AMQP output plugin])
3fc0feb6
FF
5615AC_PLUGIN([apache], [$with_libcurl], [Apache httpd statistics])
5616AC_PLUGIN([apcups], [yes], [Statistics of UPSes by APC])
5617AC_PLUGIN([apple_sensors], [$with_libiokit], [Apple's hardware sensors])
d5cd30db 5618AC_PLUGIN([aquaero], [$with_libaquaero5], [Aquaero's hardware sensors])
99ef5283 5619AC_PLUGIN([ascent], [$plugin_ascent], [AscentEmu player statistics])
d0bd9cfd 5620AC_PLUGIN([barometer], [$plugin_barometer], [Barometer sensor on I2C])
3fc0feb6 5621AC_PLUGIN([battery], [$plugin_battery], [Battery statistics])
db4f7362 5622AC_PLUGIN([bind], [$plugin_bind], [ISC Bind nameserver statistics])
34935ff6 5623AC_PLUGIN([ceph], [$plugin_ceph], [Ceph daemon statistics])
2239c03f 5624AC_PLUGIN([conntrack], [$plugin_conntrack], [nf_conntrack statistics])
11c3445e 5625AC_PLUGIN([contextswitch], [$plugin_contextswitch], [context switch statistics])
3fc0feb6 5626AC_PLUGIN([cpufreq], [$plugin_cpufreq], [CPU frequency statistics])
999f0271 5627AC_PLUGIN([cpu], [$plugin_cpu], [CPU usage statistics])
3fc0feb6 5628AC_PLUGIN([csv], [yes], [CSV output plugin])
a16e9671 5629AC_PLUGIN([curl], [$with_libcurl], [CURL generic web statistics])
a30d7659 5630AC_PLUGIN([curl_json], [$plugin_curl_json], [CouchDB statistics])
1d333244 5631AC_PLUGIN([curl_xml], [$plugin_curl_xml], [CURL generic xml statistics])
9e1b0c68 5632AC_PLUGIN([cgroups], [$plugin_cgroups], [CGroups CPU usage accounting])
3f847b15 5633AC_PLUGIN([dbi], [$with_libdbi], [General database statistics])
3fc0feb6
FF
5634AC_PLUGIN([df], [$plugin_df], [Filesystem usage statistics])
5635AC_PLUGIN([disk], [$plugin_disk], [Disk usage statistics])
df570a36 5636AC_PLUGIN([drbd], [$plugin_drbd], [DRBD statistics])
3fc0feb6
FF
5637AC_PLUGIN([dns], [$with_libpcap], [DNS traffic analysis])
5638AC_PLUGIN([email], [yes], [EMail statistics])
5639AC_PLUGIN([entropy], [$plugin_entropy], [Entropy statistics])
8ae25a97 5640AC_PLUGIN([ethstat], [$plugin_ethstat], [Stats from NIC driver])
3fc0feb6 5641AC_PLUGIN([exec], [yes], [Execution of external programs])
7b0f362e 5642AC_PLUGIN([fhcount], [yes], [File handles statistics])
6071f979 5643AC_PLUGIN([filecount], [yes], [Count files in directories])
3d4a8f9e 5644AC_PLUGIN([fscache], [$plugin_fscache], [fscache statistics])
2f0bd3ba 5645AC_PLUGIN([gmond], [$with_libganglia], [Ganglia plugin])
3fc0feb6
FF
5646AC_PLUGIN([hddtemp], [yes], [Query hddtempd])
5647AC_PLUGIN([interface], [$plugin_interface], [Interface traffic statistics])
a0ba86d5 5648AC_PLUGIN([ipc], [$plugin_ipc], [IPC statistics])
249d5776 5649AC_PLUGIN([ipmi], [$plugin_ipmi], [IPMI sensor statistics])
999f0271 5650AC_PLUGIN([iptables], [$with_libiptc], [IPTables rule counters])
6d431b70 5651AC_PLUGIN([ipvs], [$plugin_ipvs], [IPVS connection statistics])
3fc0feb6 5652AC_PLUGIN([irq], [$plugin_irq], [IRQ statistics])
ff1c15a6 5653AC_PLUGIN([java], [$with_java], [Embed the Java Virtual Machine])
3fc0feb6
FF
5654AC_PLUGIN([load], [$plugin_load], [System load])
5655AC_PLUGIN([logfile], [yes], [File logging plugin])
ab4488bb 5656AC_PLUGIN([log_logstash], [$plugin_log_logstash], [Logstash json_event compatible logging])
2254a769 5657AC_PLUGIN([lpar], [$with_perfstat], [AIX logical partitions statistics])
25a4bb88 5658AC_PLUGIN([lvm], [$with_liblvm2app], [LVM statistics])
72a6ea58 5659AC_PLUGIN([madwifi], [$have_linux_wireless_h], [Madwifi wireless statistics])
95e95817 5660AC_PLUGIN([match_empty_counter], [yes], [The empty counter match])
f2a35cef 5661AC_PLUGIN([match_hashed], [yes], [The hashed match])
266c5c65 5662AC_PLUGIN([match_regex], [yes], [The regex match])
892fbd80 5663AC_PLUGIN([match_timediff], [yes], [The timediff match])
0e4f07d7 5664AC_PLUGIN([match_value], [yes], [The value match])
3fc0feb6 5665AC_PLUGIN([mbmon], [yes], [Query mbmond])
9ce2a30d 5666AC_PLUGIN([md], [$have_linux_raid_md_u_h], [md (Linux software RAID) devices])
5e8e1fe1 5667AC_PLUGIN([memcachec], [$with_libmemcached], [memcachec statistics])
0735ed71 5668AC_PLUGIN([memcached], [yes], [memcached statistics])
3fc0feb6 5669AC_PLUGIN([memory], [$plugin_memory], [Memory usage])
ad02e903 5670AC_PLUGIN([mic], [$with_mic], [Intel Many Integrated Core stats])
505c6b2a 5671AC_PLUGIN([modbus], [$with_libmodbus], [Modbus plugin])
ed93534f 5672AC_PLUGIN([mqtt], [$with_libmosquitto], [MQTT output plugin])
3fc0feb6
FF
5673AC_PLUGIN([multimeter], [$plugin_multimeter], [Read multimeter values])
5674AC_PLUGIN([mysql], [$with_libmysql], [MySQL statistics])
74f755e8 5675AC_PLUGIN([netapp], [$with_libnetapp], [NetApp plugin])
25bf8128 5676AC_PLUGIN([netlink], [$with_libmnl], [Enhanced Linux network statistics])
3fc0feb6
FF
5677AC_PLUGIN([network], [yes], [Network communication plugin])
5678AC_PLUGIN([nfs], [$plugin_nfs], [NFS statistics])
62b1cfdd 5679AC_PLUGIN([nginx], [$with_libcurl], [nginx statistics])
999f0271 5680AC_PLUGIN([notify_desktop], [$with_libnotify], [Desktop notifications])
a1dd93a2 5681AC_PLUGIN([notify_email], [$with_libesmtp], [Email notifier])
3fc0feb6 5682AC_PLUGIN([ntpd], [yes], [NTPd statistics])
d61648a2 5683AC_PLUGIN([numa], [$plugin_numa], [NUMA virtual memory statistics])
a905d397 5684AC_PLUGIN([nut], [$with_libupsclient], [Network UPS tools statistics])
7a12fd28 5685AC_PLUGIN([olsrd], [yes], [olsrd statistics])
11ba6e7c 5686AC_PLUGIN([onewire], [$with_libowcapi], [OneWire sensor statistics])
6ecb1f03 5687AC_PLUGIN([openldap], [$with_libldap], [OpenLDAP statistics])
31c1bf4f 5688AC_PLUGIN([openvpn], [yes], [OpenVPN client statistics])
a737ed74 5689AC_PLUGIN([oracle], [$with_oracle], [Oracle plugin])
28785769 5690AC_PLUGIN([perl], [$plugin_perl], [Embed a Perl interpreter])
43bc16aa 5691AC_PLUGIN([pf], [$have_net_pfvar_h], [BSD packet filter (PF) statistics])
23a8901d 5692# FIXME: Check for libevent, too.
24f1130f 5693AC_PLUGIN([pinba], [$have_protoc_c], [Pinba statistics])
3fc0feb6 5694AC_PLUGIN([ping], [$with_liboping], [Network latency statistics])
a0b4b6b4 5695AC_PLUGIN([postgresql], [$with_libpq], [PostgreSQL database statistics])
bd150991 5696AC_PLUGIN([powerdns], [yes], [PowerDNS statistics])
3fc0feb6 5697AC_PLUGIN([processes], [$plugin_processes], [Process statistics])
15f09880 5698AC_PLUGIN([protocols], [$plugin_protocols], [Protocol (IP, TCP, ...) statistics])
b8c32e9f 5699AC_PLUGIN([python], [$with_python], [Embed a Python interpreter])
36e8719c 5700AC_PLUGIN([redis], [$with_libhiredis], [Redis plugin])
f51548ec 5701AC_PLUGIN([routeros], [$with_librouteros], [RouterOS plugin])
667bcda9 5702AC_PLUGIN([rrdcached], [$librrd_rrdc_update], [RRDTool output plugin])
999f0271 5703AC_PLUGIN([rrdtool], [$with_librrd], [RRDTool output plugin])
c044208a 5704AC_PLUGIN([sensors], [$with_libsensors], [lm_sensors statistics])
3fc0feb6 5705AC_PLUGIN([serial], [$plugin_serial], [serial port traffic])
5415a1c9 5706AC_PLUGIN([sigrok], [$with_libsigrok], [sigrok acquisition sources])
5e77bd67 5707AC_PLUGIN([smart], [$with_libatasmart], [SMART statistics])
3fc0feb6 5708AC_PLUGIN([snmp], [$with_libnetsnmp], [SNMP querying plugin])
cc4025b8 5709AC_PLUGIN([statsd], [yes], [StatsD plugin])
3fc0feb6
FF
5710AC_PLUGIN([swap], [$plugin_swap], [Swap usage statistics])
5711AC_PLUGIN([syslog], [$have_syslog], [Syslog logging plugin])
eeb86d2d 5712AC_PLUGIN([table], [yes], [Parsing of tabular data])
4aecad69 5713AC_PLUGIN([tail], [yes], [Parsing of logfiles])
88ed4433 5714AC_PLUGIN([tail_csv], [yes], [Parsing of CSV files])
3fc0feb6 5715AC_PLUGIN([tape], [$plugin_tape], [Tape drive statistics])
380be79e 5716AC_PLUGIN([target_notification], [yes], [The notification target])
1aaedbca 5717AC_PLUGIN([target_replace], [yes], [The replace target])
9ae852ac 5718AC_PLUGIN([target_scale],[yes], [The scale target])
92d84092 5719AC_PLUGIN([target_set], [yes], [The set target])
67ce1dd8 5720AC_PLUGIN([target_v5upgrade], [yes], [The v5upgrade target])
03b7ec00 5721AC_PLUGIN([tcpconns], [$plugin_tcpconns], [TCP connection statistics])
fea74b37 5722AC_PLUGIN([teamspeak2], [yes], [TeamSpeak2 server statistics])
4e8795c7 5723AC_PLUGIN([ted], [$plugin_ted], [Read The Energy Detective values])
2004f542 5724AC_PLUGIN([thermal], [$plugin_thermal], [Linux ACPI thermal zone statistics])
171a92c9 5725AC_PLUGIN([threshold], [yes], [Threshold checking plugin])
ced8c219 5726AC_PLUGIN([tokyotyrant], [$with_libtokyotyrant], [TokyoTyrant database statistics])
4f79fc14 5727AC_PLUGIN([turbostat], [$plugin_turbostat], [Advanced statistic on Intel cpu states])
3fc0feb6 5728AC_PLUGIN([unixsock], [yes], [Unixsock communication plugin])
d0da1c4e 5729AC_PLUGIN([uptime], [$plugin_uptime], [Uptime statistics])
3fc0feb6 5730AC_PLUGIN([users], [$plugin_users], [User statistics])
30f3e7b8 5731AC_PLUGIN([uuid], [yes], [UUID as hostname plugin])
e9a9482a 5732AC_PLUGIN([varnish], [$with_libvarnish], [Varnish cache statistics])
62f94860 5733AC_PLUGIN([virt], [$plugin_virt], [Virtual machine statistics])
7b6abfd0 5734AC_PLUGIN([vmem], [$plugin_vmem], [Virtual memory statistics])
3fc0feb6
FF
5735AC_PLUGIN([vserver], [$plugin_vserver], [Linux VServer statistics])
5736AC_PLUGIN([wireless], [$plugin_wireless], [Wireless statistics])
afabd3b6 5737AC_PLUGIN([write_graphite], [yes], [Graphite / Carbon output plugin])
64d0aa3f 5738AC_PLUGIN([write_http], [$with_libcurl], [HTTP output plugin])
630e3bba 5739AC_PLUGIN([write_kafka], [$with_librdkafka], [Kafka output plugin])
93c89932 5740AC_PLUGIN([write_log], [yes], [Log output plugin])
e853b1ca 5741AC_PLUGIN([write_mongodb], [$with_libmongoc], [MongoDB output plugin])
afebdd7c 5742AC_PLUGIN([write_redis], [$with_libhiredis], [Redis output plugin])
24f1130f 5743AC_PLUGIN([write_riemann], [$have_protoc_c], [Riemann output plugin])
f85010ec 5744AC_PLUGIN([write_sensu], [yes], [Sensu output plugin])
c2021dfb 5745AC_PLUGIN([write_tsdb], [yes], [TSDB output plugin])
3fc0feb6 5746AC_PLUGIN([xmms], [$with_libxmms], [XMMS statistics])
87a3da3a 5747AC_PLUGIN([zfs_arc], [$plugin_zfs_arc], [ZFS ARC statistics])
005af449 5748AC_PLUGIN([zone], [$plugin_zone], [Solaris container statistics])
ff8752c6 5749AC_PLUGIN([zookeeper], [yes], [Zookeeper statistics])
55b43947 5750
a32e822b
FF
5751dnl Default configuration file
5752# Load either syslog or logfile
5753LOAD_PLUGIN_SYSLOG=""
5754LOAD_PLUGIN_LOGFILE=""
22c1fc78 5755LOAD_PLUGIN_LOG_LOGSTASH=""
a32e822b
FF
5756
5757AC_MSG_CHECKING([which default log plugin to load])
5758default_log_plugin="none"
5759if test "x$enable_syslog" = "xyes"
5760then
5761 default_log_plugin="syslog"
5762else
5763 LOAD_PLUGIN_SYSLOG="##"
5764fi
5765
5766if test "x$enable_logfile" = "xyes"
5767then
5768 if test "x$default_log_plugin" = "xnone"
5769 then
5770 default_log_plugin="logfile"
5771 else
5772 LOAD_PLUGIN_LOGFILE="#"
5773 fi
5774else
5775 LOAD_PLUGIN_LOGFILE="##"
5776fi
22c1fc78 5777
831665cd 5778if test "x$enable_log_logstash" = "xyes"
22c1fc78
PYR
5779then
5780 LOAD_PLUGIN_LOG_LOGSTASH="#"
5781else
5782 LOAD_PLUGIN_LOG_LOGSTASH="##"
5783fi
5784
5785
a32e822b
FF
5786AC_MSG_RESULT([$default_log_plugin])
5787
5788AC_SUBST(LOAD_PLUGIN_SYSLOG)
5789AC_SUBST(LOAD_PLUGIN_LOGFILE)
22c1fc78 5790AC_SUBST(LOAD_PLUGIN_LOG_LOGSTASH)
a32e822b
FF
5791
5792DEFAULT_LOG_LEVEL="info"
5793if test "x$enable_debug" = "xyes"
5794then
5795 DEFAULT_LOG_LEVEL="debug"
5796fi
5797AC_SUBST(DEFAULT_LOG_LEVEL)
5798
5799# Load only one of rrdtool, network, csv in the default config.
5800LOAD_PLUGIN_RRDTOOL=""
5801LOAD_PLUGIN_NETWORK=""
5802LOAD_PLUGIN_CSV=""
5803
5804AC_MSG_CHECKING([which default write plugin to load])
5805default_write_plugin="none"
5806if test "x$enable_rrdtool" = "xyes"
5807then
5808 default_write_plugin="rrdtool"
5809else
5810 LOAD_PLUGIN_RRDTOOL="##"
5811fi
5812
5813if test "x$enable_network" = "xyes"
5814then
5815 if test "x$default_write_plugin" = "xnone"
5816 then
5817 default_write_plugin="network"
5818 else
5819 LOAD_PLUGIN_NETWORK="#"
5820 fi
5821else
5822 LOAD_PLUGIN_NETWORK="##"
5823fi
5824
5825if test "x$enable_csv" = "xyes"
5826then
5827 if test "x$default_write_plugin" = "xnone"
5828 then
5829 default_write_plugin="csv"
5830 else
5831 LOAD_PLUGIN_CSV="#"
5832 fi
5833else
5834 LOAD_PLUGIN_CSV="##"
5835fi
5836AC_MSG_RESULT([$default_write_plugin])
5837
5838AC_SUBST(LOAD_PLUGIN_RRDTOOL)
5839AC_SUBST(LOAD_PLUGIN_NETWORK)
5840AC_SUBST(LOAD_PLUGIN_CSV)
5841
fb3a07dc 5842dnl ip_vs.h
d45c77ca 5843if test "x$ac_system" = "xLinux" \
d87bf146 5844 && test "x$have_linux_ip_vs_h$have_net_ip_vs_h$have_ip_vs_h" = "xnonono"
fb3a07dc
SH
5845then
5846 enable_ipvs="$enable_ipvs (ip_vs.h not found)"
5847fi
5848
d87bf146
SH
5849if test "x$ip_vs_h_needs_kernel_cflags" = "xyes"
5850then
5851 enable_ipvs="$enable_ipvs (needs $KERNEL_CFLAGS)"
5852fi
5853
a459afe5 5854dnl Perl bindings
6c769cf7 5855PERL_BINDINGS_OPTIONS="PREFIX=${prefix}"
a459afe5
SH
5856AC_ARG_WITH(perl-bindings, [AS_HELP_STRING([--with-perl-bindings@<:@=OPTIONS@:>@], [Options passed to "perl Makefile.PL".])],
5857[
5858 if test "x$withval" != "xno" && test "x$withval" != "xyes"
5859 then
5860 PERL_BINDINGS_OPTIONS="$withval"
5861 with_perl_bindings="yes"
fb713675 5862 else
fb713675 5863 with_perl_bindings="$withval"
a459afe5
SH
5864 fi
5865],
5866[
f1075c22
SH
5867 if test -n "$perl_interpreter"
5868 then
5869 with_perl_bindings="yes"
5870 else
5871 with_perl_bindings="no (no perl interpreter found)"
5872 fi
a459afe5
SH
5873])
5874if test "x$with_perl_bindings" = "xyes"
5875then
5876 PERL_BINDINGS="perl"
5877else
5878 PERL_BINDINGS=""
5879fi
5880AC_SUBST(PERL_BINDINGS)
5881AC_SUBST(PERL_BINDINGS_OPTIONS)
5882
dc45cf5e
SH
5883dnl libcollectdclient
5884LCC_VERSION_MAJOR=`echo $PACKAGE_VERSION | cut -d'.' -f1`
5885LCC_VERSION_MINOR=`echo $PACKAGE_VERSION | cut -d'.' -f2`
5886LCC_VERSION_PATCH=`echo $PACKAGE_VERSION | cut -d'.' -f3`
5887
5888LCC_VERSION_EXTRA=`echo $PACKAGE_VERSION | cut -d'.' -f4-`
5889
5890LCC_VERSION_STRING="$LCC_VERSION_MAJOR.$LCC_VERSION_MINOR.$LCC_VERSION_PATCH"
5891
5892AC_SUBST(LCC_VERSION_MAJOR)
5893AC_SUBST(LCC_VERSION_MINOR)
5894AC_SUBST(LCC_VERSION_PATCH)
5895AC_SUBST(LCC_VERSION_EXTRA)
5896AC_SUBST(LCC_VERSION_STRING)
5897
8d84ccac 5898AC_CONFIG_FILES(src/libcollectdclient/collectd/lcc_features.h)
dc45cf5e 5899
216c6246 5900AC_CONFIG_FILES([Makefile src/Makefile src/daemon/Makefile src/collectd.conf src/libcollectdclient/Makefile src/libcollectdclient/libcollectdclient.pc src/liboconfig/Makefile bindings/Makefile bindings/java/Makefile])
d4fcceb7 5901AC_OUTPUT
86ca149a 5902
c044208a 5903if test "x$with_librrd" = "xyes" \
759c5445 5904 && test "x$librrd_threadsafe" != "xyes"
83aa9c9e 5905then
c044208a 5906 with_librrd="yes (warning: librrd is not thread-safe)"
83aa9c9e
SH
5907fi
5908
7d32c2bc 5909if test "x$with_libperl" = "xyes"
a432a981 5910then
a459afe5 5911 with_libperl="yes (version `$perl_interpreter -MConfig -e 'print $Config{version};'`)"
7d32c2bc 5912else
a432a981
FF
5913 enable_perl="no (needs libperl)"
5914fi
5915
7075d42e
FF
5916if test "x$enable_perl" = "xno" && test "x$c_cv_have_perl_ithreads" = "xno"
5917then
5918 enable_perl="no (libperl doesn't support ithreads)"
5919fi
5920
d45c77ca
FF
5921if test "x$with_perl_bindings" = "xyes" \
5922 && test "x$PERL_BINDINGS_OPTIONS" != "x"
a459afe5
SH
5923then
5924 with_perl_bindings="yes ($PERL_BINDINGS_OPTIONS)"
5925fi
5926
86ca149a
FF
5927cat <<EOF;
5928
5929Configuration:
5930 Libraries:
adaff4f0 5931 intel mic . . . . . . $with_mic
d5cd30db 5932 libaquaero5 . . . . . $with_libaquaero5
5e77bd67 5933 libatasmart . . . . . $with_libatasmart
837ad77e 5934 libcurl . . . . . . . $with_libcurl
3f847b15 5935 libdbi . . . . . . . $with_libdbi
05b68469 5936 libesmtp . . . . . . $with_libesmtp
293f5147 5937 libganglia . . . . . $with_libganglia
bcd6151b 5938 libgcrypt . . . . . . $with_libgcrypt
584482eb 5939 libhal . . . . . . . $with_libhal
9817e729 5940 libhiredis . . . . . $with_libhiredis
d0bd9cfd 5941 libi2c-dev . . . . . $with_libi2c
837ad77e
SH
5942 libiokit . . . . . . $with_libiokit
5943 libiptc . . . . . . . $with_libiptc
ff1c15a6 5944 libjvm . . . . . . . $with_java
837ad77e
SH
5945 libkstat . . . . . . $with_kstat
5946 libkvm . . . . . . . $with_libkvm
6ecb1f03 5947 libldap . . . . . . . $with_libldap
80598f65 5948 liblvm2app . . . . . $with_liblvm2app
3a4563d4 5949 libmemcached . . . . $with_libmemcached
25bf8128 5950 libmnl . . . . . . . $with_libmnl
367405c9 5951 libmodbus . . . . . . $with_libmodbus
584482eb 5952 libmongoc . . . . . . $with_libmongoc
ed93534f 5953 libmosquitto . . . . $with_libmosquitto
837ad77e 5954 libmysql . . . . . . $with_libmysql
9f8962fb 5955 libnetapp . . . . . . $with_libnetapp
837ad77e
SH
5956 libnetsnmp . . . . . $with_libnetsnmp
5957 libnotify . . . . . . $with_libnotify
5958 liboconfig . . . . . $with_liboconfig
5959 libopenipmi . . . . . $with_libopenipmipthread
5960 liboping . . . . . . $with_liboping
584482eb 5961 libowcapi . . . . . . $with_libowcapi
837ad77e 5962 libpcap . . . . . . . $with_libpcap
8dbb7bc4 5963 libperfstat . . . . . $with_perfstat
837ad77e 5964 libperl . . . . . . . $with_libperl
a0b4b6b4 5965 libpq . . . . . . . . $with_libpq
999f0271 5966 libpthread . . . . . $with_libpthread
cd423f6a 5967 librabbitmq . . . . . $with_librabbitmq
630e3bba 5968 librdkafka . . . . . $with_librdkafka
f51548ec 5969 librouteros . . . . . $with_librouteros
c044208a
FF
5970 librrd . . . . . . . $with_librrd
5971 libsensors . . . . . $with_libsensors
5415a1c9 5972 libsigrok . . . . . $with_libsigrok
837ad77e 5973 libstatgrab . . . . . $with_libstatgrab
ced8c219 5974 libtokyotyrant . . . $with_libtokyotyrant
c8e86419 5975 libudev . . . . . . . $with_libudev
837ad77e 5976 libupsclient . . . . $with_libupsclient
e9a9482a 5977 libvarnish . . . . . $with_libvarnish
837ad77e
SH
5978 libvirt . . . . . . . $with_libvirt
5979 libxml2 . . . . . . . $with_libxml2
5980 libxmms . . . . . . . $with_libxmms
f154fb21 5981 libyajl . . . . . . . $with_libyajl
a737ed74 5982 oracle . . . . . . . $with_oracle
584482eb 5983 protobuf-c . . . . . $have_protoc_c
b8c32e9f 5984 python . . . . . . . $with_python
86ca149a
FF
5985
5986 Features:
837ad77e
SH
5987 daemon mode . . . . . $enable_daemon
5988 debug . . . . . . . . $enable_debug
6e765a02 5989
a459afe5 5990 Bindings:
837ad77e 5991 perl . . . . . . . . $with_perl_bindings
a459afe5 5992
6e765a02 5993 Modules:
03ed4b71 5994 aggregation . . . . . $enable_aggregation
cd423f6a 5995 amqp . . . . . . . $enable_amqp
837ad77e
SH
5996 apache . . . . . . . $enable_apache
5997 apcups . . . . . . . $enable_apcups
5998 apple_sensors . . . . $enable_apple_sensors
9817e729 5999 aquaero . . . . . . . $enable_aquaero
837ad77e 6000 ascent . . . . . . . $enable_ascent
d0bd9cfd 6001 barometer . . . . . . $enable_barometer
837ad77e 6002 battery . . . . . . . $enable_battery
db4f7362 6003 bind . . . . . . . . $enable_bind
75291e58 6004 ceph . . . . . . . . $enable_ceph
9817e729 6005 cgroups . . . . . . . $enable_cgroups
2239c03f 6006 conntrack . . . . . . $enable_conntrack
11c3445e 6007 contextswitch . . . . $enable_contextswitch
837ad77e
SH
6008 cpu . . . . . . . . . $enable_cpu
6009 cpufreq . . . . . . . $enable_cpufreq
6010 csv . . . . . . . . . $enable_csv
a16e9671 6011 curl . . . . . . . . $enable_curl
a30d7659 6012 curl_json . . . . . . $enable_curl_json
1d333244 6013 curl_xml . . . . . . $enable_curl_xml
3f847b15 6014 dbi . . . . . . . . . $enable_dbi
837ad77e
SH
6015 df . . . . . . . . . $enable_df
6016 disk . . . . . . . . $enable_disk
6017 dns . . . . . . . . . $enable_dns
df570a36 6018 drbd . . . . . . . . $enable_drbd
837ad77e
SH
6019 email . . . . . . . . $enable_email
6020 entropy . . . . . . . $enable_entropy
fa0b947c 6021 ethstat . . . . . . . $enable_ethstat
837ad77e 6022 exec . . . . . . . . $enable_exec
7b0f362e 6023 fhcount . . . . . . . $enable_fhcount
fff2b3d4 6024 filecount . . . . . . $enable_filecount
3d4a8f9e 6025 fscache . . . . . . . $enable_fscache
2f0bd3ba 6026 gmond . . . . . . . . $enable_gmond
837ad77e
SH
6027 hddtemp . . . . . . . $enable_hddtemp
6028 interface . . . . . . $enable_interface
a0ba86d5 6029 ipc . . . . . . . . . $enable_ipc
837ad77e 6030 ipmi . . . . . . . . $enable_ipmi
999f0271 6031 iptables . . . . . . $enable_iptables
837ad77e
SH
6032 ipvs . . . . . . . . $enable_ipvs
6033 irq . . . . . . . . . $enable_irq
ff1c15a6 6034 java . . . . . . . . $enable_java
837ad77e
SH
6035 load . . . . . . . . $enable_load
6036 logfile . . . . . . . $enable_logfile
0cb9bbb8 6037 log_logstash . . . . $enable_log_logstash
401fa758 6038 lpar . . . . . . . . $enable_lpar
25a4bb88 6039 lvm . . . . . . . . . $enable_lvm
01c19d8c 6040 madwifi . . . . . . . $enable_madwifi
95e95817 6041 match_empty_counter . $enable_match_empty_counter
f2a35cef 6042 match_hashed . . . . $enable_match_hashed
266c5c65 6043 match_regex . . . . . $enable_match_regex
892fbd80 6044 match_timediff . . . $enable_match_timediff
0e4f07d7 6045 match_value . . . . . $enable_match_value
837ad77e 6046 mbmon . . . . . . . . $enable_mbmon
9ce2a30d 6047 md . . . . . . . . . $enable_md
5e8e1fe1 6048 memcachec . . . . . . $enable_memcachec
837ad77e
SH
6049 memcached . . . . . . $enable_memcached
6050 memory . . . . . . . $enable_memory
825058c3 6051 mic . . . . . . . . . $enable_mic
505c6b2a 6052 modbus . . . . . . . $enable_modbus
ed93534f 6053 mqtt . . . . . . . . $enable_mqtt
837ad77e
SH
6054 multimeter . . . . . $enable_multimeter
6055 mysql . . . . . . . . $enable_mysql
74f755e8 6056 netapp . . . . . . . $enable_netapp
837ad77e
SH
6057 netlink . . . . . . . $enable_netlink
6058 network . . . . . . . $enable_network
6059 nfs . . . . . . . . . $enable_nfs
6060 nginx . . . . . . . . $enable_nginx
105436ca 6061 notify_desktop . . . $enable_notify_desktop
a1dd93a2 6062 notify_email . . . . $enable_notify_email
837ad77e 6063 ntpd . . . . . . . . $enable_ntpd
d61648a2 6064 numa . . . . . . . . $enable_numa
837ad77e 6065 nut . . . . . . . . . $enable_nut
7a12fd28 6066 olsrd . . . . . . . . $enable_olsrd
11ba6e7c 6067 onewire . . . . . . . $enable_onewire
6ecb1f03 6068 openldap . . . . . . $enable_openldap
31c1bf4f 6069 openvpn . . . . . . . $enable_openvpn
a737ed74 6070 oracle . . . . . . . $enable_oracle
837ad77e 6071 perl . . . . . . . . $enable_perl
9ad25378 6072 pf . . . . . . . . . $enable_pf
97b5f7f8 6073 pinba . . . . . . . . $enable_pinba
837ad77e 6074 ping . . . . . . . . $enable_ping
a0b4b6b4 6075 postgresql . . . . . $enable_postgresql
837ad77e
SH
6076 powerdns . . . . . . $enable_powerdns
6077 processes . . . . . . $enable_processes
ef302f97 6078 protocols . . . . . . $enable_protocols
b8c32e9f 6079 python . . . . . . . $enable_python
799410cb 6080 redis . . . . . . . . $enable_redis
f51548ec 6081 routeros . . . . . . $enable_routeros
667bcda9 6082 rrdcached . . . . . . $enable_rrdcached
999f0271 6083 rrdtool . . . . . . . $enable_rrdtool
837ad77e
SH
6084 sensors . . . . . . . $enable_sensors
6085 serial . . . . . . . $enable_serial
5415a1c9 6086 sigrok . . . . . . . $enable_sigrok
5e77bd67 6087 smart . . . . . . . . $enable_smart
837ad77e 6088 snmp . . . . . . . . $enable_snmp
cc4025b8 6089 statsd . . . . . . . $enable_statsd
837ad77e
SH
6090 swap . . . . . . . . $enable_swap
6091 syslog . . . . . . . $enable_syslog
eeb86d2d 6092 table . . . . . . . . $enable_table
88ed4433 6093 tail_csv . . . . . . $enable_tail_csv
9817e729 6094 tail . . . . . . . . $enable_tail
837ad77e 6095 tape . . . . . . . . $enable_tape
380be79e 6096 target_notification . $enable_target_notification
1aaedbca 6097 target_replace . . . $enable_target_replace
9ae852ac 6098 target_scale . . . . $enable_target_scale
92d84092 6099 target_set . . . . . $enable_target_set
67ce1dd8 6100 target_v5upgrade . . $enable_target_v5upgrade
837ad77e
SH
6101 tcpconns . . . . . . $enable_tcpconns
6102 teamspeak2 . . . . . $enable_teamspeak2
4e8795c7 6103 ted . . . . . . . . . $enable_ted
2004f542 6104 thermal . . . . . . . $enable_thermal
171a92c9 6105 threshold . . . . . . $enable_threshold
2c50a9c7 6106 tokyotyrant . . . . . $enable_tokyotyrant
4f79fc14 6107 turbostat . . . . . . $enable_turbostat
837ad77e 6108 unixsock . . . . . . $enable_unixsock
d0da1c4e 6109 uptime . . . . . . . $enable_uptime
837ad77e
SH
6110 users . . . . . . . . $enable_users
6111 uuid . . . . . . . . $enable_uuid
e9a9482a 6112 varnish . . . . . . . $enable_varnish
62f94860 6113 virt . . . . . . . . $enable_virt
837ad77e
SH
6114 vmem . . . . . . . . $enable_vmem
6115 vserver . . . . . . . $enable_vserver
6116 wireless . . . . . . $enable_wireless
2f6cab93 6117 write_graphite . . . $enable_write_graphite
64d0aa3f 6118 write_http . . . . . $enable_write_http
630e3bba 6119 write_kafka . . . . . $enable_write_kafka
93c89932 6120 write_log . . . . . . $enable_write_log
e853b1ca 6121 write_mongodb . . . . $enable_write_mongodb
0a116775
FF
6122 write_redis . . . . . $enable_write_redis
6123 write_riemann . . . . $enable_write_riemann
f85010ec 6124 write_sensu . . . . . $enable_write_sensu
c2021dfb 6125 write_tsdb . . . . . $enable_write_tsdb
837ad77e 6126 xmms . . . . . . . . $enable_xmms
87a3da3a 6127 zfs_arc . . . . . . . $enable_zfs_arc
005af449 6128 zone . . . . . . . . $enable_zone
ff8752c6 6129 zookeeper . . . . . . $enable_zookeeper
86ca149a
FF
6130
6131EOF
8757c918 6132
9276a813 6133if test "x$dependency_error" = "xyes"; then
cb622208
SH
6134 AC_MSG_ERROR("Some plugins are missing dependencies - see the summary above for details")
6135fi
6136
6137if test "x$dependency_warning" = "xyes"; then
6138 AC_MSG_WARN("Some plugins seem to have missing dependencies but have been enabled forcibly - see the summary above for details")
9276a813 6139fi
332cf199 6140
8757c918 6141# vim: set fdm=marker :