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