include a few HAL properties in our card/sink/source properties for ALSA devices
[platform/upstream/pulseaudio.git] / configure.ac
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 # This file is part of PulseAudio.
5 #
6 # Copyright 2004-2008 Lennart Poettering
7 # Copyright 2006-2007 Pierre Ossman <ossman@cendio.se> for Cendio AB
8 #
9 # PulseAudio is free software; you can redistribute it and/or modify it
10 # under the terms of the GNU Lesser General Public License as published by
11 # the Free Software Foundation; either version 2 of the License, or
12 # (at your option) any later version.
13 #
14 # PulseAudio is distributed in the hope that it will be useful, but
15 # WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 # General Public License for more details.
18 #
19 # You should have received a copy of the GNU Lesser General Public License
20 # along with PulseAudio; if not, write to the Free Software Foundation,
21 # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
22
23 AC_PREREQ(2.63)
24
25 m4_define(PA_MAJOR, [0])
26 m4_define(PA_MINOR, [9])
27 m4_define(PA_MICRO, [15])
28
29 AC_INIT([pulseaudio],[PA_MAJOR.PA_MINOR.PA_MICRO],[mzchyfrnhqvb (at) 0pointer (dot) net])
30 AC_CONFIG_SRCDIR([src/daemon/main.c])
31 AC_CONFIG_MACRO_DIR([m4])
32 AC_CONFIG_HEADERS([config.h])
33 AM_INIT_AUTOMAKE([foreign 1.10 -Wall])
34
35 AC_SUBST(PA_MAJORMINOR, PA_MAJOR.PA_MINOR)
36 AC_SUBST(PA_MAJORMINORMICRO, PA_MAJOR.PA_MINOR.PA_MICRO)
37 AC_SUBST(PACKAGE_URL, [http://pulseaudio.org/])
38
39 AC_SUBST(PA_API_VERSION, 12)
40 AC_SUBST(PA_PROTOCOL_VERSION, 15)
41
42 # The stable ABI for client applications, for the version info x:y:z
43 # always will hold y=z
44 AC_SUBST(LIBPULSE_VERSION_INFO, [7:1:7])
45
46 # A simplified, synchronous, ABI-stable interface for client
47 # applications, for the version info x:y:z always will hold y=z
48 AC_SUBST(LIBPULSE_SIMPLE_VERSION_INFO, [0:2:0])
49
50 # The ABI-stable network browsing interface for client applications,
51 # for the version info x:y:z always will hold y=z
52 AC_SUBST(LIBPULSE_BROWSE_VERSION_INFO, [1:1:1])
53
54 # The ABI-stable GLib adapter for client applications, for the version
55 # info x:y:z always will hold y=z
56 AC_SUBST(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO, [0:4:0])
57
58 AC_CANONICAL_HOST
59 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
60
61 if type -p stow > /dev/null && test -d /usr/local/stow ; then
62    AC_MSG_NOTICE([*** Found /usr/local/stow: default install prefix set to /usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION} ***])
63    ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}"
64 fi
65
66 #### Platform hacks ####
67
68 case $host in
69    *-*-solaris* )
70       AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
71       AC_DEFINE(_XOPEN_SOURCE,          2, Needed to get declarations for msg_control and msg_controllen on Solaris)
72       AC_DEFINE(__EXTENSIONS__,         1, Needed to get declarations for msg_control and msg_controllen on Solaris)
73       ;;
74 esac
75
76 #### Checks for programs. ####
77
78 # mkdir -p
79
80 AC_PROG_MKDIR_P
81
82 # CC
83
84 AC_PROG_CC
85 AC_PROG_CC_C99
86 AM_PROG_CC_C_O
87 AC_PROG_GCC_TRADITIONAL
88 AC_USE_SYSTEM_EXTENSIONS
89
90 # M4
91
92 AC_PATH_PROG([M4], [m4 gm4], [no])
93 if test "x$M4" = xno ; then
94    AC_MSG_ERROR([m4 missing])
95 fi
96
97 dnl Compiler flags
98 DESIRED_FLAGS="-Wall -W -Wextra -pedantic -pipe -Wno-long-long -Winline -Wvla -Wno-overlength-strings -Wunsafe-loop-optimizations -Wundef -Wformat=2 -Wlogical-op -Wsign-compare -Wpacked -Wformat-security -Wmissing-include-dirs -Wformat-nonliteral -Wold-style-definition -Wpointer-arith -Winit-self -Wdeclaration-after-statement -Wfloat-equal -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-declarations -Wmissing-noreturn -Wshadow -Wendif-labels -Wcast-align -Wstrict-aliasing=2 -Wwrite-strings -Wno-unused-parameter -ffast-math -Wp,-D_FORTIFY_SOURCE=2 -fno-common -fdiagnostics-show-option"
99
100 for flag in $DESIRED_FLAGS ; do
101   CC_CHECK_CFLAGS([$flag], [CFLAGS="$CFLAGS $flag"])
102 done
103
104 dnl Check whether to build tests by default (as compile-test) or not
105 AC_ARG_ENABLE([default-build-tests],
106     AS_HELP_STRING([--disable-default-build-tests], [Build test programs only during make check]))
107
108 AM_CONDITIONAL([BUILD_TESTS_DEFAULT], [test "x$enable_default_build_tests" != "xno"])
109
110 # Native atomic operation support
111 AC_ARG_ENABLE([atomic-arm-linux-helpers],
112     AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]),
113         [
114             case "${enableval}" in
115                 yes) atomic_arm_linux_helpers=yes ;;
116                 no) atomic_arm_linux_helpers=no ;;
117                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
118             esac
119         ],
120         [atomic_arm_linux_helpers=auto])
121
122 AC_ARG_ENABLE([atomic-arm-memory-barrier],
123     AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]),
124         [
125             case "${enableval}" in
126                 yes) AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers]) ;;
127                 no) ;;
128                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
129             esac
130         ],)
131
132 AC_ARG_ENABLE([netbsd-atomic-ops],
133     AS_HELP_STRING([--enable-netbsd-atomic-ops],[Use the native NetBSD atomic_ops implementation]),
134         [
135             case "${enableval}" in
136                 yes) atomic_netbsd_helpers=yes ;;
137                 no) atomic_netbsd_helpers=no ;;
138                 *) AC_MSG_ERROR(bad value ${enableval} for --enable-netbsd-atomic-ops) ;;
139             esac
140         ],
141         [atomic_netbsd_helpers=auto])
142
143 AC_MSG_CHECKING([target operating system])
144 case $host in
145         *-*-linux*)
146             AC_MSG_RESULT([linux])
147             pulse_target_os=linux
148         ;;
149         *-*-netbsd*)
150             AC_MSG_RESULT([netbsd])
151             pulse_target_os=netbsd
152         ;;
153         *)
154             AC_MSG_RESULT([unknown])
155             pulse_target_os=unknown
156         ;;
157 esac
158
159 # If everything else fails use libatomic_ops
160 need_libatomic_ops=yes
161
162 AC_CACHE_CHECK([whether $CC knows __sync_bool_compare_and_swap()],
163   pulseaudio_cv_sync_bool_compare_and_swap,
164   [AC_LINK_IFELSE(
165      AC_LANG_PROGRAM([], [[int a = 4; __sync_bool_compare_and_swap(&a, 4, 5);]]),
166      [pulseaudio_cv_sync_bool_compare_and_swap=yes],
167      [pulseaudio_cv_sync_bool_compare_and_swap=no])
168   ])
169
170 if test "$pulseaudio_cv_sync_bool_compare_and_swap" = "yes" ; then
171     AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
172     need_libatomic_ops=no
173 else
174     # HW specific atomic ops stuff
175     AC_MSG_CHECKING([architecture for native atomic operations])
176     case $host_cpu in
177         arm*)
178             AC_MSG_RESULT([arm])
179             AC_MSG_CHECKING([whether we can use Linux kernel helpers])
180             # The Linux kernel helper functions have been there since 2.6.16. However
181             # compile time checking for kernel version in cross compile environment
182             # (which is usually the case for arm cpu) is tricky (or impossible).
183             if test "x$pulse_target_os" = "xlinux" && test "x$atomic_arm_linux_helpers" != "xno"; then
184                 AC_MSG_RESULT([yes])
185                 AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
186                 need_libatomic_ops=no
187             else
188                AC_MSG_RESULT([no])
189                AC_CACHE_CHECK([compiler support for arm inline asm atomic operations],
190                  pulseaudio_cv_support_arm_atomic_ops,
191                  [AC_COMPILE_IFELSE(
192                     AC_LANG_PROGRAM([],
193                       [[volatile int a=0;
194                         int o=0, n=1, r;
195                         asm volatile ("ldrex    %0, [%1]\n"
196                                          "subs  %0, %0, %2\n"
197                                          "strexeq %0, %3, [%1]\n"
198                                          : "=&r" (r)
199                                          : "r" (&a), "Ir" (o), "r" (n)
200                                          : "cc");
201                         return (a==1 ? 0 : -1);
202                       ]]),
203                     [pulseaudio_cv_support_arm_atomic_ops=yes],
204                     [pulseaudio_cv_support_arm_atomic_ops=no])
205                  ])
206                AS_IF([test "$pulseaudio_cv_support_arm_atomic_ops" = "yes"], [
207                    AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARMv6 instructions.])
208                    need_libatomic_ops=no
209                  ])
210            fi
211         ;;
212         *)
213             if test "x$pulse_target_os" = "xnetbsd" && test "x$atomic_netbsd_helpers" = "xyes"; then
214                 AC_MSG_RESULT([yes])
215                 AC_DEFINE_UNQUOTED(NETBSD_ATOMIC_OPS, 1, [netbsd implementation])
216                 need_libatomic_ops=no
217             else
218                 AC_MSG_RESULT([unknown])
219             fi
220         ;;
221     esac
222 fi
223
224 CC_CHECK_TLS
225
226 AC_CACHE_CHECK([whether $CC knows _Bool],
227   pulseaudio_cv__Bool,
228   [AC_COMPILE_IFELSE(
229      AC_LANG_PROGRAM([], [[_Bool b;]]),
230      [pulseaudio_cv__Bool=yes],
231      [pulseaudio_cv__Bool=no])
232   ])
233
234 AS_IF([test "$pulseaudio_cv__Bool" = "yes"], [
235     AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.])
236   ])
237
238 #### libtool stuff ####
239 LT_PREREQ(2.2)
240 LT_INIT([dlopen win32-dll disable-static])
241
242 dnl Unfortunately, even up to libtool 2.2.6a there is no way to know
243 dnl exactly which version of libltdl is present in the system, so we
244 dnl just assume that it's a working version as long as we have the
245 dnl library and the header files.
246 dnl
247 dnl As an extra safety device, check for lt_dladvise_init() which is
248 dnl only implemented in libtool 2.x, and refine as we go if we have
249 dnl refined requirements.
250 dnl
251 dnl Check the header files first since the system may have a
252 dnl libltdl.so for runtime, but no headers, and we want to bail out as
253 dnl soon as possible.
254 dnl
255 dnl We don't need any special variable for this though, since the user
256 dnl can give the proper place to find libltdl through the standard
257 dnl variables like LDFLAGS and CPPFLAGS.
258
259 AC_CHECK_HEADER([ltdl.h],
260     [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])],
261     [LIBLTDL=])
262
263 AS_IF([test "x$LIBLTDL" = "x"],
264     [AC_MSG_ERROR([Unable to find libltdl.])])
265 AC_SUBST([LIBLTDL])
266
267 #### Determine build environment ####
268
269 os_is_win32=0
270
271 case "$host_os" in
272         mingw*)
273         AC_DEFINE([OS_IS_WIN32], 1, [Build target is Windows.])
274         os_is_win32=1
275                 ;;
276         esac
277
278 AM_CONDITIONAL(OS_IS_WIN32, test "x$os_is_win32" = "x1")
279
280 ###################################
281 #   Basic environment checks      #
282 ###################################
283
284 #### Checks for header files. ####
285
286 # ISO
287 AC_HEADER_STDC
288
289 # POSIX
290 AC_CHECK_HEADERS([arpa/inet.h glob.h grp.h netdb.h netinet/in.h \
291     netinet/in_systm.h netinet/tcp.h poll.h pwd.h sched.h \
292     sys/mman.h sys/resource.h sys/select.h sys/socket.h sys/wait.h \
293     sys/uio.h syslog.h sys/dl.h dlfcn.h linux/sockios.h])
294 AC_CHECK_HEADERS([netinet/ip.h], [], [],
295                  [#include <sys/types.h>
296                   #if HAVE_NETINET_IN_H
297                   # include <netinet/in.h>
298                   #endif
299                   #if HAVE_NETINET_IN_SYSTM_H
300                   # include <netinet/in_systm.h>
301                   #endif
302                  ])
303 AC_CHECK_HEADERS([regex.h], [HAVE_REGEX=1], [HAVE_REGEX=0])
304 AC_CHECK_HEADERS([sys/un.h], [HAVE_AF_UNIX=1], [HAVE_AF_UNIX=0])
305
306 AM_CONDITIONAL(HAVE_REGEX, test "x$HAVE_REGEX" = "x1")
307 AM_CONDITIONAL(HAVE_AF_UNIX, test "x$HAVE_AF_UNIX" = "x1")
308
309 # Linux
310 AC_CHECK_HEADERS([linux/input.h], [HAVE_EVDEV=1], [HAVE_EVDEV=0])
311
312 AM_CONDITIONAL([HAVE_EVDEV], [test "x$HAVE_EVDEV" = "x1"])
313
314 AC_CHECK_HEADERS([sys/prctl.h])
315
316 # Solaris
317 AC_CHECK_HEADERS([sys/filio.h])
318
319 # Windows
320 AC_CHECK_HEADERS([windows.h winsock2.h ws2tcpip.h])
321
322 # NetBSD
323 AC_CHECK_HEADERS([sys/atomic.h])
324
325 # Other
326 AC_CHECK_HEADERS([sys/ioctl.h])
327 AC_CHECK_HEADERS([byteswap.h])
328 AC_CHECK_HEADERS([sys/syscall.h])
329 AC_CHECK_HEADERS([sys/eventfd.h])
330 AC_CHECK_HEADERS([execinfo.h])
331
332 #### Typdefs, structures, etc. ####
333
334 AC_C_CONST
335 AC_C_BIGENDIAN
336 AC_TYPE_PID_T
337 AC_TYPE_SIZE_T
338 AC_CHECK_TYPES(ssize_t, , [AC_DEFINE([ssize_t], [signed long],
339     [Define ssize_t if it is not done by the standard libs.])])
340 AC_TYPE_OFF_T
341
342 AC_TYPE_UID_T
343 AC_CHECK_DECLS(environ)
344
345 AC_CHECK_DEFINE([SIGXCPU], [signal.h], [
346 HAVE_SIGXCPU=1
347 AC_DEFINE([HAVE_SIGXCPU], 1, [Have SIGXCPU?])
348 ], [HAVE_SIGXCPU=0])
349 AM_CONDITIONAL(HAVE_SIGXCPU, test "x$HAVE_SIGXCPU" = "x1")
350
351 # Solaris lacks this
352 AC_CHECK_DEFINE([INADDR_NONE], [netinet/in.h], [],
353     [AC_CHECK_DEFINE([INADDR_NONE], [winsock2.h], [],
354         [AC_DEFINE([INADDR_NONE],  [0xffffffff], [Define INADDR_NONE if not found in <netinet/in.h>])])])
355
356 #### POSIX threads ####
357
358 ACX_PTHREAD
359
360 #### Check for libs ####
361
362 # ISO
363 AC_SEARCH_LIBS([pow], [m])
364
365 # POSIX
366 AC_SEARCH_LIBS([sched_setscheduler], [rt])
367 AC_SEARCH_LIBS([dlopen], [dl])
368 AC_SEARCH_LIBS([shm_open], [rt])
369 AC_SEARCH_LIBS([inet_ntop], [nsl])
370 AC_SEARCH_LIBS([timer_create], [rt])
371
372 # BSD
373 AC_SEARCH_LIBS([connect], [socket])
374
375 # Non-standard
376
377 # This magic is needed so we do not needlessly add static libs to the win32
378 # build, disabling its ability to make dlls.
379 AC_CHECK_FUNCS([getopt_long], [], [AC_CHECK_LIB([iberty], [getopt_long])])
380
381 AC_CHECK_LIB(gdbm, gdbm_open)
382 AC_CHECK_HEADERS(gdbm.h, [], [AC_MSG_ERROR([gdbm.h not found])])
383
384 #### Check for functions ####
385
386 # ISO
387 AC_CHECK_FUNCS([lrintf strtof])
388
389 # POSIX
390 AC_FUNC_FORK
391 AC_FUNC_GETGROUPS
392 AC_FUNC_SELECT_ARGTYPES
393 AC_CHECK_FUNCS([chmod chown clock_gettime getaddrinfo getgrgid_r getgrnam_r \
394     getpwnam_r getpwuid_r gettimeofday getuid inet_ntop inet_pton mlock nanosleep \
395     pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
396     sigaction sleep sysconf pthread_setaffinity_np])
397 AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
398
399 AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
400
401 # X/OPEN
402 AC_CHECK_FUNCS([readlink])
403
404 # SUSv2
405 AC_CHECK_FUNCS([ctime_r usleep])
406
407 # SUSv3
408 AC_CHECK_FUNCS([strerror_r])
409
410 # BSD
411 AC_CHECK_FUNCS([lstat])
412
413 # Non-standard
414
415 AC_CHECK_FUNCS([setresuid setresgid setreuid setregid seteuid setegid ppoll strsignal sig2str strtof_l])
416
417 AC_FUNC_ALLOCA
418
419 AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
420   pulseaudio_cv_PTHREAD_PRIO_INHERIT,
421   [save_CC=$CC; CC=$PTHREAD_CC
422    save_CFLAGS=$CFLAGS; CFLAGS=$PTHREAD_CFLAGS
423    save_LIBS=$LIBS; LIBS=$PTHREAD_LIBS
424    AC_LINK_IFELSE(
425      AC_LANG_PROGRAM(
426        [[
427          #include <pthread.h>
428        ]],
429        [[int i = PTHREAD_PRIO_INHERIT;]]),
430      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=yes],
431      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=no])
432    CC=$save_CC
433    CFLAGS=$save_CFLAGS
434    LIBS=$save_LIBS
435   ])
436
437 AS_IF([test "$pulseaudio_cv_PTHREAD_PRIO_INHERIT" = "yes"], [
438     AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])
439   ])
440
441 AC_DEFINE_UNQUOTED(PA_CFLAGS,"$CFLAGS", [The CFLAGS used during compilation])
442
443 #### Large File-Support (LFS) ####
444
445 AC_SYS_LARGEFILE
446
447 # Check for open64 to know if the current system does have open64() and similar functions
448 AC_CHECK_FUNCS([open64])
449
450 #### [lib]iconv ####
451
452 AM_ICONV
453
454 IT_PROG_INTLTOOL([0.35.0])
455 GETTEXT_PACKAGE=pulseaudio
456 AC_SUBST([GETTEXT_PACKAGE])
457 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
458 AM_GLIB_GNU_GETTEXT
459
460 pulselocaledir='${prefix}/${DATADIRNAME}/locale'
461 AC_SUBST(pulselocaledir)
462
463 ###################################
464 #      External libraries         #
465 ###################################
466
467 #### pkg-config ####
468
469 PKG_PROG_PKG_CONFIG
470
471 #### X11 (optional) ####
472
473 AC_ARG_ENABLE([x11],
474     AS_HELP_STRING([--disable-x11],[Disable optional X11 support]),
475         [
476             case "${enableval}" in
477                 yes) x11=yes ;;
478                 no) x11=no ;;
479                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-x11) ;;
480             esac
481         ],
482         [x11=auto])
483
484 if test "x${x11}" != xno ; then
485     PKG_CHECK_MODULES(X11, [ x11 ice sm ],
486         HAVE_X11=1,
487         [
488             HAVE_X11=0
489             if test "x$x11" = xyes ; then
490                 AC_MSG_ERROR([*** X11 not found])
491             fi
492         ])
493 else
494     HAVE_X11=0
495 fi
496
497 if test "x${HAVE_X11}" = x1 ; then
498    AC_DEFINE([HAVE_X11], 1, [Have X11?])
499 fi
500
501 AC_SUBST(X11_CFLAGS)
502 AC_SUBST(X11_LIBS)
503 AC_SUBST(HAVE_X11)
504 AM_CONDITIONAL([HAVE_X11], [test "x$HAVE_X11" = x1])
505
506 #### Capabilities (optional) ####
507
508 CAP_LIBS=''
509
510 AC_ARG_WITH(
511         [caps],
512         AS_HELP_STRING([--without-caps],[Omit support for POSIX capabilities.]))
513
514 if test "x${with_caps}" != "xno"; then
515     AC_SEARCH_LIBS([cap_init], [cap], [], [
516                     if test "x${with_caps}" = "xyes" ; then
517                         AC_MSG_ERROR([*** POSIX caps libraries not found])
518                     fi])
519     AC_CHECK_HEADERS([sys/capability.h], [], [
520                     if test "x${with_caps}" = "xyes" ; then
521                         AC_MSG_ERROR([*** POSIX caps headers not found])
522                     fi])
523 fi
524
525 #### Valgrind (optional) ####
526
527 AC_CHECK_HEADERS([valgrind/memcheck.h])
528
529 #### Sound file ####
530
531 PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.10 ])
532 AC_SUBST(LIBSNDFILE_CFLAGS)
533 AC_SUBST(LIBSNDFILE_LIBS)
534
535 PKG_CHECK_MODULES(LIBSPEEX, [ speexdsp >= 1.2 ])
536 AC_SUBST(LIBSPEEX_CFLAGS)
537 AC_SUBST(LIBSPEEX_LIBS)
538
539 #### atomic-ops ###
540
541 AC_MSG_CHECKING([whether we need libatomic_ops])
542 if test "x$need_libatomic_ops" = "xyes"; then
543    AC_MSG_RESULT([yes])
544    AC_CHECK_HEADERS([atomic_ops.h], [], [
545    AC_MSG_ERROR([*** libatomic-ops headers not found])
546    ])
547
548    # Win32 does not need the lib and breaks horribly if we try to include it
549    if test "x$os_is_win32" != "x1" ; then
550        LIBS="$LIBS -latomic_ops"
551    fi
552 else
553    AC_MSG_RESULT([no])
554 fi
555
556 #### Libsamplerate support (optional) ####
557
558 AC_ARG_ENABLE([samplerate],
559     AS_HELP_STRING([--disable-samplerate],[Disable optional libsamplerate support]),
560         [
561             case "${enableval}" in
562                 yes) samplerate=yes ;;
563                 no) samplerate=no ;;
564                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-samplerate) ;;
565             esac
566         ],
567         [samplerate=auto])
568
569 if test "x${samplerate}" != xno ; then
570     PKG_CHECK_MODULES(LIBSAMPLERATE, [ samplerate >= 0.1.0 ],
571         HAVE_LIBSAMPLERATE=1,
572         [
573             HAVE_LIBSAMPLERATE=0
574             if test "x$samplerate" = xyes ; then
575                 AC_MSG_ERROR([*** Libsamplerate not found])
576             fi
577         ])
578 else
579     HAVE_LIBSAMPLERATE=0
580 fi
581
582 if test "x${HAVE_LIBSAMPLERATE}" = x1 ; then
583    AC_DEFINE([HAVE_LIBSAMPLERATE], 1, [Have libsamplerate?])
584 fi
585
586 AC_SUBST(LIBSAMPLERATE_CFLAGS)
587 AC_SUBST(LIBSAMPLERATE_LIBS)
588 AC_SUBST(HAVE_LIBSAMPLERATE)
589 AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
590
591 #### OSS support (optional) ####
592
593 AC_ARG_ENABLE([oss],
594     AS_HELP_STRING([--disable-oss],[Disable optional OSS support]),
595         [
596             case "${enableval}" in
597                 yes) oss=yes ;;
598                 no) oss=no ;;
599                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss) ;;
600             esac
601         ],
602         [oss=auto])
603
604 if test "x${oss}" != xno ; then
605     AC_CHECK_HEADERS([sys/soundcard.h],
606         [
607             HAVE_OSS=1
608             AC_DEFINE([HAVE_OSS], 1, [Have OSS?])
609         ],
610         [
611             HAVE_OSS=0
612             if test "x$oss" = xyes ; then
613                 AC_MSG_ERROR([*** OSS support not found])
614             fi
615         ])
616 else
617     HAVE_OSS=0
618 fi
619
620 AC_SUBST(HAVE_OSS)
621 AM_CONDITIONAL([HAVE_OSS], [test "x$HAVE_OSS" = x1])
622
623
624 #### ALSA support (optional) ####
625
626 AC_ARG_ENABLE([alsa],
627     AS_HELP_STRING([--disable-alsa],[Disable optional ALSA support]),
628         [
629             case "${enableval}" in
630                 yes) alsa=yes ;;
631                 no) alsa=no ;;
632                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-alsa) ;;
633             esac
634         ],
635         [alsa=auto])
636
637 if test "x${alsa}" != xno ; then
638     PKG_CHECK_MODULES(ASOUNDLIB, [ alsa >= 1.0.17 ],
639         [
640             HAVE_ALSA=1
641             AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?])
642         ],
643         [
644             HAVE_ALSA=0
645             if test "x$alsa" = xyes ; then
646                 AC_MSG_ERROR([*** Needed alsa >= 1.0.17 support not found])
647             fi
648         ])
649 else
650     HAVE_ALSA=0
651 fi
652
653 AC_SUBST(ASOUNDLIB_CFLAGS)
654 AC_SUBST(ASOUNDLIB_LIBS)
655 AC_SUBST(HAVE_ALSA)
656 AM_CONDITIONAL([HAVE_ALSA], [test "x$HAVE_ALSA" = x1])
657
658 #### Solaris audio support (optional) ####
659
660 AC_ARG_ENABLE([solaris],
661     AS_HELP_STRING([--disable-solaris],[Disable optional Solaris audio support]),
662         [
663             case "${enableval}" in
664                 yes) solaris=yes ;;
665                 no) solaris=no ;;
666                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-solaris) ;;
667             esac
668         ],
669         [solaris=auto])
670
671 if test "x${solaris}" != xno ; then
672     AC_CHECK_HEADERS([sys/audio.h],
673         [
674             HAVE_SOLARIS=1
675             AC_DEFINE([HAVE_SOLARIS], 1, [Have Solaris audio?])
676         ],
677         [
678             HAVE_SOLARIS=0
679             if test "x$solaris" = xyes ; then
680                 AC_MSG_ERROR([*** Solaris audio support not found])
681             fi
682         ])
683 else
684     HAVE_SOLARIS=0
685 fi
686
687 AC_SUBST(HAVE_SOLARIS)
688 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$HAVE_SOLARIS" = x1])
689
690 #### GLib 2 support (optional) ####
691
692 AC_ARG_ENABLE([glib2],
693     AS_HELP_STRING([--disable-glib2],[Disable optional GLib 2 support]),
694         [
695             case "${enableval}" in
696                 yes) glib2=yes ;;
697                 no) glib2=no ;;
698                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-glib2) ;;
699             esac
700         ],
701         [glib2=auto])
702
703 if test "x${glib2}" != xno ; then
704     PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ],
705         HAVE_GLIB20=1,
706         [
707             HAVE_GLIB20=0
708             if test "x$glib2" = xyes ; then
709                 AC_MSG_ERROR([*** GLib 2 support not found])
710             fi
711         ])
712 else
713     HAVE_GLIB20=0
714 fi
715
716 AC_SUBST(GLIB20_CFLAGS)
717 AC_SUBST(GLIB20_LIBS)
718 AC_SUBST(HAVE_GLIB20)
719 AM_CONDITIONAL([HAVE_GLIB20], [test "x$HAVE_GLIB20" = x1])
720
721 #### GConf support (optional) ####
722
723 AC_ARG_ENABLE([gconf],
724     AS_HELP_STRING([--disable-gconf],[Disable optional GConf support]),
725         [
726             case "${enableval}" in
727                 yes) gconf=yes ;;
728                 no) gconf=no ;;
729                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gconf) ;;
730             esac
731         ],
732         [gconf=auto])
733
734 if test "x${gconf}" != xno ; then
735     PKG_CHECK_MODULES(GCONF, [ gconf-2.0 >= 2.4.0 ],
736         HAVE_GCONF=1,
737         [
738             HAVE_GCONF=0
739             if test "x$gconf" = xyes ; then
740                 AC_MSG_ERROR([*** GConf support not found])
741             fi
742         ])
743 else
744     HAVE_GCONF=0
745 fi
746
747 AC_SUBST(GCONF_CFLAGS)
748 AC_SUBST(GCONF_LIBS)
749 AC_SUBST(HAVE_GCONF)
750 AM_CONDITIONAL([HAVE_GCONF], [test "x$HAVE_GCONF" = x1])
751
752 #### Avahi support (optional) ####
753
754 AC_ARG_ENABLE([avahi],
755     AS_HELP_STRING([--disable-avahi],[Disable optional Avahi support]),
756         [
757             case "${enableval}" in
758                 yes) avahi=yes ;;
759                 no) avahi=no ;;
760                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-avahi) ;;
761             esac
762         ],
763         [avahi=auto])
764
765 if test "x${avahi}" != xno ; then
766     PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.0 ],
767         HAVE_AVAHI=1,
768         [
769                 HAVE_AVAHI=0
770                 if test "x$avahi" = xyes ; then
771                         AC_MSG_ERROR([*** Avahi support not found])
772                 fi
773         ])
774 else
775     HAVE_AVAHI=0
776 fi
777
778 AC_SUBST(AVAHI_CFLAGS)
779 AC_SUBST(AVAHI_LIBS)
780 AC_SUBST(HAVE_AVAHI)
781 AM_CONDITIONAL([HAVE_AVAHI], [test "x$HAVE_AVAHI" = x1])
782
783 ### LIBOIL ####
784
785 PKG_CHECK_MODULES(LIBOIL, [ liboil-0.3 >= 0.3.0 ])
786 AC_SUBST(LIBOIL_CFLAGS)
787 AC_SUBST(LIBOIL_LIBS)
788
789 ### JACK (optional) ####
790
791 AC_ARG_ENABLE([jack],
792     AS_HELP_STRING([--disable-jack],[Disable optional JACK support]),
793         [
794             case "${enableval}" in
795                 yes) jack=yes ;;
796                 no) jack=no ;;
797                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-jack) ;;
798             esac
799         ],
800         [jack=auto])
801
802 if test "x${jack}" != xno ; then
803     PKG_CHECK_MODULES(JACK, [ jack >= 0.100 ],
804         HAVE_JACK=1,
805         [
806             HAVE_JACK=0
807             if test "x$jack" = xyes ; then
808                 AC_MSG_ERROR([*** JACK support not found])
809             fi
810         ])
811 else
812     HAVE_JACK=0
813 fi
814
815 AC_SUBST(JACK_CFLAGS)
816 AC_SUBST(JACK_LIBS)
817 AC_SUBST(HAVE_JACK)
818 AM_CONDITIONAL([HAVE_JACK], [test "x$HAVE_JACK" = x1])
819
820 #### Async DNS support (optional) ####
821
822 AC_ARG_ENABLE([asyncns],
823     AS_HELP_STRING([--disable-asyncns],[Disable optional Async DNS support]),
824         [
825             case "${enableval}" in
826                 yes) asyncns=yes ;;
827                 no) asyncns=no ;;
828                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-asyncns) ;;
829             esac
830         ],
831         [asyncns=auto])
832
833 if test "x${asyncns}" != xno ; then
834     PKG_CHECK_MODULES(LIBASYNCNS, [ libasyncns >= 0.1 ],
835         HAVE_LIBASYNCNS=1,
836         [
837             HAVE_LIBASYNCNS=0
838             if test "x$asyncns" = xyes ; then
839                 AC_MSG_ERROR([*** Async DNS support not found])
840             fi
841         ])
842 else
843     HAVE_LIBASYNCNS=0
844 fi
845
846 AC_SUBST(LIBASYNCNS_CFLAGS)
847 AC_SUBST(LIBASYNCNS_LIBS)
848 AC_SUBST(HAVE_LIBASYNCNS)
849 AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
850
851 if test "x$HAVE_LIBASYNCNS" != "x0" ; then
852    AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?])
853 fi
854
855 #### TCP wrappers (optional) ####
856
857 AC_ARG_ENABLE([tcpwrap],
858     AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]),
859         [
860             case "${enableval}" in
861                 yes) tcpwrap=yes ;;
862                 no) tcpwrap=no ;;
863                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tcpwrap) ;;
864             esac
865         ],
866         [tcpwrap=auto])
867
868 if test "x${tcpwrap}" != xno ; then
869     ACX_LIBWRAP
870     if test "x${LIBWRAP_LIBS}" = x && test "x$tcpwrap" = xyes ; then
871         AC_MSG_ERROR([*** TCP wrappers support not found])
872     fi
873 else
874     LIBWRAP_LIBS=
875 fi
876
877 AC_SUBST(LIBWRAP_LIBS)
878
879 #### LIRC support (optional) ####
880
881 AC_ARG_ENABLE([lirc],
882     AS_HELP_STRING([--disable-lirc],[Disable optional LIRC support]),
883         [
884             case "${enableval}" in
885                 yes) lirc=yes ;;
886                 no) lirc=no ;;
887                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-lirc) ;;
888             esac
889         ],
890         [lirc=auto])
891
892 if test "x${lirc}" != xno ; then
893     ACX_LIRC
894     if test "x${HAVE_LIRC}" = x0 && test "x$lirc" = xyes ; then
895         AC_MSG_ERROR([*** LIRC support not found])
896     fi
897 else
898     HAVE_LIRC=0
899 fi
900
901 AC_SUBST(LIRC_CFLAGS)
902 AC_SUBST(LIRC_LIBS)
903 AM_CONDITIONAL([HAVE_LIRC], [test "x$HAVE_LIRC" = x1])
904
905 #### HAL support (optional) ####
906
907 AC_ARG_ENABLE([hal],
908     AS_HELP_STRING([--disable-hal],[Disable optional HAL support]),
909         [
910             case "${enableval}" in
911                 yes) hal=yes ;;
912                 no) hal=no ;;
913                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal) ;;
914             esac
915         ],
916         [hal=auto])
917 if test "x${hal}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
918     PKG_CHECK_MODULES(HAL, [ hal >= 0.5.11 ],
919         [
920             HAVE_HAL=1
921             AC_DEFINE([HAVE_HAL], 1, [Have HAL.])
922         ],
923         [
924             HAVE_HAL=0
925             if test "x$hal" = xyes ; then
926                 AC_MSG_ERROR([*** HAL support not found])
927             fi
928         ])
929 else
930     HAVE_HAL=0
931 fi
932
933 AC_SUBST(HAL_CFLAGS)
934 AC_SUBST(HAL_LIBS)
935 AC_SUBST(HAVE_HAL)
936 AM_CONDITIONAL([HAVE_HAL], [test "x$HAVE_HAL" = x1])
937
938 #### BlueZ support (optional) ####
939
940 AC_ARG_ENABLE([bluez],
941     AS_HELP_STRING([--disable-bluez],[Disable optional BlueZ support]),
942         [
943             case "${enableval}" in
944                 yes) bluez=yes ;;
945                 no) bluez=no ;;
946                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-bluez) ;;
947             esac
948         ],
949         [bluez=auto])
950 if test "x${bluez}" != xno ; then
951     PKG_CHECK_MODULES(BLUEZ, [ bluez >= 3.0 ],
952         HAVE_BLUEZ=1,
953         [
954             HAVE_BLUEZ=0
955             if test "x$bluez" = xyes ; then
956                 AC_MSG_ERROR([*** BLUEZ support not found])
957             fi
958         ])
959 else
960     HAVE_BLUEZ=0
961 fi
962
963 AC_SUBST(BLUEZ_CFLAGS)
964 AC_SUBST(BLUEZ_LIBS)
965 AC_SUBST(HAVE_BLUEZ)
966 AM_CONDITIONAL([HAVE_BLUEZ], [test "x$HAVE_BLUEZ" = x1])
967
968 #### D-Bus support (optional) ####
969
970 AC_ARG_ENABLE([dbus],
971     AS_HELP_STRING([--disable-dbus],[Disable optional D-Bus support]),
972         [
973             case "${enableval}" in
974                 yes) dbus=yes ;;
975                 no) dbus=no ;;
976                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-dbus) ;;
977             esac
978         ],
979         [dbus=auto])
980
981 if test "x$HAVE_HAL" = x1 ; then
982    dbus=yes
983 fi
984
985 if test "x${dbus}" != xno || test "x${bluez}" != xno || "x${hal}" != xno ; then
986
987     PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.0.0 ],
988         [
989             HAVE_DBUS=1
990             saved_LIBS="$LIBS"
991             LIBS="$LIBS $DBUS_LIBS"
992             AC_CHECK_FUNCS(dbus_watch_get_unix_fd)
993             LIBS="$saved_LIBS"
994             AC_DEFINE([HAVE_DBUS], 1, [Have D-Bus.])
995         ],
996         [
997             HAVE_DBUS=0
998             if test "x$dbus" = xyes ; then
999                 AC_MSG_ERROR([*** D-Bus support not found])
1000             fi
1001         ])
1002 else
1003     HAVE_DBUS=0
1004 fi
1005
1006 AC_SUBST(DBUS_CFLAGS)
1007 AC_SUBST(DBUS_LIBS)
1008 AC_SUBST(HAVE_DBUS)
1009 AM_CONDITIONAL([HAVE_DBUS], [test "x$HAVE_DBUS" = x1])
1010
1011 #### PolicyKit support (optional) ####
1012
1013 AC_ARG_ENABLE([polkit],
1014     AS_HELP_STRING([--disable-polkit],[Disable optional PolicyKit support]),
1015         [
1016             case "${enableval}" in
1017                 yes) polkit=yes ;;
1018                 no) polkit=no ;;
1019                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-polkit) ;;
1020             esac
1021         ],
1022         [polkit=auto])
1023
1024 if test "x${polkit}" != xno ; then
1025
1026     PKG_CHECK_MODULES(POLKIT, [ polkit-dbus >= 0.7 ],
1027         [
1028             HAVE_POLKIT=1
1029             AC_DEFINE([HAVE_POLKIT], 1, [Have PolicyKit])
1030             policydir=`pkg-config polkit-dbus --variable prefix`/share/PolicyKit/policy/
1031             AC_SUBST(policydir)
1032         ],
1033         [
1034             HAVE_POLKIT=0
1035             if test "x$polkit" = xyes ; then
1036                 AC_MSG_ERROR([*** PolicyKit support not found])
1037             fi
1038         ])
1039 else
1040     HAVE_POLKIT=0
1041 fi
1042
1043 AC_SUBST(POLKIT_CFLAGS)
1044 AC_SUBST(POLKIT_LIBS)
1045 AC_SUBST(HAVE_POLKIT)
1046 AM_CONDITIONAL([HAVE_POLKIT], [test "x$HAVE_POLKIT" = x1])
1047
1048 #### OpenSSL support (optional) ####
1049
1050 AC_ARG_ENABLE([openssl],
1051     AS_HELP_STRING([--disable-openssl],[Disable OpenSSL support (used for Airtunes/RAOP)]),
1052         [
1053             case "${enableval}" in
1054                 yes) openssl=yes ;;
1055                 no) openssl=no ;;
1056                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-openssl) ;;
1057             esac
1058         ],
1059         [openssl=auto])
1060
1061 if test "x${openssl}" != xno ; then
1062
1063     PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ],
1064         [
1065             HAVE_OPENSSL=1
1066             AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL])
1067         ],
1068         [
1069             HAVE_OPENSSL=0
1070             if test "x$openssl" = xyes ; then
1071                 AC_MSG_ERROR([*** OpenSSL support not found])
1072             fi
1073         ])
1074 else
1075     HAVE_OPENSSL=0
1076 fi
1077
1078 AC_SUBST(OPENSSL_CFLAGS)
1079 AC_SUBST(OPENSSL_LIBS)
1080 AC_SUBST(HAVE_OPENSSL)
1081 AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
1082
1083 ### Build and Install man pages ###
1084 AC_ARG_ENABLE(manpages,
1085         AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]),
1086 [case "${enableval}" in
1087   yes) manpages=yes ;;
1088   no)  manpages=no ;;
1089   *) AC_MSG_ERROR([bad value ${enableval} for --disable-manpages]) ;;
1090 esac],[manpages=yes])
1091
1092 AM_CONDITIONAL([BUILD_MANPAGES], [test "x$manpages" = xyes])
1093
1094 #### PulseAudio system group & user  #####
1095
1096 AC_ARG_WITH(system_user, AS_HELP_STRING([--with-system-user=<user>],[User for running the PulseAudio daemon as a system-wide instance (pulse)]))
1097 if test -z "$with_system_user" ; then
1098     PA_SYSTEM_USER=pulse
1099 else
1100     PA_SYSTEM_USER=$with_system_user
1101 fi
1102 AC_SUBST(PA_SYSTEM_USER)
1103 AC_DEFINE_UNQUOTED(PA_SYSTEM_USER,"$PA_SYSTEM_USER", [User for running the PulseAudio system daemon])
1104
1105 AC_ARG_WITH(system_group,AS_HELP_STRING([--with-system-group=<group>],[Group for running the PulseAudio daemon as a system-wide instance (pulse)]))
1106 if test -z "$with_system_group" ; then
1107     PA_SYSTEM_GROUP=pulse
1108 else
1109     PA_SYSTEM_GROUP=$with_system_group
1110 fi
1111 AC_SUBST(PA_SYSTEM_GROUP)
1112 AC_DEFINE_UNQUOTED(PA_SYSTEM_GROUP,"$PA_SYSTEM_GROUP", [Group for the PulseAudio system daemon])
1113
1114 AC_ARG_WITH(realtime_group,AS_HELP_STRING([--with-realtime-group=<group>],[Group for users that are allowed to start the PulseAudio daemon with realtime scheduling (realtime)]))
1115 if test -z "$with_realtime_group" ; then
1116     PA_REALTIME_GROUP=pulse-rt
1117 else
1118     PA_REALTIME_GROUP=$with_realtime_group
1119 fi
1120 AC_SUBST(PA_REALTIME_GROUP)
1121 AC_DEFINE_UNQUOTED(PA_REALTIME_GROUP,"$PA_REALTIME_GROUP", [Realtime group])
1122
1123 AC_ARG_WITH(access_group,AS_HELP_STRING([--with-access-group=<group>],[Group which is allowed access to a system-wide PulseAudio daemon (pulse-access)]))
1124 if test -z "$with_access_group" ; then
1125     PA_ACCESS_GROUP=pulse-access
1126 else
1127     PA_ACCESS_GROUP=$with_access_group
1128 fi
1129 AC_SUBST(PA_ACCESS_GROUP)
1130 AC_DEFINE_UNQUOTED(PA_ACCESS_GROUP,"$PA_ACCESS_GROUP", [Access group])
1131
1132 AC_ARG_ENABLE(
1133         per_user_esound_socket,
1134         AS_HELP_STRING([--disable-per-user-esound-socket], [Use global esound socket directory /tmp/.esd/socket.]),
1135         [
1136             case "${enableval}" in
1137                 yes) per_user_esound_socket=1 ;;
1138                 no) per_user_esound_socket=0 ;;
1139                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-per-user-esound-socket) ;;
1140             esac
1141         ],
1142         [per_user_esound_socket=1])
1143
1144 if test "x$per_user_esound_socket" = "x1"; then
1145    AC_DEFINE([USE_PER_USER_ESOUND_SOCKET], [1], [Define this if you want per-user esound socket directories])
1146 fi
1147
1148 #### PulseAudio system runtime dir ####
1149 PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
1150 AC_SUBST(PA_SYSTEM_RUNTIME_PATH)
1151 PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
1152 AC_SUBST(PA_SYSTEM_CONFIG_PATH)
1153 PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
1154 AC_SUBST(PA_SYSTEM_STATE_PATH)
1155
1156 ###################################
1157 #            Output               #
1158 ###################################
1159
1160 AC_ARG_ENABLE(
1161         [static-bins],
1162         AS_HELP_STRING([--enable-static-bins],[Statically link executables.]),
1163         [STATIC_BINS=1], [STATIC_BINS=0])
1164 AM_CONDITIONAL([STATIC_BINS], [test "x$STATIC_BINS" = "x1"])
1165
1166 AC_ARG_WITH(
1167         [preopen-mods],
1168         AS_HELP_STRING([--with-preopen-mods],[Modules to preopen in daemon (default: all).]),
1169         [PREOPEN_MODS=$withval], [PREOPEN_MODS="all"])
1170 AM_CONDITIONAL([PREOPEN_MODS], [test "x$PREOPEN_MODS" != "xall"])
1171 if test "x$PREOPEN_MODS" != "xall" ; then
1172     tmpLIBS=""
1173     for mod in $PREOPEN_MODS; do
1174         tmpLIBS="$tmpLIBS module-$mod.la"
1175     done
1176     PREOPEN_MODS="$tmpLIBS"
1177     AC_SUBST(PREOPEN_MODS)
1178 fi
1179
1180 AC_ARG_WITH(
1181         [module-dir],
1182         AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINORMICRO}/modules/]),
1183         [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINORMICRO}/modules/"])
1184
1185 AC_SUBST(modlibexecdir)
1186
1187 AC_ARG_ENABLE(
1188         [force-preopen],
1189         AS_HELP_STRING([--enable-force-preopen],[Preopen modules, even when dlopen() is supported.]),
1190         [FORCE_PREOPEN=$enableval], [FORCE_PREOPEN=no])
1191 AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
1192
1193 AC_CONFIG_FILES([
1194 Makefile
1195 src/Makefile
1196 man/Makefile
1197 libpulse.pc
1198 libpulse-simple.pc
1199 libpulse-browse.pc
1200 libpulse-mainloop-glib.pc
1201 doxygen/Makefile
1202 doxygen/doxygen.conf
1203 src/pulse/version.h
1204 po/Makefile.in
1205 ])
1206 AC_OUTPUT
1207
1208 # ==========================================================================
1209 ENABLE_X11=no
1210 if test "x$HAVE_X11" = "x1" ; then
1211    ENABLE_X11=yes
1212 fi
1213
1214 ENABLE_OSS=no
1215 if test "x$HAVE_OSS" = "x1" ; then
1216    ENABLE_OSS=yes
1217 fi
1218
1219 ENABLE_ALSA=no
1220 if test "x$HAVE_ALSA" = "x1" ; then
1221    ENABLE_ALSA=yes
1222 fi
1223
1224 ENABLE_SOLARIS=no
1225 if test "x$HAVE_SOLARIS" = "x1" ; then
1226    ENABLE_SOLARIS=yes
1227 fi
1228
1229 ENABLE_GLIB20=no
1230 if test "x$HAVE_GLIB20" = "x1" ; then
1231    ENABLE_GLIB20=yes
1232 fi
1233
1234 ENABLE_GCONF=no
1235 if test "x$HAVE_GCONF" = "x1" ; then
1236    ENABLE_GCONF=yes
1237 fi
1238
1239 ENABLE_AVAHI=no
1240 if test "x$HAVE_AVAHI" = "x1" ; then
1241    ENABLE_AVAHI=yes
1242 fi
1243
1244 ENABLE_JACK=no
1245 if test "x$HAVE_JACK" = "x1" ; then
1246    ENABLE_JACK=yes
1247 fi
1248
1249 ENABLE_LIBASYNCNS=no
1250 if test "x$HAVE_LIBASYNCNS" = "x1" ; then
1251    ENABLE_LIBASYNCNS=yes
1252 fi
1253
1254 ENABLE_LIRC=no
1255 if test "x$HAVE_LIRC" = "x1" ; then
1256    ENABLE_LIRC=yes
1257 fi
1258
1259 ENABLE_HAL=no
1260 if test "x$HAVE_HAL" = "x1" ; then
1261    ENABLE_HAL=yes
1262 fi
1263
1264 ENABLE_TCPWRAP=no
1265 if test "x${LIBWRAP_LIBS}" != x ; then
1266    ENABLE_TCPWRAP=yes
1267 fi
1268
1269 ENABLE_LIBSAMPLERATE=no
1270 if test "x${HAVE_LIBSAMPLERATE}" = "x1" ; then
1271    ENABLE_LIBSAMPLERATE=yes
1272 fi
1273
1274 ENABLE_BLUEZ=no
1275 if test "x${HAVE_BLUEZ}" = "x1" ; then
1276    ENABLE_BLUEZ=yes
1277 fi
1278
1279 ENABLE_POLKIT=no
1280 if test "x${HAVE_POLKIT}" = "x1" ; then
1281    ENABLE_POLKIT=yes
1282 fi
1283
1284 ENABLE_OPENSSL=no
1285 if test "x${HAVE_OPENSSL}" = "x1" ; then
1286    ENABLE_OPENSSL=yes
1287 fi
1288
1289 ENABLE_PER_USER_ESOUND_SOCKET=no
1290 if test "x$per_user_esound_socket" = "x1" ; then
1291    ENABLE_PER_USER_ESOUND_SOCKET=yes
1292 fi
1293
1294 echo "
1295  ---{ $PACKAGE_NAME $VERSION }---
1296
1297     prefix:                        ${prefix}
1298     sysconfdir:                    ${sysconfdir}
1299     localstatedir:                 ${localstatedir}
1300     System Runtime Path:           ${PA_SYSTEM_RUNTIME_PATH}
1301     System State Path:             ${PA_SYSTEM_STATE_PATH}
1302     System Config Path:            ${PA_SYSTEM_CONFIG_PATH}
1303     Compiler:                      ${CC}
1304     CFLAGS:                        ${CFLAGS}
1305
1306     Have X11:                      ${ENABLE_X11}
1307     Enable OSS:                    ${ENABLE_OSS}
1308     Enable Alsa:                   ${ENABLE_ALSA}
1309     Enable Solaris:                ${ENABLE_SOLARIS}
1310     Enable GLib 2.0:               ${ENABLE_GLIB20}
1311     Enable GConf:                  ${ENABLE_GCONF}
1312     Enable Avahi:                  ${ENABLE_AVAHI}
1313     Enable Jack:                   ${ENABLE_JACK}
1314     Enable Async DNS:              ${ENABLE_LIBASYNCNS}
1315     Enable LIRC:                   ${ENABLE_LIRC}
1316     Enable HAL:                    ${ENABLE_HAL}
1317     Enable BlueZ:                  ${ENABLE_BLUEZ}
1318     Enable TCP Wrappers:           ${ENABLE_TCPWRAP}
1319     Enable libsamplerate:          ${ENABLE_LIBSAMPLERATE}
1320     Enable PolicyKit:              ${ENABLE_POLKIT}
1321     Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
1322
1323     System User:                   ${PA_SYSTEM_USER}
1324     System Group:                  ${PA_SYSTEM_GROUP}
1325     Realtime Group:                ${PA_REALTIME_GROUP}
1326     Access Group:                  ${PA_ACCESS_GROUP}
1327     Enable per-user EsounD socket: ${ENABLE_PER_USER_ESOUND_SOCKET}
1328     Force preopen:                 ${FORCE_PREOPEN}
1329     Preopened modules:             ${PREOPEN_MODS}
1330 "