Sending translation for Czech
[pulseaudio-mirror.git] / configure.ac
blob25cee577ab3de550abcd927395257c0b8eac04e5
1 # -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
4 # This file is part of PulseAudio.
6 # Copyright 2004-2008 Lennart Poettering
7 # Copyright 2006-2007 Pierre Ossman <ossman@cendio.se> for Cendio AB
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.
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.
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.
23 AC_PREREQ(2.63)
25 m4_define(pa_major, [0])
26 m4_define(pa_minor, [9])
27 m4_define(pa_micro, [15])
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 -Wno-portability])
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/])
42 AC_SUBST(PA_API_VERSION, 12)
43 AC_SUBST(PA_PROTOCOL_VERSION, 15)
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])
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])
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])
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])
61 AC_CANONICAL_HOST
62 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
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}"
69 #### Platform hacks ####
71 case $host in
72    *-*-solaris* )
73       AC_DEFINE(_XOPEN_SOURCE,        600, Needed to get declarations for msg_control and msg_controllen on Solaris)
74       AC_DEFINE(__EXTENSIONS__,         1, Needed to get declarations for msg_control and msg_controllen on Solaris)
75       ;;
76 esac
78 #### Checks for programs. ####
80 # mkdir -p
82 AC_PROG_MKDIR_P
84 # CC
86 AC_PROG_CC
87 AC_PROG_CC_C99
88 AM_PROG_CC_C_O
89 AC_PROG_GCC_TRADITIONAL
90 AC_USE_SYSTEM_EXTENSIONS
92 # M4
94 AC_CHECK_PROGS([M4], gm4 m4, no)
95 if test "x$M4" = xno ; then
96    AC_MSG_ERROR([m4 missing])
99 dnl Compiler flags
100 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 for flag in $DESIRED_FLAGS ; do
103   CC_CHECK_CFLAGS([$flag], [CFLAGS="$CFLAGS $flag"])
104 done
106 dnl Linker flags.
107 dnl Check whether the linker supports the -version-script option.
109 dnl This variable is used to make sure ${srcdir} is expanded and not
110 dnl passed to the CC_CHECK_LDFLAGS macro as a name.
111 tmp_ldflag="-Wl,-version-script=${srcdir}/src/map-file"
113 CC_CHECK_LDFLAGS([${tmp_ldflag}],
114     [VERSIONING_LDFLAGS='-Wl,-version-script=$(srcdir)/map-file'])
115 AC_SUBST([VERSIONING_LDFLAGS])
117 dnl Check whether to build tests by default (as compile-test) or not
118 AC_ARG_ENABLE([default-build-tests],
119     AS_HELP_STRING([--disable-default-build-tests], [Build test programs only during make check]))
121 AM_CONDITIONAL([BUILD_TESTS_DEFAULT], [test "x$enable_default_build_tests" != "xno"])
123 # Native atomic operation support
124 AC_ARG_ENABLE([atomic-arm-linux-helpers],
125     AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]),
126         [
127             case "${enableval}" in
128                 yes) atomic_arm_linux_helpers=yes ;;
129                 no) atomic_arm_linux_helpers=no ;;
130                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
131             esac
132         ],
133         [atomic_arm_linux_helpers=auto])
135 AC_ARG_ENABLE([atomic-arm-memory-barrier],
136     AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]),
137         [
138             case "${enableval}" in
139                 yes) AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers]) ;;
140                 no) ;;
141                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-atomic-arm-linux-helpers) ;;
142             esac
143         ],)
145 AC_ARG_ENABLE([netbsd-atomic-ops],
146     AS_HELP_STRING([--enable-netbsd-atomic-ops],[Use the native NetBSD atomic_ops implementation]),
147         [
148             case "${enableval}" in
149                 yes) atomic_netbsd_helpers=yes ;;
150                 no) atomic_netbsd_helpers=no ;;
151                 *) AC_MSG_ERROR(bad value ${enableval} for --enable-netbsd-atomic-ops) ;;
152             esac
153         ],
154         [atomic_netbsd_helpers=auto])
156 AC_MSG_CHECKING([target operating system])
157 case $host in
158         *-*-linux*)
159             AC_MSG_RESULT([linux])
160             pulse_target_os=linux
161         ;;
162         *-*-netbsd*)
163             AC_MSG_RESULT([netbsd])
164             pulse_target_os=netbsd
165         ;;
166         *)
167             AC_MSG_RESULT([unknown])
168             pulse_target_os=unknown
169         ;;
170 esac
172 # If everything else fails use libatomic_ops
173 need_libatomic_ops=yes
175 AC_CACHE_CHECK([whether $CC knows __sync_bool_compare_and_swap()],
176   pulseaudio_cv_sync_bool_compare_and_swap,
177   [AC_LINK_IFELSE(
178      AC_LANG_PROGRAM([], [[int a = 4; __sync_bool_compare_and_swap(&a, 4, 5);]]),
179      [pulseaudio_cv_sync_bool_compare_and_swap=yes],
180      [pulseaudio_cv_sync_bool_compare_and_swap=no])
181   ])
183 if test "$pulseaudio_cv_sync_bool_compare_and_swap" = "yes" ; then
184     AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
185     need_libatomic_ops=no
186 else
187     # HW specific atomic ops stuff
188     AC_MSG_CHECKING([architecture for native atomic operations])
189     case $host_cpu in
190         arm*)
191             AC_MSG_RESULT([arm])
192             AC_MSG_CHECKING([whether we can use Linux kernel helpers])
193             # The Linux kernel helper functions have been there since 2.6.16. However
194             # compile time checking for kernel version in cross compile environment
195             # (which is usually the case for arm cpu) is tricky (or impossible).
196             if test "x$pulse_target_os" = "xlinux" && test "x$atomic_arm_linux_helpers" != "xno"; then
197                 AC_MSG_RESULT([yes])
198                 AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
199                 need_libatomic_ops=no
200             else
201                AC_MSG_RESULT([no])
202                AC_CACHE_CHECK([compiler support for arm inline asm atomic operations],
203                  pulseaudio_cv_support_arm_atomic_ops,
204                  [AC_COMPILE_IFELSE(
205                     AC_LANG_PROGRAM([],
206                       [[volatile int a=0;
207                         int o=0, n=1, r;
208                         asm volatile ("ldrex    %0, [%1]\n"
209                                          "subs  %0, %0, %2\n"
210                                          "strexeq %0, %3, [%1]\n"
211                                          : "=&r" (r)
212                                          : "r" (&a), "Ir" (o), "r" (n)
213                                          : "cc");
214                         return (a==1 ? 0 : -1);
215                       ]]),
216                     [pulseaudio_cv_support_arm_atomic_ops=yes],
217                     [pulseaudio_cv_support_arm_atomic_ops=no])
218                  ])
219                AS_IF([test "$pulseaudio_cv_support_arm_atomic_ops" = "yes"], [
220                    AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARMv6 instructions.])
221                    need_libatomic_ops=no
222                  ])
223            fi
224         ;;
225         *)
226             if test "x$pulse_target_os" = "xnetbsd" && test "x$atomic_netbsd_helpers" = "xyes"; then
227                 AC_MSG_RESULT([yes])
228                 AC_DEFINE_UNQUOTED(NETBSD_ATOMIC_OPS, 1, [netbsd implementation])
229                 need_libatomic_ops=no
230             else
231                 AC_MSG_RESULT([unknown])
232             fi
233         ;;
234     esac
237 CC_CHECK_TLS
239 AC_CACHE_CHECK([whether $CC knows _Bool],
240   pulseaudio_cv__Bool,
241   [AC_COMPILE_IFELSE(
242      AC_LANG_PROGRAM([], [[_Bool b;]]),
243      [pulseaudio_cv__Bool=yes],
244      [pulseaudio_cv__Bool=no])
245   ])
247 AS_IF([test "$pulseaudio_cv__Bool" = "yes"], [
248     AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.])
249   ])
251 #### libtool stuff ####
252 LT_PREREQ(2.2)
253 LT_INIT([dlopen win32-dll disable-static])
255 dnl Unfortunately, even up to libtool 2.2.6a there is no way to know
256 dnl exactly which version of libltdl is present in the system, so we
257 dnl just assume that it's a working version as long as we have the
258 dnl library and the header files.
260 dnl As an extra safety device, check for lt_dladvise_init() which is
261 dnl only implemented in libtool 2.x, and refine as we go if we have
262 dnl refined requirements.
264 dnl Check the header files first since the system may have a
265 dnl libltdl.so for runtime, but no headers, and we want to bail out as
266 dnl soon as possible.
268 dnl We don't need any special variable for this though, since the user
269 dnl can give the proper place to find libltdl through the standard
270 dnl variables like LDFLAGS and CPPFLAGS.
272 AC_CHECK_HEADER([ltdl.h],
273     [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])],
274     [LIBLTDL=])
276 AS_IF([test "x$LIBLTDL" = "x"],
277     [AC_MSG_ERROR([Unable to find libltdl.])])
278 AC_SUBST([LIBLTDL])
280 #### Determine build environment ####
282 os_is_win32=0
284 case "$host_os" in
285         mingw*)
286         AC_DEFINE([OS_IS_WIN32], 1, [Build target is Windows.])
287         os_is_win32=1
288                 ;;
289         esac
291 AM_CONDITIONAL(OS_IS_WIN32, test "x$os_is_win32" = "x1")
293 ###################################
294 #   Basic environment checks      #
295 ###################################
297 #### Checks for header files. ####
299 # ISO
300 AC_HEADER_STDC
302 # POSIX
303 AC_CHECK_HEADERS([arpa/inet.h glob.h grp.h netdb.h netinet/in.h \
304     netinet/in_systm.h netinet/tcp.h poll.h pwd.h sched.h \
305     sys/mman.h sys/resource.h sys/select.h sys/socket.h sys/wait.h \
306     sys/uio.h syslog.h sys/dl.h dlfcn.h linux/sockios.h])
307 AC_CHECK_HEADERS([netinet/ip.h], [], [],
308                  [#include <sys/types.h>
309                   #if HAVE_NETINET_IN_H
310                   # include <netinet/in.h>
311                   #endif
312                   #if HAVE_NETINET_IN_SYSTM_H
313                   # include <netinet/in_systm.h>
314                   #endif
315                  ])
316 AC_CHECK_HEADERS([regex.h], [HAVE_REGEX=1], [HAVE_REGEX=0])
317 AC_CHECK_HEADERS([sys/un.h], [HAVE_AF_UNIX=1], [HAVE_AF_UNIX=0])
319 AM_CONDITIONAL(HAVE_REGEX, test "x$HAVE_REGEX" = "x1")
320 AM_CONDITIONAL(HAVE_AF_UNIX, test "x$HAVE_AF_UNIX" = "x1")
322 # Linux
323 AC_CHECK_HEADERS([linux/input.h], [HAVE_EVDEV=1], [HAVE_EVDEV=0])
325 AM_CONDITIONAL([HAVE_EVDEV], [test "x$HAVE_EVDEV" = "x1"])
327 AC_CHECK_HEADERS([sys/prctl.h])
329 # Solaris
330 AC_CHECK_HEADERS([sys/filio.h])
332 # Windows
333 AC_CHECK_HEADERS([windows.h winsock2.h ws2tcpip.h])
335 # NetBSD
336 AC_CHECK_HEADERS([sys/atomic.h])
338 # Other
339 AC_CHECK_HEADERS([sys/ioctl.h])
340 AC_CHECK_HEADERS([byteswap.h])
341 AC_CHECK_HEADERS([sys/syscall.h])
342 AC_CHECK_HEADERS([sys/eventfd.h])
343 AC_CHECK_HEADERS([execinfo.h])
345 #### Typdefs, structures, etc. ####
347 AC_C_CONST
348 AC_C_BIGENDIAN
349 AC_TYPE_PID_T
350 AC_TYPE_SIZE_T
351 AC_CHECK_TYPES(ssize_t, , [AC_DEFINE([ssize_t], [signed long],
352     [Define ssize_t if it is not done by the standard libs.])])
353 AC_TYPE_OFF_T
355 AC_TYPE_UID_T
356 AC_CHECK_DECLS(environ)
358 AC_CHECK_DEFINE([SIGXCPU], [signal.h], [
359 HAVE_SIGXCPU=1
360 AC_DEFINE([HAVE_SIGXCPU], 1, [Have SIGXCPU?])
361 ], [HAVE_SIGXCPU=0])
362 AM_CONDITIONAL(HAVE_SIGXCPU, test "x$HAVE_SIGXCPU" = "x1")
364 # Solaris lacks this
365 AC_CHECK_DEFINE([INADDR_NONE], [netinet/in.h], [],
366     [AC_CHECK_DEFINE([INADDR_NONE], [winsock2.h], [],
367         [AC_DEFINE([INADDR_NONE],  [0xffffffff], [Define INADDR_NONE if not found in <netinet/in.h>])])])
369 #### POSIX threads ####
371 ACX_PTHREAD
373 #### Check for libs ####
375 # ISO
376 AC_SEARCH_LIBS([pow], [m])
378 # POSIX
379 AC_SEARCH_LIBS([sched_setscheduler], [rt])
380 AC_SEARCH_LIBS([dlopen], [dl])
381 AC_SEARCH_LIBS([shm_open], [rt])
382 AC_SEARCH_LIBS([inet_ntop], [nsl])
383 AC_SEARCH_LIBS([timer_create], [rt])
385 # BSD
386 AC_SEARCH_LIBS([connect], [socket])
388 # Non-standard
390 # This magic is needed so we do not needlessly add static libs to the win32
391 # build, disabling its ability to make dlls.
392 AC_CHECK_FUNCS([getopt_long], [], [AC_CHECK_LIB([iberty], [getopt_long])])
394 AC_CHECK_LIB(gdbm, gdbm_open)
395 AC_CHECK_HEADERS(gdbm.h, [], [AC_MSG_ERROR([gdbm.h not found])])
397 #### Check for functions ####
399 # ISO
400 AC_CHECK_FUNCS([lrintf strtof])
402 # POSIX
403 AC_FUNC_FORK
404 AC_FUNC_GETGROUPS
405 AC_FUNC_SELECT_ARGTYPES
406 AC_CHECK_FUNCS([chmod chown clock_gettime getaddrinfo getgrgid_r getgrnam_r \
407     getpwnam_r getpwuid_r gettimeofday getuid inet_ntop inet_pton mlock nanosleep \
408     pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
409     sigaction sleep sysconf pthread_setaffinity_np])
410 AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
412 AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
414 # X/OPEN
415 AC_CHECK_FUNCS([readlink])
417 # SUSv2
418 AC_CHECK_FUNCS([ctime_r usleep])
420 # SUSv3
421 AC_CHECK_FUNCS([strerror_r])
423 # BSD
424 AC_CHECK_FUNCS([lstat])
426 # Non-standard
428 AC_CHECK_FUNCS([setresuid setresgid setreuid setregid seteuid setegid ppoll strsignal sig2str strtof_l])
430 AC_FUNC_ALLOCA
432 AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT],
433   pulseaudio_cv_PTHREAD_PRIO_INHERIT,
434   [save_CC=$CC; CC=$PTHREAD_CC
435    save_CFLAGS=$CFLAGS; CFLAGS=$PTHREAD_CFLAGS
436    save_LIBS=$LIBS; LIBS=$PTHREAD_LIBS
437    AC_LINK_IFELSE(
438      AC_LANG_PROGRAM(
439        [[
440          #include <pthread.h>
441        ]],
442        [[int i = PTHREAD_PRIO_INHERIT;]]),
443      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=yes],
444      [pulseaudio_cv_PTHREAD_PRIO_INHERIT=no])
445    CC=$save_CC
446    CFLAGS=$save_CFLAGS
447    LIBS=$save_LIBS
448   ])
450 AS_IF([test "$pulseaudio_cv_PTHREAD_PRIO_INHERIT" = "yes"], [
451     AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])
452   ])
454 AC_DEFINE_UNQUOTED(PA_CFLAGS,"$CFLAGS", [The CFLAGS used during compilation])
456 #### Large File-Support (LFS) ####
458 AC_SYS_LARGEFILE
460 # Check for open64 to know if the current system does have open64() and similar functions
461 AC_CHECK_FUNCS([open64])
463 #### [lib]iconv ####
465 AM_ICONV
467 IT_PROG_INTLTOOL([0.35.0])
468 GETTEXT_PACKAGE=pulseaudio
469 AC_SUBST([GETTEXT_PACKAGE])
470 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
471 AM_GLIB_GNU_GETTEXT
473 pulselocaledir='${prefix}/${DATADIRNAME}/locale'
474 AC_SUBST(pulselocaledir)
476 ###################################
477 #      External libraries         #
478 ###################################
480 #### pkg-config ####
482 PKG_PROG_PKG_CONFIG
484 #### X11 (optional) ####
486 AC_ARG_ENABLE([x11],
487     AS_HELP_STRING([--disable-x11],[Disable optional X11 support]),
488         [
489             case "${enableval}" in
490                 yes) x11=yes ;;
491                 no) x11=no ;;
492                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-x11) ;;
493             esac
494         ],
495         [x11=auto])
497 if test "x${x11}" != xno ; then
498     PKG_CHECK_MODULES(X11, [ x11 ice sm xtst ],
499         HAVE_X11=1,
500         [
501             HAVE_X11=0
502             if test "x$x11" = xyes ; then
503                 AC_MSG_ERROR([*** X11 not found])
504             fi
505         ])
506 else
507     HAVE_X11=0
510 if test "x${HAVE_X11}" = x1 ; then
511    AC_DEFINE([HAVE_X11], 1, [Have X11?])
514 AC_SUBST(X11_CFLAGS)
515 AC_SUBST(X11_LIBS)
516 AC_SUBST(HAVE_X11)
517 AM_CONDITIONAL([HAVE_X11], [test "x$HAVE_X11" = x1])
519 #### Capabilities (optional) ####
521 CAP_LIBS=''
523 AC_ARG_WITH(
524         [caps],
525         AS_HELP_STRING([--without-caps],[Omit support for POSIX capabilities.]))
527 if test "x${with_caps}" != "xno"; then
528     AC_SEARCH_LIBS([cap_init], [cap], [], [
529                     if test "x${with_caps}" = "xyes" ; then
530                         AC_MSG_ERROR([*** POSIX caps libraries not found])
531                     fi])
532     AC_CHECK_HEADERS([sys/capability.h], [], [
533                     if test "x${with_caps}" = "xyes" ; then
534                         AC_MSG_ERROR([*** POSIX caps headers not found])
535                     fi])
538 #### Valgrind (optional) ####
540 AC_CHECK_HEADERS([valgrind/memcheck.h])
542 #### Sound file ####
544 PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.10 ])
545 AC_SUBST(LIBSNDFILE_CFLAGS)
546 AC_SUBST(LIBSNDFILE_LIBS)
548 PKG_CHECK_MODULES(LIBSPEEX, [ speexdsp >= 1.2 ])
549 AC_SUBST(LIBSPEEX_CFLAGS)
550 AC_SUBST(LIBSPEEX_LIBS)
552 #### atomic-ops ###
554 AC_MSG_CHECKING([whether we need libatomic_ops])
555 if test "x$need_libatomic_ops" = "xyes"; then
556    AC_MSG_RESULT([yes])
557    AC_CHECK_HEADERS([atomic_ops.h], [], [
558    AC_MSG_ERROR([*** libatomic-ops headers not found])
559    ])
561    # Win32 does not need the lib and breaks horribly if we try to include it
562    if test "x$os_is_win32" != "x1" ; then
563        LIBS="$LIBS -latomic_ops"
564    fi
565 else
566    AC_MSG_RESULT([no])
569 #### Libsamplerate support (optional) ####
571 AC_ARG_ENABLE([samplerate],
572     AS_HELP_STRING([--disable-samplerate],[Disable optional libsamplerate support]),
573         [
574             case "${enableval}" in
575                 yes) samplerate=yes ;;
576                 no) samplerate=no ;;
577                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-samplerate) ;;
578             esac
579         ],
580         [samplerate=auto])
582 if test "x${samplerate}" != xno ; then
583     PKG_CHECK_MODULES(LIBSAMPLERATE, [ samplerate >= 0.1.0 ],
584         HAVE_LIBSAMPLERATE=1,
585         [
586             HAVE_LIBSAMPLERATE=0
587             if test "x$samplerate" = xyes ; then
588                 AC_MSG_ERROR([*** Libsamplerate not found])
589             fi
590         ])
591 else
592     HAVE_LIBSAMPLERATE=0
595 if test "x${HAVE_LIBSAMPLERATE}" = x1 ; then
596    AC_DEFINE([HAVE_LIBSAMPLERATE], 1, [Have libsamplerate?])
599 AC_SUBST(LIBSAMPLERATE_CFLAGS)
600 AC_SUBST(LIBSAMPLERATE_LIBS)
601 AC_SUBST(HAVE_LIBSAMPLERATE)
602 AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
604 #### OSS support (optional) ####
606 AC_ARG_ENABLE([oss],
607     AS_HELP_STRING([--disable-oss],[Disable optional OSS support]),
608         [
609             case "${enableval}" in
610                 yes) oss=yes ;;
611                 no) oss=no ;;
612                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-oss) ;;
613             esac
614         ],
615         [oss=auto])
617 if test "x${oss}" != xno ; then
618     AC_CHECK_HEADERS([sys/soundcard.h],
619         [
620             HAVE_OSS=1
621             AC_DEFINE([HAVE_OSS], 1, [Have OSS?])
622         ],
623         [
624             HAVE_OSS=0
625             if test "x$oss" = xyes ; then
626                 AC_MSG_ERROR([*** OSS support not found])
627             fi
628         ])
629 else
630     HAVE_OSS=0
633 AC_SUBST(HAVE_OSS)
634 AM_CONDITIONAL([HAVE_OSS], [test "x$HAVE_OSS" = x1])
637 #### ALSA support (optional) ####
639 AC_ARG_ENABLE([alsa],
640     AS_HELP_STRING([--disable-alsa],[Disable optional ALSA support]),
641         [
642             case "${enableval}" in
643                 yes) alsa=yes ;;
644                 no) alsa=no ;;
645                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-alsa) ;;
646             esac
647         ],
648         [alsa=auto])
650 if test "x${alsa}" != xno ; then
651     PKG_CHECK_MODULES(ASOUNDLIB, [ alsa >= 1.0.19 ],
652         [
653             HAVE_ALSA=1
654             AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?])
655         ],
656         [
657             HAVE_ALSA=0
658             if test "x$alsa" = xyes ; then
659                 AC_MSG_ERROR([*** Needed alsa >= 1.0.19 support not found])
660             fi
661         ])
662 else
663     HAVE_ALSA=0
666 AC_SUBST(ASOUNDLIB_CFLAGS)
667 AC_SUBST(ASOUNDLIB_LIBS)
668 AC_SUBST(HAVE_ALSA)
669 AM_CONDITIONAL([HAVE_ALSA], [test "x$HAVE_ALSA" = x1])
671 #### Solaris audio support (optional) ####
673 AC_ARG_ENABLE([solaris],
674     AS_HELP_STRING([--disable-solaris],[Disable optional Solaris audio support]),
675         [
676             case "${enableval}" in
677                 yes) solaris=yes ;;
678                 no) solaris=no ;;
679                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-solaris) ;;
680             esac
681         ],
682         [solaris=auto])
684 if test "x${solaris}" != xno ; then
685     AC_CHECK_HEADERS([sys/audio.h],
686         [
687             HAVE_SOLARIS=1
688             AC_DEFINE([HAVE_SOLARIS], 1, [Have Solaris audio?])
689         ],
690         [
691             HAVE_SOLARIS=0
692             if test "x$solaris" = xyes ; then
693                 AC_MSG_ERROR([*** Solaris audio support not found])
694             fi
695         ])
696 else
697     HAVE_SOLARIS=0
700 AC_SUBST(HAVE_SOLARIS)
701 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$HAVE_SOLARIS" = x1])
703 #### GLib 2 support (optional) ####
705 AC_ARG_ENABLE([glib2],
706     AS_HELP_STRING([--disable-glib2],[Disable optional GLib 2 support]),
707         [
708             case "${enableval}" in
709                 yes) glib2=yes ;;
710                 no) glib2=no ;;
711                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-glib2) ;;
712             esac
713         ],
714         [glib2=auto])
716 if test "x${glib2}" != xno ; then
717     PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ],
718         HAVE_GLIB20=1,
719         [
720             HAVE_GLIB20=0
721             if test "x$glib2" = xyes ; then
722                 AC_MSG_ERROR([*** GLib 2 support not found])
723             fi
724         ])
725 else
726     HAVE_GLIB20=0
729 AC_SUBST(GLIB20_CFLAGS)
730 AC_SUBST(GLIB20_LIBS)
731 AC_SUBST(HAVE_GLIB20)
732 AM_CONDITIONAL([HAVE_GLIB20], [test "x$HAVE_GLIB20" = x1])
734 if test "x$HAVE_GLIB20" = x1 ; then
735    AC_DEFINE([HAVE_GLIB], 1, [Have GLIB?])
738 #### GTK2 support (optional) ####
740 AC_ARG_ENABLE([gtk2],
741     AS_HELP_STRING([--disable-gtk2],[Disable optional Gtk+ 2 support]),
742         [
743             case "${enableval}" in
744                 yes) gtk2=yes ;;
745                 no) gtk2=no ;;
746                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gtk2) ;;
747             esac
748         ],
749         [gtk2=auto])
751 if test "x${gtk2}" != xno ; then
752     PKG_CHECK_MODULES(GTK20, [ gtk+-2.0 >= 2.4.0 ],
753         HAVE_GTK20=1,
754         [
755             HAVE_GTK20=0
756             if test "x$gtk2" = xyes ; then
757                 AC_MSG_ERROR([*** Gtk+ 2 support not found])
758             fi
759         ])
760 else
761     HAVE_GTK20=0
764 AC_SUBST(GTK20_CFLAGS)
765 AC_SUBST(GTK20_LIBS)
766 AC_SUBST(HAVE_GTK20)
767 AM_CONDITIONAL([HAVE_GTK20], [test "x$HAVE_GTK20" = x1])
769 if test "x$HAVE_GTK20" = x1 ; then
770    AC_DEFINE([HAVE_GTK], 1, [Have GTK?])
773 #### GConf support (optional) ####
775 AC_ARG_ENABLE([gconf],
776     AS_HELP_STRING([--disable-gconf],[Disable optional GConf support]),
777         [
778             case "${enableval}" in
779                 yes) gconf=yes ;;
780                 no) gconf=no ;;
781                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-gconf) ;;
782             esac
783         ],
784         [gconf=auto])
786 if test "x${gconf}" != xno ; then
787     PKG_CHECK_MODULES(GCONF, [ gconf-2.0 >= 2.4.0 ],
788         HAVE_GCONF=1,
789         [
790             HAVE_GCONF=0
791             if test "x$gconf" = xyes ; then
792                 AC_MSG_ERROR([*** GConf support not found])
793             fi
794         ])
795 else
796     HAVE_GCONF=0
799 AC_SUBST(GCONF_CFLAGS)
800 AC_SUBST(GCONF_LIBS)
801 AC_SUBST(HAVE_GCONF)
802 AM_CONDITIONAL([HAVE_GCONF], [test "x$HAVE_GCONF" = x1])
804 #### Avahi support (optional) ####
806 AC_ARG_ENABLE([avahi],
807     AS_HELP_STRING([--disable-avahi],[Disable optional Avahi support]),
808         [
809             case "${enableval}" in
810                 yes) avahi=yes ;;
811                 no) avahi=no ;;
812                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-avahi) ;;
813             esac
814         ],
815         [avahi=auto])
817 if test "x${avahi}" != xno ; then
818     PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.0 ],
819         HAVE_AVAHI=1,
820         [
821                 HAVE_AVAHI=0
822                 if test "x$avahi" = xyes ; then
823                         AC_MSG_ERROR([*** Avahi support not found])
824                 fi
825         ])
826 else
827     HAVE_AVAHI=0
830 AC_SUBST(AVAHI_CFLAGS)
831 AC_SUBST(AVAHI_LIBS)
832 AC_SUBST(HAVE_AVAHI)
833 AM_CONDITIONAL([HAVE_AVAHI], [test "x$HAVE_AVAHI" = x1])
835 ### LIBOIL ####
837 PKG_CHECK_MODULES(LIBOIL, [ liboil-0.3 >= 0.3.0 ])
838 AC_SUBST(LIBOIL_CFLAGS)
839 AC_SUBST(LIBOIL_LIBS)
841 ### JACK (optional) ####
843 AC_ARG_ENABLE([jack],
844     AS_HELP_STRING([--disable-jack],[Disable optional JACK support]),
845         [
846             case "${enableval}" in
847                 yes) jack=yes ;;
848                 no) jack=no ;;
849                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-jack) ;;
850             esac
851         ],
852         [jack=auto])
854 if test "x${jack}" != xno ; then
855     PKG_CHECK_MODULES(JACK, [ jack >= 0.100 ],
856         HAVE_JACK=1,
857         [
858             HAVE_JACK=0
859             if test "x$jack" = xyes ; then
860                 AC_MSG_ERROR([*** JACK support not found])
861             fi
862         ])
863 else
864     HAVE_JACK=0
867 AC_SUBST(JACK_CFLAGS)
868 AC_SUBST(JACK_LIBS)
869 AC_SUBST(HAVE_JACK)
870 AM_CONDITIONAL([HAVE_JACK], [test "x$HAVE_JACK" = x1])
872 #### Async DNS support (optional) ####
874 AC_ARG_ENABLE([asyncns],
875     AS_HELP_STRING([--disable-asyncns],[Disable optional Async DNS support]),
876         [
877             case "${enableval}" in
878                 yes) asyncns=yes ;;
879                 no) asyncns=no ;;
880                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-asyncns) ;;
881             esac
882         ],
883         [asyncns=auto])
885 if test "x${asyncns}" != xno ; then
886     PKG_CHECK_MODULES(LIBASYNCNS, [ libasyncns >= 0.1 ],
887         HAVE_LIBASYNCNS=1,
888         [
889             HAVE_LIBASYNCNS=0
890             if test "x$asyncns" = xyes ; then
891                 AC_MSG_ERROR([*** Async DNS support not found])
892             fi
893         ])
894 else
895     HAVE_LIBASYNCNS=0
898 AC_SUBST(LIBASYNCNS_CFLAGS)
899 AC_SUBST(LIBASYNCNS_LIBS)
900 AC_SUBST(HAVE_LIBASYNCNS)
901 AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
903 if test "x$HAVE_LIBASYNCNS" != "x0" ; then
904    AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?])
907 #### TCP wrappers (optional) ####
909 AC_ARG_ENABLE([tcpwrap],
910     AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]),
911         [
912             case "${enableval}" in
913                 yes) tcpwrap=yes ;;
914                 no) tcpwrap=no ;;
915                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-tcpwrap) ;;
916             esac
917         ],
918         [tcpwrap=auto])
920 if test "x${tcpwrap}" != xno ; then
921     ACX_LIBWRAP
922     if test "x${LIBWRAP_LIBS}" = x && test "x$tcpwrap" = xyes ; then
923         AC_MSG_ERROR([*** TCP wrappers support not found])
924     fi
925 else
926     LIBWRAP_LIBS=
929 AC_SUBST(LIBWRAP_LIBS)
931 #### LIRC support (optional) ####
933 AC_ARG_ENABLE([lirc],
934     AS_HELP_STRING([--disable-lirc],[Disable optional LIRC support]),
935         [
936             case "${enableval}" in
937                 yes) lirc=yes ;;
938                 no) lirc=no ;;
939                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-lirc) ;;
940             esac
941         ],
942         [lirc=auto])
944 if test "x${lirc}" != xno ; then
945     ACX_LIRC
946     if test "x${HAVE_LIRC}" = x0 && test "x$lirc" = xyes ; then
947         AC_MSG_ERROR([*** LIRC support not found])
948     fi
949 else
950     HAVE_LIRC=0
953 AC_SUBST(LIRC_CFLAGS)
954 AC_SUBST(LIRC_LIBS)
955 AM_CONDITIONAL([HAVE_LIRC], [test "x$HAVE_LIRC" = x1])
957 #### HAL support (optional) ####
959 AC_ARG_ENABLE([hal],
960     AS_HELP_STRING([--disable-hal],[Disable optional HAL support]),
961         [
962             case "${enableval}" in
963                 yes) hal=yes ;;
964                 no) hal=no ;;
965                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-hal) ;;
966             esac
967         ],
968         [hal=auto])
969 if test "x${hal}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
970     PKG_CHECK_MODULES(HAL, [ hal >= 0.5.11 ],
971         [
972             HAVE_HAL=1
973             AC_DEFINE([HAVE_HAL], 1, [Have HAL.])
974         ],
975         [
976             HAVE_HAL=0
977             if test "x$hal" = xyes ; then
978                 AC_MSG_ERROR([*** HAL support not found])
979             fi
980         ])
981 else
982     HAVE_HAL=0
985 AC_SUBST(HAL_CFLAGS)
986 AC_SUBST(HAL_LIBS)
987 AC_SUBST(HAVE_HAL)
988 AM_CONDITIONAL([HAVE_HAL], [test "x$HAVE_HAL" = x1])
990 #### UDEV support (optional) ####
992 AC_ARG_ENABLE([udev],
993     AS_HELP_STRING([--disable-udev],[Disable optional UDEV support]),
994         [
995             case "${enableval}" in
996                 yes) udev=yes ;;
997                 no) udev=no ;;
998                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-udev) ;;
999             esac
1000         ],
1001         [udev=auto])
1002 if test "x${udev}" != xno -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \) ; then
1003     PKG_CHECK_MODULES(UDEV, [ libudev >= 137 ],
1004         [
1005             HAVE_UDEV=1
1006             AC_DEFINE([HAVE_UDEV], 1, [Have UDEV.])
1007         ],
1008         [
1009             HAVE_UDEV=0
1010             if test "x$udev" = xyes ; then
1011                 AC_MSG_ERROR([*** UDEV support not found])
1012             fi
1013         ])
1014 else
1015     HAVE_UDEV=0
1018 AC_SUBST(UDEV_CFLAGS)
1019 AC_SUBST(UDEV_LIBS)
1020 AC_SUBST(HAVE_UDEV)
1021 AM_CONDITIONAL([HAVE_UDEV], [test "x$HAVE_UDEV" = x1])
1023 AC_DEFINE([LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE], 1, [I know the API is subject to change.])
1025 #### BlueZ support (optional) ####
1027 AC_ARG_ENABLE([bluez],
1028     AS_HELP_STRING([--disable-bluez],[Disable optional BlueZ support]),
1029         [
1030             case "${enableval}" in
1031                 yes) bluez=yes ;;
1032                 no) bluez=no ;;
1033                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-bluez) ;;
1034             esac
1035         ],
1036         [bluez=auto])
1037 if test "x${bluez}" != xno ; then
1038     PKG_CHECK_MODULES(BLUEZ, [ bluez >= 3.0 ],
1039         HAVE_BLUEZ=1,
1040         [
1041             HAVE_BLUEZ=0
1042             if test "x$bluez" = xyes ; then
1043                 AC_MSG_ERROR([*** BLUEZ support not found])
1044             fi
1045         ])
1046 else
1047     HAVE_BLUEZ=0
1050 AC_SUBST(BLUEZ_CFLAGS)
1051 AC_SUBST(BLUEZ_LIBS)
1052 AC_SUBST(HAVE_BLUEZ)
1053 AM_CONDITIONAL([HAVE_BLUEZ], [test "x$HAVE_BLUEZ" = x1])
1055 #### D-Bus support (optional) ####
1057 AC_ARG_ENABLE([dbus],
1058     AS_HELP_STRING([--disable-dbus],[Disable optional D-Bus support]),
1059         [
1060             case "${enableval}" in
1061                 yes) dbus=yes ;;
1062                 no) dbus=no ;;
1063                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-dbus) ;;
1064             esac
1065         ],
1066         [dbus=auto])
1068 if test "x$HAVE_HAL" = x1 ; then
1069    dbus=yes
1072 if test "x${dbus}" != xno || test "x${bluez}" != xno || test "x${hal}" != xno ; then
1074     PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.0.0 ],
1075         [
1076             HAVE_DBUS=1
1077             saved_LIBS="$LIBS"
1078             LIBS="$LIBS $DBUS_LIBS"
1079             AC_CHECK_FUNCS(dbus_watch_get_unix_fd)
1080             LIBS="$saved_LIBS"
1081             AC_DEFINE([HAVE_DBUS], 1, [Have D-Bus.])
1082         ],
1083         [
1084             HAVE_DBUS=0
1085             if test "x$dbus" = xyes ; then
1086                 AC_MSG_ERROR([*** D-Bus support not found])
1087             fi
1088         ])
1089 else
1090     HAVE_DBUS=0
1093 AC_SUBST(DBUS_CFLAGS)
1094 AC_SUBST(DBUS_LIBS)
1095 AC_SUBST(HAVE_DBUS)
1096 AM_CONDITIONAL([HAVE_DBUS], [test "x$HAVE_DBUS" = x1])
1098 #### PolicyKit support (optional) ####
1100 AC_ARG_ENABLE([polkit],
1101     AS_HELP_STRING([--disable-polkit],[Disable optional PolicyKit support]),
1102         [
1103             case "${enableval}" in
1104                 yes) polkit=yes ;;
1105                 no) polkit=no ;;
1106                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-polkit) ;;
1107             esac
1108         ],
1109         [polkit=auto])
1111 if test "x${polkit}" != xno ; then
1113     PKG_CHECK_MODULES(POLKIT, [ polkit-dbus >= 0.7 ],
1114         [
1115             HAVE_POLKIT=1
1116             AC_DEFINE([HAVE_POLKIT], 1, [Have PolicyKit])
1117             policydir=`pkg-config polkit-dbus --variable prefix`/share/PolicyKit/policy/
1118             AC_SUBST(policydir)
1119         ],
1120         [
1121             HAVE_POLKIT=0
1122             if test "x$polkit" = xyes ; then
1123                 AC_MSG_ERROR([*** PolicyKit support not found])
1124             fi
1125         ])
1126 else
1127     HAVE_POLKIT=0
1130 AC_SUBST(POLKIT_CFLAGS)
1131 AC_SUBST(POLKIT_LIBS)
1132 AC_SUBST(HAVE_POLKIT)
1133 AM_CONDITIONAL([HAVE_POLKIT], [test "x$HAVE_POLKIT" = x1])
1136 ### IPv6 connection support (optional) ###
1138 AC_ARG_ENABLE([ipv6],
1139     AS_HELP_STRING([--disable-ipv6],[Disable optional IPv6 support]),
1140         [
1141             case "${enableval}" in
1142                 yes) ipv6=yes ;;
1143                 no) ipv6=no ;;
1144                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-ipv6) ;;
1145             esac
1146         ],
1147         [ipv6=auto])
1149 if test "x${ipv6}" != xno ; then
1150     AC_DEFINE([HAVE_IPV6], [1], [Define this to enable IPv6 connection support])
1151     HAVE_IPV6=1
1152 else
1153     HAVE_IPV6=0
1156 #### OpenSSL support (optional) ####
1158 AC_ARG_ENABLE([openssl],
1159     AS_HELP_STRING([--disable-openssl],[Disable OpenSSL support (used for Airtunes/RAOP)]),
1160         [
1161             case "${enableval}" in
1162                 yes) openssl=yes ;;
1163                 no) openssl=no ;;
1164                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-openssl) ;;
1165             esac
1166         ],
1167         [openssl=auto])
1169 if test "x${openssl}" != xno ; then
1171     PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ],
1172         [
1173             HAVE_OPENSSL=1
1174             AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL])
1175         ],
1176         [
1177             HAVE_OPENSSL=0
1178             if test "x$openssl" = xyes ; then
1179                 AC_MSG_ERROR([*** OpenSSL support not found])
1180             fi
1181         ])
1182 else
1183     HAVE_OPENSSL=0
1186 AC_SUBST(OPENSSL_CFLAGS)
1187 AC_SUBST(OPENSSL_LIBS)
1188 AC_SUBST(HAVE_OPENSSL)
1189 AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
1191 ### Build and Install man pages ###
1192 AC_ARG_ENABLE(manpages,
1193         AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]),
1194 [case "${enableval}" in
1195   yes) manpages=yes ;;
1196   no)  manpages=no ;;
1197   *) AC_MSG_ERROR([bad value ${enableval} for --disable-manpages]) ;;
1198 esac],[manpages=yes])
1200 AM_CONDITIONAL([BUILD_MANPAGES], [test "x$manpages" = xyes])
1202 #### PulseAudio system group & user  #####
1204 AC_ARG_WITH(system_user, AS_HELP_STRING([--with-system-user=<user>],[User for running the PulseAudio daemon as a system-wide instance (pulse)]))
1205 if test -z "$with_system_user" ; then
1206     PA_SYSTEM_USER=pulse
1207 else
1208     PA_SYSTEM_USER=$with_system_user
1210 AC_SUBST(PA_SYSTEM_USER)
1211 AC_DEFINE_UNQUOTED(PA_SYSTEM_USER,"$PA_SYSTEM_USER", [User for running the PulseAudio system daemon])
1213 AC_ARG_WITH(system_group,AS_HELP_STRING([--with-system-group=<group>],[Group for running the PulseAudio daemon as a system-wide instance (pulse)]))
1214 if test -z "$with_system_group" ; then
1215     PA_SYSTEM_GROUP=pulse
1216 else
1217     PA_SYSTEM_GROUP=$with_system_group
1219 AC_SUBST(PA_SYSTEM_GROUP)
1220 AC_DEFINE_UNQUOTED(PA_SYSTEM_GROUP,"$PA_SYSTEM_GROUP", [Group for the PulseAudio system daemon])
1222 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)]))
1223 if test -z "$with_realtime_group" ; then
1224     PA_REALTIME_GROUP=pulse-rt
1225 else
1226     PA_REALTIME_GROUP=$with_realtime_group
1228 AC_SUBST(PA_REALTIME_GROUP)
1229 AC_DEFINE_UNQUOTED(PA_REALTIME_GROUP,"$PA_REALTIME_GROUP", [Realtime group])
1231 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)]))
1232 if test -z "$with_access_group" ; then
1233     PA_ACCESS_GROUP=pulse-access
1234 else
1235     PA_ACCESS_GROUP=$with_access_group
1237 AC_SUBST(PA_ACCESS_GROUP)
1238 AC_DEFINE_UNQUOTED(PA_ACCESS_GROUP,"$PA_ACCESS_GROUP", [Access group])
1240 AC_ARG_ENABLE(
1241         per_user_esound_socket,
1242         AS_HELP_STRING([--disable-per-user-esound-socket], [Use global esound socket directory /tmp/.esd/socket.]),
1243         [
1244             case "${enableval}" in
1245                 yes) per_user_esound_socket=1 ;;
1246                 no) per_user_esound_socket=0 ;;
1247                 *) AC_MSG_ERROR(bad value ${enableval} for --disable-per-user-esound-socket) ;;
1248             esac
1249         ],
1250         [per_user_esound_socket=1])
1252 if test "x$per_user_esound_socket" = "x1"; then
1253    AC_DEFINE([USE_PER_USER_ESOUND_SOCKET], [1], [Define this if you want per-user esound socket directories])
1256 #### PulseAudio system runtime dir ####
1257 PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
1258 AC_SUBST(PA_SYSTEM_RUNTIME_PATH)
1259 PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
1260 AC_SUBST(PA_SYSTEM_CONFIG_PATH)
1261 PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
1262 AC_SUBST(PA_SYSTEM_STATE_PATH)
1264 ###################################
1265 #            Output               #
1266 ###################################
1268 AC_ARG_ENABLE([legacy-runtime-dir],
1269         AS_HELP_STRING([--disable-legacy-runtime-dir], [Try to connect on legacy (< 0.9.12) socket paths.]))
1270 if test "x$enable_legacy_runtime_dir" != "xno" ; then
1271         AC_DEFINE(ENABLE_LEGACY_RUNTIME_DIR, [1], [Legacy runtime dir])
1274 AC_ARG_ENABLE(
1275         [static-bins],
1276         AS_HELP_STRING([--enable-static-bins],[Statically link executables.]),
1277         [STATIC_BINS=1], [STATIC_BINS=0])
1278 AM_CONDITIONAL([STATIC_BINS], [test "x$STATIC_BINS" = "x1"])
1280 AC_ARG_WITH(
1281         [preopen-mods],
1282         AS_HELP_STRING([--with-preopen-mods],[Modules to preopen in daemon (default: all).]),
1283         [PREOPEN_MODS=$withval], [PREOPEN_MODS="all"])
1284 AM_CONDITIONAL([PREOPEN_MODS], [test "x$PREOPEN_MODS" != "xall"])
1285 if test "x$PREOPEN_MODS" != "xall" ; then
1286     tmpLIBS=""
1287     for mod in $PREOPEN_MODS; do
1288         tmpLIBS="$tmpLIBS module-$mod.la"
1289     done
1290     PREOPEN_MODS="$tmpLIBS"
1291     AC_SUBST(PREOPEN_MODS)
1294 AC_ARG_WITH(
1295         [module-dir],
1296         AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINORMICRO}/modules/]),
1297         [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINORMICRO}/modules/"])
1299 AC_SUBST(modlibexecdir)
1301 AC_ARG_ENABLE(
1302         [force-preopen],
1303         AS_HELP_STRING([--enable-force-preopen],[Preopen modules, even when dlopen() is supported.]),
1304         [FORCE_PREOPEN=$enableval], [FORCE_PREOPEN=no])
1305 AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
1307 AC_CONFIG_FILES([
1308 Makefile
1309 shave
1310 shave-libtool
1311 src/Makefile
1312 man/Makefile
1313 libpulse.pc
1314 libpulse-simple.pc
1315 libpulse-browse.pc
1316 libpulse-mainloop-glib.pc
1317 doxygen/Makefile
1318 doxygen/doxygen.conf
1319 src/pulse/version.h
1320 po/Makefile.in
1323 SHAVE_INIT
1324 AC_OUTPUT
1325 SHAVE_OUTPUT
1327 # ==========================================================================
1328 ENABLE_X11=no
1329 if test "x$HAVE_X11" = "x1" ; then
1330    ENABLE_X11=yes
1333 ENABLE_OSS=no
1334 if test "x$HAVE_OSS" = "x1" ; then
1335    ENABLE_OSS=yes
1338 ENABLE_ALSA=no
1339 if test "x$HAVE_ALSA" = "x1" ; then
1340    ENABLE_ALSA=yes
1343 ENABLE_SOLARIS=no
1344 if test "x$HAVE_SOLARIS" = "x1" ; then
1345    ENABLE_SOLARIS=yes
1348 ENABLE_GTK20=no
1349 if test "x$HAVE_GTK20" = "x1" ; then
1350    ENABLE_GTK20=yes
1353 ENABLE_GLIB20=no
1354 if test "x$HAVE_GLIB20" = "x1" ; then
1355    ENABLE_GLIB20=yes
1358 ENABLE_GCONF=no
1359 if test "x$HAVE_GCONF" = "x1" ; then
1360    ENABLE_GCONF=yes
1363 ENABLE_AVAHI=no
1364 if test "x$HAVE_AVAHI" = "x1" ; then
1365    ENABLE_AVAHI=yes
1368 ENABLE_JACK=no
1369 if test "x$HAVE_JACK" = "x1" ; then
1370    ENABLE_JACK=yes
1373 ENABLE_LIBASYNCNS=no
1374 if test "x$HAVE_LIBASYNCNS" = "x1" ; then
1375    ENABLE_LIBASYNCNS=yes
1378 ENABLE_LIRC=no
1379 if test "x$HAVE_LIRC" = "x1" ; then
1380    ENABLE_LIRC=yes
1383 ENABLE_HAL=no
1384 if test "x$HAVE_HAL" = "x1" ; then
1385    ENABLE_HAL=yes
1388 ENABLE_UDEV=no
1389 if test "x$HAVE_UDEV" = "x1" ; then
1390    ENABLE_UDEV=yes
1393 ENABLE_TCPWRAP=no
1394 if test "x${LIBWRAP_LIBS}" != x ; then
1395    ENABLE_TCPWRAP=yes
1398 ENABLE_LIBSAMPLERATE=no
1399 if test "x${HAVE_LIBSAMPLERATE}" = "x1" ; then
1400    ENABLE_LIBSAMPLERATE=yes
1403 ENABLE_BLUEZ=no
1404 if test "x${HAVE_BLUEZ}" = "x1" ; then
1405    ENABLE_BLUEZ=yes
1408 ENABLE_POLKIT=no
1409 if test "x${HAVE_POLKIT}" = "x1" ; then
1410    ENABLE_POLKIT=yes
1413 ENABLE_OPENSSL=no
1414 if test "x${HAVE_OPENSSL}" = "x1" ; then
1415    ENABLE_OPENSSL=yes
1418 ENABLE_IPV6=no
1419 if test "x${HAVE_IPV6}" = "x1" ; then
1420    ENABLE_IPV6=yes
1423 ENABLE_PER_USER_ESOUND_SOCKET=no
1424 if test "x$per_user_esound_socket" = "x1" ; then
1425    ENABLE_PER_USER_ESOUND_SOCKET=yes
1428 echo "
1429  ---{ $PACKAGE_NAME $VERSION }---
1431     prefix:                        ${prefix}
1432     sysconfdir:                    ${sysconfdir}
1433     localstatedir:                 ${localstatedir}
1434     System Runtime Path:           ${PA_SYSTEM_RUNTIME_PATH}
1435     System State Path:             ${PA_SYSTEM_STATE_PATH}
1436     System Config Path:            ${PA_SYSTEM_CONFIG_PATH}
1437     Compiler:                      ${CC}
1438     CFLAGS:                        ${CFLAGS}
1440     Have X11:                      ${ENABLE_X11}
1441     Enable OSS:                    ${ENABLE_OSS}
1442     Enable Alsa:                   ${ENABLE_ALSA}
1443     Enable Solaris:                ${ENABLE_SOLARIS}
1444     Enable GLib 2.0:               ${ENABLE_GLIB20}
1445     Enable Gtk+ 2.0:               ${ENABLE_GTK20}
1446     Enable GConf:                  ${ENABLE_GCONF}
1447     Enable Avahi:                  ${ENABLE_AVAHI}
1448     Enable Jack:                   ${ENABLE_JACK}
1449     Enable Async DNS:              ${ENABLE_LIBASYNCNS}
1450     Enable LIRC:                   ${ENABLE_LIRC}
1451     Enable HAL:                    ${ENABLE_HAL}
1452     Enable udev:                   ${ENABLE_UDEV}
1453     Enable BlueZ:                  ${ENABLE_BLUEZ}
1454     Enable TCP Wrappers:           ${ENABLE_TCPWRAP}
1455     Enable libsamplerate:          ${ENABLE_LIBSAMPLERATE}
1456     Enable PolicyKit:              ${ENABLE_POLKIT}
1457     Enable IPv6:                   ${ENABLE_IPV6}
1458     Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
1460     System User:                   ${PA_SYSTEM_USER}
1461     System Group:                  ${PA_SYSTEM_GROUP}
1462     Realtime Group:                ${PA_REALTIME_GROUP}
1463     Access Group:                  ${PA_ACCESS_GROUP}
1464     Enable per-user EsounD socket: ${ENABLE_PER_USER_ESOUND_SOCKET}
1465     Force preopen:                 ${FORCE_PREOPEN}
1466     Preopened modules:             ${PREOPEN_MODS}