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, see <http://www.gnu.org/licenses/>.
24 AC_INIT([pulseaudio],[m4_esyscmd(./git-version-gen .tarball-version)],[pulseaudio-discuss (at) lists (dot) freedesktop (dot) org],[pulseaudio],[http://pulseaudio.org/])
25 AC_CONFIG_SRCDIR([src/daemon/main.c])
26 AC_CONFIG_MACRO_DIR([m4])
27 AC_CONFIG_HEADERS([config.h])
28 AC_CONFIG_AUX_DIR([build-aux])
29 AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability subdir-objects silent-rules color-tests dist-xz tar-ustar])
31 AS_IF([! test -n "$VERSION"], [
32 AC_MSG_ERROR([git-version-gen failed])
35 m4_define(pa_major, `echo $VERSION | cut -d. -f1 | cut -d- -f1`)
36 m4_define(pa_minor, `echo $VERSION | cut -d. -f2 | cut -d- -f1`)
38 AC_SUBST(PA_MAJOR, pa_major)
39 AC_SUBST(PA_MINOR, pa_minor)
40 AC_SUBST(PA_MAJORMINOR, pa_major.pa_minor)
42 AC_SUBST(PA_API_VERSION, 12)
43 AC_SUBST(PA_PROTOCOL_VERSION, 30)
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, [18:2:18])
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, [1:0:1])
53 # The ABI-stable GLib adapter for client applications, for the version
54 # info x:y:z always will hold y=z
55 AC_SUBST(LIBPULSE_MAINLOOP_GLIB_VERSION_INFO, [0:5:0])
58 AC_DEFINE_UNQUOTED([CANONICAL_HOST], "$host", [Canonical host string.])
60 AC_CHECK_PROG([STOW], [stow], [yes], [no])
62 AS_IF([test "x$STOW" = "xyes" && test -d /usr/local/stow], [
63 AC_MSG_NOTICE([*** Found /usr/local/stow: default install prefix set to /usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION} ***])
64 ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}"
67 AM_SILENT_RULES([yes])
70 #### Checks for programs. ####
85 # Only required if you want the WebRTC canceller -- no runtime dep on
88 AC_PROG_GCC_TRADITIONAL
89 AC_USE_SYSTEM_EXTENSIONS
93 AC_CHECK_PROGS([M4], gm4 m4, no)
94 AS_IF([test "x$M4" = "xno"], AC_MSG_ERROR([m4 missing]))
102 if test "x$enable_nls" != "xno"; then
103 IT_PROG_INTLTOOL([0.35.0])
105 AM_GNU_GETTEXT_VERSION([0.18.1])
106 AM_GNU_GETTEXT([external])
108 GETTEXT_PACKAGE=pulseaudio
109 AC_SUBST([GETTEXT_PACKAGE])
110 AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[Gettext package])
112 pulselocaledir='${prefix}/${DATADIRNAME}/locale'
113 AX_DEFINE_DIR(PULSE_LOCALEDIR, pulselocaledir, [Gettext locale dir])
115 # workaround till an intltool m4 bug is fixed upstream
116 # (https://bugs.launchpad.net/intltool/+bug/904647)
122 #### Determine host OS ####
124 # if the host has the possibility of sys/capability.h for dropping privileges
125 # used to determine if we should error out if it is not found
132 AC_MSG_CHECKING([host operating system])
135 AC_MSG_RESULT([linux])
140 AC_MSG_RESULT([freebsd])
144 AC_MSG_RESULT([darwin])
146 AC_DEFINE([OS_IS_DARWIN], 1, [Build target is Darwin.])
149 AC_MSG_RESULT([win32])
151 AC_DEFINE([OS_IS_WIN32], 1, [Build target is Windows.])
154 AC_MSG_RESULT([unknown])
158 AM_CONDITIONAL(OS_IS_DARWIN, test "x$os_is_darwin" = "x1")
159 AM_CONDITIONAL(OS_IS_WIN32, test "x$os_is_win32" = "x1")
160 AC_SUBST([OS_IS_WIN32], [$os_is_win32])
162 # Platform specific hacks
165 AC_DEFINE([_DARWIN_C_SOURCE], [200112L], [Needed to get NSIG on Mac OS X])
168 AC_DEFINE([WIN32_LEAN_AND_MEAN], 1, [Needed to avoid including unnecessary headers on Windows])
171 AC_DEFINE(_XOPEN_SOURCE, 600, [Needed to get declarations for msg_control and msg_controllen on Solaris])
172 AC_DEFINE(__EXTENSIONS__, 1, [Needed to get declarations for msg_control and msg_controllen on Solaris])
177 #### Compiler flags ####
179 AX_APPEND_COMPILE_FLAGS(
180 [-Wall -W -Wextra -pipe -Wno-long-long -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 -Wwrite-strings -Wno-unused-parameter -ffast-math -fno-common -fdiagnostics-show-option -fdiagnostics-color=auto],
181 [], [-pedantic -Werror])
183 AS_CASE([" $CFLAGS "], [*" -O0 "*], [], [
184 # Don't append the flag if it already exists.
185 # Only enable fastpath asserts when doing a debug build, e.g. from bootstrap.sh.
186 AX_APPEND_FLAG([-DFASTPATH], [CPPFLAGS])
188 # Cannot use AX_APPEND_FLAG here, as it assumes no space inside the added flags.
189 # Cannot append flags with AX_APPEND_FLAG one by one, as this would destroy all fortifications
190 # if CPPFLAGS already contain -D_FORTIFY_SOURCE=2.
192 # Warnings to be aware of that appear with -D_FORTIFY_SOURCE=2 but without -U_FORTIFY_SOURCE:
193 # On Fedora 20 with -O0: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
194 # On Gentoo with -O2: "_FORTIFY_SOURCE" redefined [enabled by default]
195 AS_VAR_APPEND([CPPFLAGS],[" -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2"])
198 #### Linker flags ####
200 # Check whether the linker supports the -version-script option.
201 # The Make variable $(srcdir) needs to be in the LDFLAGS in that form,
202 # so that it is expanded the right way in every subdir.
203 AX_CHECK_LINK_FLAG(["-Wl,-version-script=${srcdir}/src/map-file"],
204 [VERSIONING_LDFLAGS='-Wl,-version-script=$(abs_top_srcdir)/src/map-file'])
205 AC_SUBST([VERSIONING_LDFLAGS])
207 # Use immediate (now) bindings; avoids the funky re-call in itself.
208 # The -z now syntax is lifted from Sun's linker and works with GNU's too, other linkers might be added later.
209 AX_APPEND_LINK_FLAGS([-Wl,-z,now], [IMMEDIATE_LDFLAGS])
210 AC_SUBST([IMMEDIATE_LDFLAGS])
212 # On ELF systems we don't want the libraries to be unloaded since we don't clean them up properly,
213 # so we request the nodelete flag to be enabled.
214 # On other systems, we don't really know how to do that, but it's welcome if somebody can tell.
215 AX_APPEND_LINK_FLAGS([-Wl,-z,nodelete], [NODELETE_LDFLAGS], [-shared])
216 AC_SUBST([NODELETE_LDFLAGS])
218 # Check for the proper way to build libraries that have no undefined symbols
220 # FreeBSD (et al.) does not complete linking for shared objects when pthreads
221 # are requested, as different implementations are present.
222 *-freebsd* | *-openbsd*) ;;
224 for possible_flag in "-Wl,--no-undefined" "-Wl,-z,defs"; do
225 AX_CHECK_LINK_FLAG([$possible_flag], [NOUNDEFINED_LDFLAGS="$possible_flag"; break])
229 AC_SUBST([NOUNDEFINED_LDFLAGS])
232 #### Atomic operations ####
234 # Native atomic operation support
235 AC_ARG_ENABLE([atomic-arm-linux-helpers],
236 AS_HELP_STRING([--disable-atomic-arm-linux-helpers],[use inline asm or libatomic_ops instead]))
238 AC_ARG_ENABLE([atomic-arm-memory-barrier],
239 AS_HELP_STRING([--enable-atomic-arm-memory-barrier],[only really needed in SMP arm systems]))
241 if test "x$enable_atomic_arm_memory_barrier" = "xyes"; then
242 AC_DEFINE_UNQUOTED(ATOMIC_ARM_MEMORY_BARRIER_ENABLED, 1, [Enable memory barriers])
245 # If everything else fails use libatomic_ops
246 need_libatomic_ops=yes
248 AC_CACHE_CHECK([whether $CC knows __sync_bool_compare_and_swap()],
249 pulseaudio_cv_sync_bool_compare_and_swap, [
251 [AC_LANG_PROGRAM([], [[int a = 4; __sync_bool_compare_and_swap(&a, 4, 5);]])],
252 [pulseaudio_cv_sync_bool_compare_and_swap=yes],
253 [pulseaudio_cv_sync_bool_compare_and_swap=no])
256 if test "$pulseaudio_cv_sync_bool_compare_and_swap" = "yes" ; then
257 AC_DEFINE([HAVE_ATOMIC_BUILTINS], 1, [Have __sync_bool_compare_and_swap() and friends.])
258 need_libatomic_ops=no
260 # HW specific atomic ops stuff
261 AC_MSG_CHECKING([architecture for native atomic operations])
265 AC_MSG_CHECKING([whether we can use Linux kernel helpers])
266 # The Linux kernel helper functions have been there since 2.6.16. However
267 # compile time checking for kernel version in cross compile environment
268 # (which is usually the case for arm cpu) is tricky (or impossible).
269 if test "x$os_is_linux" = "x1" && test "x$enable_atomic_arm_linux_helpers" != "xno"; then
271 AC_DEFINE_UNQUOTED(ATOMIC_ARM_LINUX_HELPERS, 1, [special arm linux implementation])
272 need_libatomic_ops=no
275 AC_CACHE_CHECK([compiler support for arm inline asm atomic operations],
276 pulseaudio_cv_support_arm_atomic_ops, [
278 [AC_LANG_PROGRAM([], [[
281 asm volatile ("ldrex %0, [%1]\n"
283 "strexeq %0, %3, [%1]\n"
285 : "r" (&a), "Ir" (o), "r" (n)
287 return (a==1 ? 0 : -1);
289 [pulseaudio_cv_support_arm_atomic_ops=yes],
290 [pulseaudio_cv_support_arm_atomic_ops=no])
292 AS_IF([test "$pulseaudio_cv_support_arm_atomic_ops" = "yes"], [
293 AC_DEFINE([ATOMIC_ARM_INLINE_ASM], 1, [Have ARM atomic instructions.])
294 need_libatomic_ops=no
300 need_libatomic_ops=no
304 need_libatomic_ops=no
307 AC_MSG_RESULT([unknown])
312 # If we're on ARM, check for the ARMV6 instructions we need */
315 AC_CACHE_CHECK([support for required armv6 instructions],
316 pulseaudio_cv_support_armv6,
319 [[volatile int a = -60000, b = 0xaaaabbbb, c = 0xccccdddd;
320 asm volatile ("ldr r0, %2 \n"
325 "pkhbt r1, r3, r2, LSL #8 \n"
328 : "m" (a), "m" (b), "m" (c)
329 : "r0", "r1", "r2", "r3", "cc");
330 return (a == -128 && b == 0xaabbdddd) ? 0 : -1;
332 [pulseaudio_cv_support_armv6=yes],
333 [pulseaudio_cv_support_armv6=no])
335 AS_IF([test "$pulseaudio_cv_support_armv6" = "yes"], [
336 AC_DEFINE([HAVE_ARMV6], 1, [Have ARMv6 instructions.])
343 #### NEON optimisations ####
344 AC_ARG_ENABLE([neon-opt],
345 AS_HELP_STRING([--enable-neon-opt], [Enable NEON optimisations on ARM CPUs that support it]))
347 AS_IF([test "x$enable_neon_opt" != "xno"],
348 [save_CFLAGS="$CFLAGS"; CFLAGS="-mfpu=neon $CFLAGS"
350 [AC_LANG_PROGRAM([[#include <arm_neon.h>]], [])],
353 NEON_CFLAGS="-mfpu=neon"
359 CFLAGS="$save_CFLAGS"
363 AS_IF([test "x$enable_neon_opt" = "xyes" && test "x$HAVE_NEON" = "x0"],
364 [AC_MSG_ERROR([*** Compiler does not support -mfpu=neon or CFLAGS override -mfpu])])
367 AC_SUBST(NEON_CFLAGS)
368 AM_CONDITIONAL([HAVE_NEON], [test "x$HAVE_NEON" = x1])
369 AS_IF([test "x$HAVE_NEON" = "x1"], AC_DEFINE([HAVE_NEON], 1, [Have NEON support?]))
372 #### libtool stuff ####
375 LT_INIT([dlopen win32-dll disable-static])
377 dnl As an extra safety device, check for lt_dladvise_init() which is
378 dnl only implemented in libtool 2.x, and refine as we go if we have
379 dnl refined requirements.
381 dnl Check the header files first since the system may have a
382 dnl libltdl.so for runtime, but no headers, and we want to bail out as
383 dnl soon as possible.
385 dnl We don't need any special variable for this though, since the user
386 dnl can give the proper place to find libltdl through the standard
387 dnl variables like LDFLAGS and CPPFLAGS.
389 AC_CHECK_HEADER([ltdl.h],
390 [AC_CHECK_LIB([ltdl], [lt_dladvise_init], [LIBLTDL=-lltdl], [LIBLTDL=])],
393 AS_IF([test "x$LIBLTDL" = "x"],
394 [AC_MSG_ERROR([Unable to find libltdl version 2. Makes sure you have libtool 2.4 or later installed.])])
398 ###################################
399 # Basic environment checks #
400 ###################################
402 #### Checks for header files. ####
408 AC_CHECK_HEADERS_ONCE([arpa/inet.h glob.h grp.h netdb.h netinet/in.h \
409 netinet/in_systm.h netinet/tcp.h poll.h pwd.h sched.h \
410 sys/mman.h sys/select.h sys/socket.h sys/wait.h \
411 sys/uio.h syslog.h sys/dl.h dlfcn.h linux/sockios.h])
412 AC_CHECK_HEADERS([netinet/ip.h], [], [],
413 [#include <sys/types.h>
414 #if HAVE_NETINET_IN_H
415 # include <netinet/in.h>
417 #if HAVE_NETINET_IN_SYSTM_H
418 # include <netinet/in_systm.h>
421 AC_CHECK_HEADERS([sys/resource.h], [HAVE_SYS_RESOURCE_H=1], [HAVE_SYS_RESOURCE_H=0])
422 AC_SUBST(HAVE_SYS_RESOURCE_H)
423 AC_CHECK_HEADERS([sys/un.h], [HAVE_AF_UNIX=1], [HAVE_AF_UNIX=0])
424 AM_CONDITIONAL(HAVE_AF_UNIX, test "x$HAVE_AF_UNIX" = "x1")
425 AC_SUBST(HAVE_AF_UNIX)
428 AC_CHECK_HEADERS([linux/input.h], [HAVE_EVDEV=1], [HAVE_EVDEV=0])
429 AM_CONDITIONAL([HAVE_EVDEV], [test "x$HAVE_EVDEV" = "x1"])
431 AC_CHECK_HEADERS_ONCE([sys/prctl.h])
434 AC_CHECK_HEADERS_ONCE([sys/filio.h])
437 AC_CHECK_HEADERS_ONCE([windows.h winsock2.h ws2tcpip.h])
440 AC_CHECK_HEADERS_ONCE([sys/atomic.h])
443 AC_CHECK_HEADERS_ONCE([sys/ioctl.h])
444 AC_CHECK_HEADERS_ONCE([byteswap.h])
445 AC_CHECK_HEADERS_ONCE([sys/syscall.h])
446 AC_CHECK_HEADERS_ONCE([sys/eventfd.h])
447 AC_CHECK_HEADERS_ONCE([execinfo.h])
448 AC_CHECK_HEADERS_ONCE([langinfo.h])
449 AC_CHECK_HEADERS_ONCE([regex.h pcreposix.h])
451 AM_CONDITIONAL(HAVE_SYS_EVENTFD_H, test "x$ac_cv_header_sys_eventfd_h" = "xyes")
453 #### Typdefs, structures, etc. ####
459 AC_CHECK_TYPES(ssize_t, , AC_DEFINE([ssize_t], [signed long], [Define ssize_t if it is not done by the standard libs.]))
463 AC_CHECK_DECLS(environ)
466 AX_CHECK_DEFINE([signal.h], [SIGXCPU], [HAVE_SIGXCPU=1], [HAVE_SIGXCPU=0])
467 AS_IF([test "x$HAVE_SIGXCPU" = "x1"], AC_DEFINE([HAVE_SIGXCPU], 1, [Have SIGXCPU?]))
468 AM_CONDITIONAL(HAVE_SIGXCPU, test "x$HAVE_SIGXCPU" = "x1")
470 # INADDR_NONE, Solaris lacks this
471 AX_CHECK_DEFINE([netinet/in.h], [INADDR_NONE], [],
472 [AX_CHECK_DEFINE([winsock2.h], [INADDR_NONE], [],
473 [AC_DEFINE([INADDR_NONE], [0xffffffff], [Define INADDR_NONE if not found in <netinet/in.h>])])])
477 AC_CACHE_CHECK([whether $CC knows _Bool],
480 [AC_LANG_PROGRAM([], [[_Bool b;]])],
481 [pulseaudio_cv__Bool=yes],
482 [pulseaudio_cv__Bool=no])
485 AS_IF([test "$pulseaudio_cv__Bool" = "yes"], AC_DEFINE([HAVE_STD_BOOL], 1, [Have _Bool.]))
488 #### Thread support ####
491 AS_IF([test "$ac_cv_tls" == "__thread"],
492 AC_DEFINE([SUPPORT_TLS___THREAD], 1, [Define this if the compiler supports __thread for Thread-Local Storage]))
494 # Win32 build breaks with win32 pthread installed
495 AS_IF([test "x$os_is_win32" != "x1"],
498 AS_IF([test "x$ax_pthread_ok" == "xyes"],
499 AC_DEFINE([_POSIX_PTHREAD_SEMANTICS], 1, [Needed on Solaris]))
502 #### Check for libs ####
505 AC_SEARCH_LIBS([pow], [m])
508 AC_SEARCH_LIBS([sched_setscheduler], [rt])
509 AC_SEARCH_LIBS([dlopen], [dl])
510 AC_SEARCH_LIBS([shm_open], [rt])
511 AC_SEARCH_LIBS([inet_ntop], [nsl])
512 AC_SEARCH_LIBS([timer_create], [rt])
513 AC_SEARCH_LIBS([pthread_setaffinity_np], [pthread])
514 AC_SEARCH_LIBS([pthread_getname_np], [pthread])
515 AC_SEARCH_LIBS([pthread_setname_np], [pthread])
518 AC_SEARCH_LIBS([connect], [socket])
519 AC_SEARCH_LIBS([backtrace], [execinfo ubacktrace])
522 if test "x$os_is_darwin" = "x1" ; then
523 AC_MSG_CHECKING([looking for Apple CoreService Framework])
524 # How do I check a framework "library" - AC_CHECK_LIB prob. won't work??, just assign LIBS & hope
525 AC_CHECK_HEADER([/Developer/Headers/FlatCarbon/CoreServices.h],
526 [LIBS="$LIBS -framework CoreServices"],
527 [AC_CHECK_HEADERS([/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h],
528 [LIBS="$LIBS -framework CoreServices"],
529 [AC_MSG_ERROR([CoreServices.h header file not found])]
534 AC_DEFINE([HAVE_CLOCK_GETTIME], 1, [Using clock_gettime() replacement])
538 AM_CONDITIONAL([HAVE_BONJOUR], [test "x$HAVE_BONJOUR" = x1])
541 AC_SEARCH_LIBS([regexec], [pcreposix])
542 # This magic is needed so we do not needlessly add static libs to the win32 build, disabling its ability to make dlls.
543 AC_CHECK_FUNCS([getopt_long], [], [AC_CHECK_LIB([iberty], [getopt_long])])
546 #### Check for functions ####
549 AC_CHECK_FUNCS_ONCE([lrintf strtof])
554 AC_CHECK_FUNCS_ONCE([chmod chown fstat fchown fchmod clock_gettime getaddrinfo getgrgid_r getgrnam_r \
555 getpwnam_r getpwuid_r gettimeofday getuid mlock nanosleep \
556 pipe posix_fadvise posix_madvise posix_memalign setpgid setsid shm_open \
557 sigaction sleep symlink sysconf uname pthread_setaffinity_np pthread_getname_np pthread_setname_np])
558 AC_CHECK_FUNCS([mkfifo], [HAVE_MKFIFO=1], [HAVE_MKFIFO=0])
559 AC_SUBST(HAVE_MKFIFO)
560 AM_CONDITIONAL(HAVE_MKFIFO, test "x$HAVE_MKFIFO" = "x1")
563 AC_CHECK_FUNCS_ONCE([readlink])
566 AC_CHECK_FUNCS_ONCE([ctime_r usleep])
569 AC_CHECK_FUNCS_ONCE([strerror_r])
572 AC_CHECK_FUNCS_ONCE([lstat])
575 AC_CHECK_FUNCS_ONCE([setresuid setresgid setreuid setregid seteuid setegid ppoll strsignal sig2str strtod_l pipe2 accept4])
579 AC_CHECK_FUNCS([regexec], [HAVE_REGEX=1], [HAVE_REGEX=0])
580 AM_CONDITIONAL(HAVE_REGEX, [test "x$HAVE_REGEX" = "x1"])
582 # Large File-Support (LFS)
584 # Check for open64 to know if the current system does have open64() and similar functions
585 AC_CHECK_FUNCS_ONCE([open64])
587 AC_SEARCH_LIBS([dladdr], [dl], [HAVE_DLADDR=1], [HAVE_DLADDR=0])
588 AC_DEFINE(HAVE_DLADDR, [1], [Have dladdr?])
590 ###################################
591 # External libraries #
592 ###################################
598 #### X11 (optional) ####
601 AS_HELP_STRING([--disable-x11],[Disable optional X11 support]))
603 AS_IF([test "x$enable_x11" != "xno"],
604 [PKG_CHECK_MODULES(X11, [ x11-xcb xcb >= 1.6 ice sm xtst ], HAVE_X11=1, HAVE_X11=0)],
607 AS_IF([test "x$enable_x11" = "xyes" && test "x$HAVE_X11" = "x0"],
608 [AC_MSG_ERROR([*** X11 not found])])
611 AM_CONDITIONAL([HAVE_X11], [test "x$HAVE_X11" = x1])
612 AS_IF([test "x$HAVE_X11" = "x1"], AC_DEFINE([HAVE_X11], 1, [Have X11?]))
614 #### Capabilities (optional) ####
619 AS_HELP_STRING([--without-caps],[Omit support for dropping capabilities.]))
621 if test "x${with_caps}" != "xno"; then
622 AC_SEARCH_LIBS([cap_init], [cap], [], [])
624 # Only give an error on hosts that we know could support capabilities
625 AC_CHECK_HEADERS([sys/capability.h], [], [
626 if test "${host_has_caps}" = "1"; then
627 AC_MSG_ERROR([*** sys/capability.h not found. Use --without-caps to disable capabilities support.])
631 #### Valgrind (optional) ####
633 AC_CHECK_HEADERS_ONCE([valgrind/memcheck.h])
635 #### check unit tests ####
637 AC_ARG_ENABLE([tests],
638 AS_HELP_STRING([--disable-tests],[Disable unit tests]))
640 AS_IF([test "x$enable_tests" != "xno"],
641 [PKG_CHECK_MODULES(LIBCHECK, [ check ], HAVE_LIBCHECK=1, HAVE_LIBCHECK=0)],
644 AS_IF([test "x$enable_tests" = "xyes" && test "x$HAVE_LIBCHECK" = "x0"],
645 [AC_MSG_ERROR([*** check library not found])])
647 AM_CONDITIONAL([HAVE_TESTS], [test "x$HAVE_LIBCHECK" = x1])
649 #### json parsing ####
651 PKG_CHECK_MODULES(LIBJSON, [ json-c >= 0.11 ])
655 PKG_CHECK_MODULES(LIBSNDFILE, [ sndfile >= 1.0.20 ])
659 AC_MSG_CHECKING([whether we need libatomic_ops])
660 if test "x$need_libatomic_ops" = "xyes"; then
662 AC_CHECK_HEADERS([atomic_ops.h],
663 [CFLAGS="$CFLAGS -DAO_REQUIRE_CAS"],
664 [AC_MSG_ERROR([*** libatomic-ops headers not found])])
666 # Win32 does not need the lib and breaks horribly if we try to include it
667 AS_IF([test "x$os_is_win32" != "x1"], [LIBS="$LIBS -latomic_ops"])
672 #### Libsamplerate support (optional) ####
674 AC_ARG_ENABLE([samplerate],
675 AS_HELP_STRING([--enable-samplerate],[Enable optional libsamplerate support (DEPRECATED)]))
677 AS_IF([test "x$enable_samplerate" = "xyes"],
678 [PKG_CHECK_MODULES(LIBSAMPLERATE, [ samplerate >= 0.1.0 ], HAVE_LIBSAMPLERATE=1, HAVE_LIBSAMPLERATE=0)],
679 HAVE_LIBSAMPLERATE=0)
681 AS_IF([test "x$enable_samplerate" = "xyes" && test "x$HAVE_LIBSAMPLERATE" = "x0"],
682 [AC_MSG_ERROR([*** Libsamplerate not found])])
684 AM_CONDITIONAL([HAVE_LIBSAMPLERATE], [test "x$HAVE_LIBSAMPLERATE" = x1])
685 AS_IF([test "x$HAVE_LIBSAMPLERATE" = "x1"], AC_DEFINE([HAVE_LIBSAMPLERATE], 1, [Have libsamplerate?]))
687 AS_IF([test "x$HAVE_LIBSAMPLERATE" = "x1"], AC_MSG_WARN([Support for libsamplerate is DEPRECATED]))
689 #### Database support ####
691 AC_ARG_WITH([database],
692 AS_HELP_STRING([--with-database=auto|tdb|gdbm|simple],[Choose database backend.]),[],[with_database=auto])
695 AS_IF([test "x$with_database" = "xauto" -o "x$with_database" = "xtdb"],
696 [PKG_CHECK_MODULES(TDB, [ tdb ], HAVE_TDB=1, HAVE_TDB=0)],
698 AS_IF([test "x$HAVE_TDB" = "x1"], with_database=tdb)
700 AS_IF([test "x$with_database" = "xtdb" && test "x$HAVE_TDB" = "x0"],
701 [AC_MSG_ERROR([*** tdb not found])])
704 AS_IF([test "x$with_database" = "xauto" -o "x$with_database" = "xgdbm"],
707 AC_CHECK_LIB(gdbm, gdbm_open, [], HAVE_GDBM=0)
708 AC_CHECK_HEADERS(gdbm.h, [], HAVE_GDBM=0)
711 AS_IF([test "x$HAVE_GDBM" = "x1"],
718 AS_IF([test "x$with_database" = "xgdbm" && test "x$HAVE_GDBM" = "x0"],
719 [AC_MSG_ERROR([*** gdbm not found])])
722 AS_IF([test "x$with_database" = "xauto" -o "x$with_database" = "xsimple"],
725 AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], with_database=simple)
727 AS_IF([test "x$HAVE_TDB" != x1 -a "x$HAVE_GDBM" != x1 -a "x$HAVE_SIMPLEDB" != x1],
728 AC_MSG_ERROR([*** missing database backend]))
731 AM_CONDITIONAL([HAVE_TDB], [test "x$HAVE_TDB" = x1])
732 AS_IF([test "x$HAVE_TDB" = "x1"], AC_DEFINE([HAVE_TDB], 1, [Have tdb?]))
734 AC_SUBST(GDBM_CFLAGS)
736 AM_CONDITIONAL([HAVE_GDBM], [test "x$HAVE_GDBM" = x1])
737 AS_IF([test "x$HAVE_GDBM" = "x1"], AC_DEFINE([HAVE_GDBM], 1, [Have gdbm?]))
739 AM_CONDITIONAL([HAVE_SIMPLEDB], [test "x$HAVE_SIMPLEDB" = x1])
740 AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], AC_DEFINE([HAVE_SIMPLEDB], 1, [Have simple?]))
742 #### OSS support (optional) ####
744 AC_ARG_ENABLE([oss-output],
745 AS_HELP_STRING([--disable-oss-output],[Disable optional OSS output support]))
747 AC_ARG_ENABLE([oss-wrapper],
748 AS_HELP_STRING([--disable-oss-wrapper],[Disable optional OSS wrapper support]))
750 AS_IF([test "x$enable_oss_output" != "xno" -o "x$enable_oss_wrapper" != "xno"],
751 [AC_CHECK_HEADERS([sys/soundcard.h], HAVE_OSS=1, HAVE_OSS=0)],
754 AS_IF([test "x$enable_oss_output" = "xyes" -o "x$enable_oss_wrapper" = "xyes" && test "x$HAVE_OSS" = "x0"],
755 [AC_MSG_ERROR([*** OSS support not found])])
757 AS_IF([test "x$enable_oss_output" != "xno"],
758 [AS_IF([test "x$HAVE_OSS" = "x1"], HAVE_OSS_OUTPUT=1, HAVE_OSS_OUTPUT=0)],
761 AS_IF([test "x$enable_oss_wrapper" != "xno"],
762 [AS_IF([test "x$HAVE_OSS" = "x1"], HAVE_OSS_WRAPPER=1, HAVE_OSS_WRAPPER=0)],
765 AC_SUBST(HAVE_OSS_OUTPUT)
766 AM_CONDITIONAL([HAVE_OSS_OUTPUT], [test "x$HAVE_OSS_OUTPUT" = "x1"])
767 AM_CONDITIONAL([HAVE_OSS_WRAPPER], [test "x$HAVE_OSS_WRAPPER" = "x1"])
768 AS_IF([test "x$HAVE_OSS_OUTPUT" = "x1"], AC_DEFINE([HAVE_OSS_OUTPUT], 1, [Have OSS output?]))
769 AS_IF([test "x$HAVE_OSS_WRAPPER" = "x1"], AC_DEFINE([HAVE_OSS_WRAPPER], 1, [Have OSS wrapper (padsp)?]))
771 #### CoreAudio support (optional) ####
773 AC_ARG_ENABLE([coreaudio-output],
774 AS_HELP_STRING([--disable-coreaudio-output],[Disable optional CoreAudio output support]))
776 AS_IF([test "x$enable_coreaudio_output" != "xno"],
777 [AC_CHECK_HEADERS([CoreAudio/CoreAudio.h], HAVE_COREAUDIO=1, HAVE_COREAUDIO=0)],
780 AS_IF([test "x$enable_coreaudio_output" = "xyes" && test "x$HAVE_COREAUDIO" = "x0"],
781 [AC_MSG_ERROR([*** CoreAudio output support not found])])
783 AM_CONDITIONAL([HAVE_COREAUDIO], [test "x$HAVE_COREAUDIO" = "x1" && test "x$enable_coreaudio_output" != "xno"])
785 #### ALSA support (optional) ####
787 AC_ARG_ENABLE([alsa],
788 AS_HELP_STRING([--disable-alsa],[Disable optional ALSA support]))
790 AS_IF([test "x$enable_alsa" != "xno"],
791 [PKG_CHECK_MODULES(ASOUNDLIB, [ alsa >= 1.0.19 ], HAVE_ALSA=1, HAVE_ALSA=0)],
794 AS_IF([test "x$enable_alsa" = "xyes" && test "x$HAVE_ALSA" = "x0"],
795 [AC_MSG_ERROR([*** Needed alsa >= 1.0.19 support not found])])
797 AS_IF([test "x$HAVE_ALSA" = "x1"],
799 save_CPPFLAGS="$CPPFLAGS"; CPPFLAGS="$CPPFLAGS $ASOUNDLIB_CFLAGS"
800 AC_CHECK_HEADERS([use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
801 CPPFLAGS="$save_CPPFLAGS"
806 AM_CONDITIONAL([HAVE_ALSA], [test "x$HAVE_ALSA" = x1])
807 AS_IF([test "x$HAVE_ALSA" = "x1"], AC_DEFINE([HAVE_ALSA], 1, [Have ALSA?]))
808 AS_IF([test "x$HAVE_ALSA_UCM" = "x1"], AC_DEFINE([HAVE_ALSA_UCM], 1, [Have ALSA UCM?]))
810 #### EsounD support (optional) ####
812 AC_ARG_ENABLE([esound],
813 AS_HELP_STRING([--disable-esound],[Disable optional EsounD support]))
814 AM_CONDITIONAL([HAVE_ESOUND], [test "x$enable_esound" != "xno"])
815 AS_IF([test "x$enable_esound" != "xno"], [HAVE_ESOUND=1])
817 #### Solaris audio support (optional) ####
819 AC_ARG_ENABLE([solaris],
820 AS_HELP_STRING([--disable-solaris],[Disable optional Solaris audio support]))
822 AS_IF([test "x$enable_solaris" != "xno"],
823 [AC_CHECK_HEADERS([sys/audio.h], HAVE_SOLARIS=1, HAVE_SOLARIS=0)],
826 AS_IF([test "x$enable_solaris" = "xyes" && test "x$HAVE_SOLARIS" = "x0"],
827 [AC_MSG_ERROR([*** Solaris audio support not found])])
829 AM_CONDITIONAL([HAVE_SOLARIS], [test "x$HAVE_SOLARIS" = x1])
830 AS_IF([test "x$HAVE_SOLARIS" = "x1"], AC_DEFINE([HAVE_SOLARIS], 1, [Have Solaris audio?]))
832 #### WaveOut audio support (optional) ####
834 AC_ARG_ENABLE([waveout],
835 AS_HELP_STRING([--disable-waveout],[Disable optional WaveOut audio support]))
837 AS_IF([test "x$enable_waveout" != "xno"],
838 [AC_CHECK_HEADERS([mmsystem.h], HAVE_WAVEOUT=1, HAVE_WAVEOUT=0, [#include <windows.h>])],
841 AS_IF([test "x$enable_waveout" = "xyes" && test "x$HAVE_WAVEOUT" = "x0"],
842 [AC_MSG_ERROR([*** WaveOut audio support not found])])
844 AC_SUBST(HAVE_WAVEOUT)
845 AM_CONDITIONAL([HAVE_WAVEOUT], [test "x$HAVE_WAVEOUT" = x1])
846 AS_IF([test "x$HAVE_WAVEOUT" = "x1"], AC_DEFINE([HAVE_WAVEOUT], 1, [Have WaveOut audio?]))
848 #### GLib 2 support (optional) ####
850 AC_ARG_ENABLE([glib2],
851 AS_HELP_STRING([--disable-glib2],[Disable optional GLib 2 support]))
853 AS_IF([test "x$enable_glib2" != "xno"],
854 [PKG_CHECK_MODULES(GLIB20, [ glib-2.0 >= 2.4.0 ], HAVE_GLIB20=1, HAVE_GLIB20=0)],
857 AS_IF([test "x$enable_glib2" = "xyes" && test "x$HAVE_GLIB20" = "x0"],
858 [AC_MSG_ERROR([*** GLib 2 support not found])])
860 AC_SUBST(HAVE_GLIB20)
861 AM_CONDITIONAL([HAVE_GLIB20], [test "x$HAVE_GLIB20" = x1])
862 AS_IF([test "x$HAVE_GLIB20" = "x1"], AC_DEFINE([HAVE_GLIB], 1, [Have GLIB?]))
864 #### GTK3 support (optional) ####
866 AC_ARG_ENABLE([gtk3],
867 AS_HELP_STRING([--disable-gtk3],[Disable optional Gtk+ 3 support]))
869 AS_IF([test "x$enable_gtk3" != "xno"],
870 [PKG_CHECK_MODULES(GTK30, [ gtk+-3.0 ], HAVE_GTK30=1, HAVE_GTK30=0)],
873 AS_IF([test "x$enable_gtk3" = "xyes" && test "x$HAVE_GTK30" = "x0"],
874 [AC_MSG_ERROR([*** Gtk+ 3 support not found])])
876 AM_CONDITIONAL([HAVE_GTK30], [test "x$HAVE_GTK30" = x1])
877 AS_IF([test "x$HAVE_GTK30" = "x1"], AC_DEFINE([HAVE_GTK], 1, [Have GTK?]))
879 #### GConf support (optional) ####
881 AC_ARG_ENABLE([gconf],
882 AS_HELP_STRING([--disable-gconf],[Disable optional GConf support]))
884 AS_IF([test "x$enable_gconf" != "xno"],
885 [PKG_CHECK_MODULES(GCONF, [ gconf-2.0 >= 2.4.0 gobject-2.0 ], HAVE_GCONF=1, HAVE_GCONF=0)],
888 AS_IF([test "x$enable_gconf" = "xyes" && test "x$HAVE_GCONF" = "x0"],
889 [AC_MSG_ERROR([*** GConf support not found])])
891 AM_CONDITIONAL([HAVE_GCONF], [test "x$HAVE_GCONF" = x1])
893 #### Avahi support (optional) ####
895 AC_ARG_ENABLE([avahi],
896 AS_HELP_STRING([--disable-avahi],[Disable optional Avahi support]))
898 AS_IF([test "x$enable_avahi" != "xno"],
899 [PKG_CHECK_MODULES(AVAHI, [ avahi-client >= 0.6.0 ], HAVE_AVAHI=1, HAVE_AVAHI=0)],
902 AS_IF([test "x$enable_avahi" = "xyes" && test "x$HAVE_AVAHI" = "x0"],
903 [AC_MSG_ERROR([*** Avahi support not found])])
906 AM_CONDITIONAL([HAVE_AVAHI], [test "x$HAVE_AVAHI" = x1])
908 #### JACK (optional) ####
910 AC_ARG_ENABLE([jack],
911 AS_HELP_STRING([--disable-jack],[Disable optional JACK support]))
913 AS_IF([test "x$enable_jack" != "xno"],
914 [PKG_CHECK_MODULES(JACK, [ jack >= 0.117.0 ], HAVE_JACK=1, HAVE_JACK=0)],
917 AS_IF([test "x$enable_jack" = "xyes" && test "x$HAVE_JACK" = "x0"],
918 [AC_MSG_ERROR([*** JACK support not found])])
920 AM_CONDITIONAL([HAVE_JACK], [test "x$HAVE_JACK" = x1])
922 #### Async DNS support (optional) ####
924 AC_ARG_ENABLE([asyncns],
925 AS_HELP_STRING([--disable-asyncns],[Disable optional Async DNS support]))
927 AS_IF([test "x$enable_asyncns" != "xno"],
928 [PKG_CHECK_MODULES(LIBASYNCNS, [ libasyncns >= 0.1 ], HAVE_LIBASYNCNS=1, HAVE_LIBASYNCNS=0)],
931 AS_IF([test "x$enable_asyncns" = "xyes" && test "x$HAVE_LIBASYNCNS" = "x0"],
932 [AC_MSG_ERROR([*** Async DNS support not found])])
934 AM_CONDITIONAL([HAVE_LIBASYNCNS], [test "x$HAVE_LIBASYNCNS" = x1])
935 AS_IF([test "x$HAVE_LIBASYNCNS" = "x1"], AC_DEFINE([HAVE_LIBASYNCNS], 1, [Have libasyncns?]))
937 #### TCP wrappers (optional) ####
939 AC_ARG_ENABLE([tcpwrap],
940 AS_HELP_STRING([--disable-tcpwrap],[Disable optional TCP wrappers support]))
942 AS_IF([test "x$enable_tcpwrap" != "xno"],
945 AS_IF([test "x$LIBWRAP_LIBS" != "x"], HAVE_TCPWRAP=1, HAVE_TCPWRAP=0)
949 AS_IF([test "x$enable_tcpwrap" = "xyes" && test "x$HAVE_TCPWRAP" = "x0"],
950 [AC_MSG_ERROR([*** TCP wrappers support not found])])
952 AC_SUBST(LIBWRAP_LIBS)
954 #### LIRC support (optional) ####
956 AC_ARG_ENABLE([lirc],
957 AS_HELP_STRING([--disable-lirc],[Disable optional LIRC support]))
962 AS_IF([test "x$enable_lirc" != "xno"],
965 AC_CHECK_HEADER(lirc/lirc_client.h, [], [HAVE_LIRC=0])
966 AC_CHECK_LIB(lirc_client, lirc_init, [LIRC_LIBS=-llirc_client], [HAVE_LIRC=0])
970 AS_IF([test "x$enable_lirc" = "xyes" && test "x$HAVE_LIRC" = "x0"],
971 [AC_MSG_ERROR([*** LIRC support not found])])
973 AC_SUBST(LIRC_CFLAGS)
975 AM_CONDITIONAL([HAVE_LIRC], [test "x$HAVE_LIRC" = x1])
977 #### D-Bus support (optional) ####
979 AC_ARG_ENABLE([dbus],
980 AS_HELP_STRING([--disable-dbus],[Disable optional D-Bus support]))
982 AS_IF([test "x$enable_dbus" != "xno"],
983 [PKG_CHECK_MODULES(DBUS, [ dbus-1 >= 1.4.12 ], HAVE_DBUS=1, HAVE_DBUS=0)],
986 AS_IF([test "x$enable_dbus" = "xyes" && test "x$HAVE_DBUS" = "x0"],
987 [AC_MSG_ERROR([*** D-Bus not available or too old version])])
989 AS_IF([test "x$HAVE_DBUS" = "x1"],
991 save_CFLAGS="$CFLAGS"; CFLAGS="$CFLAGS $DBUS_CFLAGS"
992 save_LIBS="$LIBS"; LIBS="$LIBS $DBUS_LIBS"
993 AC_CHECK_FUNCS(dbus_watch_get_unix_fd)
994 CFLAGS="$save_CFLAGS"
999 AM_CONDITIONAL([HAVE_DBUS], [test "x$HAVE_DBUS" = x1])
1000 AS_IF([test "x$HAVE_DBUS" = "x1"], AC_DEFINE([HAVE_DBUS], 1, [Have D-Bus.]))
1002 PA_MACHINE_ID="${sysconfdir}/machine-id"
1003 AX_DEFINE_DIR(PA_MACHINE_ID, PA_MACHINE_ID, [D-Bus machine-id file])
1004 PA_MACHINE_ID_FALLBACK="${localstatedir}/lib/dbus/machine-id"
1005 AX_DEFINE_DIR(PA_MACHINE_ID_FALLBACK, PA_MACHINE_ID_FALLBACK,
1006 [Fallback machine-id file])
1008 #### BlueZ support (optional, dependent on D-Bus and SBC) ####
1010 AC_ARG_ENABLE([bluez4],
1011 AS_HELP_STRING([--disable-bluez4],[Disable optional BlueZ 4 support]))
1012 AC_ARG_ENABLE([bluez5],
1013 AS_HELP_STRING([--disable-bluez5],[Disable optional BlueZ 5 support]))
1016 AS_IF([test "x$enable_bluez4" != "xno" || test "x$enable_bluez5" != "xno"],
1017 [PKG_CHECK_MODULES(SBC, [ sbc >= 1.0 ], HAVE_SBC=1, HAVE_SBC=0)],
1021 AS_IF([test "x$enable_bluez4" != "xno" && test "x$HAVE_DBUS" = "x1" && test "x$HAVE_SBC" = "x1"], HAVE_BLUEZ_4=1,
1023 AS_IF([test "x$enable_bluez4" = "xyes" && test "x$HAVE_BLUEZ_4" != "x1"],
1024 [AC_MSG_ERROR([*** BLUEZ 4 support not found (requires sbc and D-Bus)])])
1025 AC_SUBST(HAVE_BLUEZ_4)
1026 AM_CONDITIONAL([HAVE_BLUEZ_4], [test "x$HAVE_BLUEZ_4" = x1])
1029 AS_IF([test "x$enable_bluez5" != "xno" && test "x$HAVE_DBUS" = "x1" && test "x$HAVE_SBC" = "x1"], HAVE_BLUEZ_5=1,
1031 AS_IF([test "x$enable_bluez5" = "xyes" && test "x$HAVE_BLUEZ_5" != "x1"],
1032 [AC_MSG_ERROR([*** BLUEZ 5 support not found (requires sbc and D-Bus)])])
1033 AC_SUBST(HAVE_BLUEZ_5)
1034 AM_CONDITIONAL([HAVE_BLUEZ_5], [test "x$HAVE_BLUEZ_5" = x1])
1036 AS_IF([test "x$HAVE_BLUEZ_4" = "x1" || test "x$HAVE_BLUEZ_5" = "x1"], HAVE_BLUEZ=1, HAVE_BLUEZ=0)
1037 AC_SUBST(HAVE_BLUEZ)
1038 AM_CONDITIONAL([HAVE_BLUEZ], [test "x$HAVE_BLUEZ" = x1])
1040 ## Bluetooth Headset profiles backend ##
1042 AC_ARG_ENABLE([bluez5-ofono-headset],
1043 AS_HELP_STRING([--disable-bluez5-ofono-headset],[Disable optional ofono headset backend support (Bluez 5)]))
1044 AS_IF([test "x$HAVE_BLUEZ_5" = "x1" && test "x$enable_bluez5_ofono_headset" != "xno"], HAVE_BLUEZ_5_OFONO_HEADSET=1,
1045 HAVE_BLUEZ_5_OFONO_HEADSET=0)
1046 AC_SUBST(HAVE_BLUEZ_5_OFONO_HEADSET)
1047 AM_CONDITIONAL([HAVE_BLUEZ_5_OFONO_HEADSET], [test "x$HAVE_BLUEZ_5_OFONO_HEADSET" = x1])
1048 AS_IF([test "x$HAVE_BLUEZ_5_OFONO_HEADSET" = "x1"], AC_DEFINE([HAVE_BLUEZ_5_OFONO_HEADSET], 1, [Bluez 5 ofono headset backend enabled]))
1050 AC_ARG_ENABLE([bluez5-native-headset],
1051 AS_HELP_STRING([--disable-bluez5-native-headset],[Disable optional native headset backend support (Bluez 5)]))
1052 AS_IF([test "x$HAVE_BLUEZ_5" = "x1" && test "x$enable_bluez5_native_headset" != "xno"],
1053 [PKG_CHECK_MODULES(BLUEZ, [ bluez >= 4.101 ], HAVE_BLUEZ_5_NATIVE_HEADSET=1, HAVE_BLUEZ_5_NATIVE_HEADSET=0)],
1054 HAVE_BLUEZ_5_NATIVE_HEADSET=0)
1055 AS_IF([test "x$enable_bluez5_native_headset" = "xyes" && test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = "x0"],
1056 [AC_MSG_ERROR([*** BlueZ 5 native headset backend support not available (requires the libbluetooth headers)])])
1057 AC_SUBST(HAVE_BLUEZ_5_NATIVE_HEADSET)
1058 AM_CONDITIONAL([HAVE_BLUEZ_5_NATIVE_HEADSET], [test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = x1])
1059 AS_IF([test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = "x1"], AC_DEFINE([HAVE_BLUEZ_5_NATIVE_HEADSET], 1, [Bluez 5 native headset backend enabled]))
1061 #### UDEV support (optional) ####
1063 AC_ARG_ENABLE([udev],
1064 AS_HELP_STRING([--disable-udev],[Disable optional UDEV support]))
1066 AS_IF([test "x$enable_udev" != "xno" -a \( "x$HAVE_OSS" = "x1" -o "x$HAVE_ALSA" = "x1" \)],
1067 [PKG_CHECK_MODULES(UDEV, [ libudev >= 143 ], HAVE_UDEV=1, HAVE_UDEV=0)],
1070 AS_IF([test "x$enable_udev" = "xyes" && test "x$HAVE_UDEV" = "x0"],
1071 [AC_MSG_ERROR([*** UDEV support not found])])
1074 AM_CONDITIONAL([HAVE_UDEV], [test "x$HAVE_UDEV" = x1])
1075 AS_IF([test "x$HAVE_UDEV" = "x1"], AC_DEFINE([HAVE_UDEV], 1, [Have UDEV.]))
1077 #### HAL compat support (optional, dependent on UDEV) ####
1079 AC_ARG_ENABLE([hal-compat],
1080 AS_HELP_STRING([--disable-hal-compat],[Disable optional HAL->udev transition compatibility support]))
1082 AS_IF([test "x$enable_hal_compat" != "xno"],
1083 [AS_IF([test "x$HAVE_UDEV" = "x1"], HAVE_HAL_COMPAT=1, HAVE_HAL_COMPAT=0)],
1086 AM_CONDITIONAL([HAVE_HAL_COMPAT], [test "x$HAVE_HAL_COMPAT" = x1])
1087 AS_IF([test "x$HAVE_HAL_COMPAT" = "x1"], AC_DEFINE([HAVE_HAL_COMPAT], 1, [Have HAL compatibility.]))
1089 #### IPv6 connection support (optional) ####
1091 AC_ARG_ENABLE([ipv6],
1092 AS_HELP_STRING([--disable-ipv6],[Disable optional IPv6 support]))
1094 AS_IF([test "x$enable_ipv6" != "xno"], [HAVE_IPV6=1], [HAVE_IPV6=0])
1096 AS_IF([test "x$HAVE_IPV6" = "x1"], AC_DEFINE([HAVE_IPV6], 1, [Define this to enable IPv6 connection support]))
1098 #### OpenSSL support (optional) ####
1100 AC_ARG_ENABLE([openssl],
1101 AS_HELP_STRING([--disable-openssl],[Disable OpenSSL support (used for Airtunes/RAOP)]))
1103 AS_IF([test "x$enable_openssl" != "xno"],
1104 [PKG_CHECK_MODULES(OPENSSL, [ openssl > 0.9 ], HAVE_OPENSSL=1, HAVE_OPENSSL=0)],
1107 AS_IF([test "x$enable_openssl" = "xyes" && test "x$HAVE_OPENSSL" = "x0"],
1108 [AC_MSG_ERROR([*** OpenSSL support not found])])
1110 AM_CONDITIONAL([HAVE_OPENSSL], [test "x$HAVE_OPENSSL" = x1])
1111 AS_IF([test "x$HAVE_OPENSSL" = "x1"], AC_DEFINE([HAVE_OPENSSL], 1, [Have OpenSSL]))
1113 #### FFTW (optional) ####
1116 AS_HELP_STRING([--without-fftw],[Omit FFTW-using modules (equalizer)]))
1118 AS_IF([test "x$with_fftw" != "xno"],
1119 [PKG_CHECK_MODULES(FFTW, [ fftw3f ], HAVE_FFTW=1, HAVE_FFTW=0)],
1122 AS_IF([test "x$with_fftw" = "xyes" && test "x$HAVE_FFTW" = "x0"],
1123 [AC_MSG_ERROR([*** FFTW support not found])])
1125 AM_CONDITIONAL([HAVE_FFTW], [test "x$HAVE_FFTW" = "x1"])
1127 #### speex (optional) ####
1129 AC_ARG_WITH([speex],
1130 AS_HELP_STRING([--without-speex],[Omit speex (resampling, AEC)]))
1132 AS_IF([test "x$with_speex" != "xno"],
1133 [PKG_CHECK_MODULES(LIBSPEEX, [ speexdsp >= 1.2 ], HAVE_SPEEX=1, HAVE_SPEEX=0)],
1136 AS_IF([test "x$with_speex" = "xyes" && test "x$HAVE_SPEEX" = "x0"],
1137 [AC_MSG_ERROR([*** speex support not found])])
1139 AM_CONDITIONAL([HAVE_SPEEX], [test "x$HAVE_SPEEX" = "x1"])
1140 AS_IF([test "x$HAVE_SPEEX" = "x1"], AC_DEFINE([HAVE_SPEEX], 1, [Have speex]))
1142 #### soxr (optional) ####
1145 AS_HELP_STRING([--without-soxr],[Omit soxr (resampling)]))
1147 AS_IF([test "x$with_soxr" != "xno"],
1148 [PKG_CHECK_MODULES(LIBSOXR, [ soxr >= 0.1.1 ], HAVE_SOXR=1, HAVE_SOXR=0)],
1151 AS_IF([test "x$with_soxr" = "xyes" && test "x$HAVE_SOXR" = "x0"],
1152 [AC_MSG_ERROR([*** soxr support not found])])
1154 AM_CONDITIONAL([HAVE_SOXR], [test "x$HAVE_SOXR" = "x1"])
1155 AS_IF([test "x$HAVE_SOXR" = "x1"], AC_DEFINE([HAVE_SOXR], 1, [Have soxr]))
1157 #### Xen support (optional) ####
1159 AC_ARG_ENABLE([xen],
1160 AS_HELP_STRING([--disable-xen],[Disable optional Xen paravirtualized driver]))
1165 AS_IF([test "x$enable_xen" != "xno"],
1168 AC_CHECK_HEADER(xenctrl.h, [], [HAVE_XEN=0])
1169 AC_CHECK_HEADER(xs.h, [], [HAVE_XEN=0])
1170 AC_CHECK_LIB(xenctrl, xc_interface_open, [XEN_LIBS="$XEN_LIBS -lxenctrl"], [HAVE_XEN=0])
1171 AC_CHECK_LIB(xenstore, xs_domain_open, [XEN_LIBS="$XEN_LIBS -lxenstore"], [HAVE_XEN=0])
1175 AS_IF([test "x$enable_xen" = "xyes" && test "x$HAVE_XEN" = "x0"],
1176 [AC_MSG_ERROR([*** Xen development headers or libraries not found])])
1178 AC_SUBST(XEN_CFLAGS)
1180 AM_CONDITIONAL([HAVE_XEN], [test "x$HAVE_XEN" = x1])
1182 #### gcov support (optional) #####
1184 AC_ARG_ENABLE([gcov],
1185 AS_HELP_STRING([--enable-gcov],[Enable optional gcov coverage analysis]))
1190 AS_IF([test "x$enable_gcov" = "xyes"],
1193 GCOV_CFLAGS="$GCOV_CFLAGS -fprofile-arcs -ftest-coverage"
1194 GCOV_LIBS="$GCOV_LIBS -fprofile-arcs"
1198 AC_SUBST(GCOV_CFLAGS)
1200 AM_CONDITIONAL([HAVE_GCOV], [test "x$HAVE_GCOV" = x1])
1202 #### ORC (optional) ####
1206 #### systemd support (optional) ####
1208 AC_ARG_ENABLE([systemd-daemon],
1209 AS_HELP_STRING([--disable-systemd-daemon],[Disable optional systemd daemon (socket activation) support]))
1211 AC_ARG_ENABLE([systemd-login],
1212 AS_HELP_STRING([--disable-systemd-login],[Disable optional systemd login support]))
1214 AC_ARG_ENABLE([systemd-journal],
1215 AS_HELP_STRING([--disable-systemd-journal],[Disable optional systemd journal support]))
1217 # Newer systemd's combine their subcomponent libraries into one
1218 # If it exists, we should use it for the further checks
1220 AS_IF([test "x$enable_systemd_daemon" != "xno" || test "x$enable_systemd_login" != "xno" || test "x$enable_systemd_journal" != "xno"],
1221 [PKG_CHECK_MODULES(SYSTEMD, [ libsystemd ], HAVE_SYSTEMD=1, HAVE_SYSTEMD=0)],
1224 AS_IF([test "x$HAVE_SYSTEMD" = "x1"],
1226 HAVE_SYSTEMD_DAEMON=1
1227 HAVE_SYSTEMD_LOGIN=1
1228 HAVE_SYSTEMD_JOURNAL=1
1231 AC_ARG_WITH([systemduserunitdir],
1232 AS_HELP_STRING([--with-systemduserunitdir=DIR], [Directory for systemd user service files]),
1233 [], [with_systemduserunitdir=$($PKG_CONFIG --variable=systemduserunitdir systemd)])
1234 if test "x$with_systemduserunitdir" != xno; then
1235 AC_SUBST([systemduserunitdir], [$with_systemduserunitdir])
1238 #### systemd daemon support (optional) ####
1240 AS_IF([test "x$enable_systemd_daemon" != "xno"],
1241 [AS_IF([test "x$HAVE_SYSTEMD_DAEMON" != "x1"], [PKG_CHECK_MODULES(SYSTEMDDAEMON, [ libsystemd-daemon ], HAVE_SYSTEMD_DAEMON=1, HAVE_SYSTEMD_DAEMON=0)])],
1242 HAVE_SYSTEMD_DAEMON=0)
1244 AS_IF([test "x$enable_systemd_daemon" = "xyes" && test "x$HAVE_SYSTEMD_DAEMON" = "x0"],
1245 [AC_MSG_ERROR([*** Needed systemd daemon support not found])])
1247 AC_SUBST(HAVE_SYSTEMD_DAEMON)
1248 AM_CONDITIONAL([HAVE_SYSTEMD_DAEMON], [test "x$HAVE_SYSTEMD_DAEMON" = x1])
1249 AS_IF([test "x$HAVE_SYSTEMD_DAEMON" = "x1"], AC_DEFINE([HAVE_SYSTEMD_DAEMON], 1, [Have SYSTEMDDAEMON?]))
1251 #### systemd login support (optional) ####
1253 AS_IF([test "x$enable_systemd_login" != "xno"],
1254 [AS_IF([test "x$HAVE_SYSTEMD_LOGIN" != "x1"], [PKG_CHECK_MODULES(SYSTEMDLOGIN, [ libsystemd-login ], HAVE_SYSTEMD_LOGIN=1, HAVE_SYSTEMD_LOGIN=0)])],
1255 HAVE_SYSTEMD_LOGIN=0)
1257 AS_IF([test "x$enable_systemd_login" = "xyes" && test "x$HAVE_SYSTEMD_LOGIN" = "x0"],
1258 [AC_MSG_ERROR([*** Needed systemd login support not found])])
1260 AC_SUBST(HAVE_SYSTEMD_LOGIN)
1261 AM_CONDITIONAL([HAVE_SYSTEMD_LOGIN], [test "x$HAVE_SYSTEMD_LOGIN" = x1])
1262 AS_IF([test "x$HAVE_SYSTEMD_LOGIN" = "x1"], AC_DEFINE([HAVE_SYSTEMD_LOGIN], 1, [Have SYSTEMDLOGIN?]))
1264 #### systemd journal support (optional) ####
1266 AS_IF([test "x$enable_systemd_journal" != "xno"],
1267 [AS_IF([test "x$HAVE_SYSTEMD_JOURNAL" != "x1"], [PKG_CHECK_MODULES(SYSTEMDJOURNAL, [ libsystemd-journal ], HAVE_SYSTEMD_JOURNAL=1, HAVE_SYSTEMD_JOURNAL=0)])],
1268 HAVE_SYSTEMD_JOURNAL=0)
1270 AS_IF([test "x$enable_systemd_journal" = "xyes" && test "x$HAVE_SYSTEMD_JOURNAL" = "x0"],
1271 [AC_MSG_ERROR([*** Needed systemd journal support not found])])
1273 AC_SUBST(HAVE_SYSTEMD_JOURNAL)
1274 AM_CONDITIONAL([HAVE_SYSTEMD_JOURNAL], [test "x$HAVE_SYSTEMD_JOURNAL" = x1])
1275 AS_IF([test "x$HAVE_SYSTEMD_JOURNAL" = "x1"], AC_DEFINE([HAVE_SYSTEMD_JOURNAL], 1, [Have SYSTEMDJOURNAL?]))
1277 #### Build and Install man pages ####
1279 AC_ARG_ENABLE([manpages],
1280 AS_HELP_STRING([--disable-manpages],[Disable building and installation of man pages]))
1282 AM_CONDITIONAL([BUILD_MANPAGES], [test "x$enable_manpages" != "xno"])
1284 #### PulseAudio system group & user #####
1286 AC_ARG_WITH(system_user, AS_HELP_STRING([--with-system-user=<user>],[User for running the PulseAudio daemon as a system-wide instance (pulse)]))
1287 if test -z "$with_system_user" ; then
1288 PA_SYSTEM_USER=pulse
1290 PA_SYSTEM_USER=$with_system_user
1292 AC_SUBST(PA_SYSTEM_USER)
1293 AC_DEFINE_UNQUOTED(PA_SYSTEM_USER,"$PA_SYSTEM_USER", [User for running the PulseAudio system daemon])
1295 AC_ARG_WITH(system_group,AS_HELP_STRING([--with-system-group=<group>],[Group for running the PulseAudio daemon as a system-wide instance (pulse)]))
1296 if test -z "$with_system_group" ; then
1297 PA_SYSTEM_GROUP=pulse
1299 PA_SYSTEM_GROUP=$with_system_group
1301 AC_SUBST(PA_SYSTEM_GROUP)
1302 AC_DEFINE_UNQUOTED(PA_SYSTEM_GROUP,"$PA_SYSTEM_GROUP", [Group for the PulseAudio system daemon])
1304 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)]))
1305 if test -z "$with_access_group" ; then
1306 PA_ACCESS_GROUP=pulse-access
1308 PA_ACCESS_GROUP=$with_access_group
1310 AC_SUBST(PA_ACCESS_GROUP)
1311 AC_DEFINE_UNQUOTED(PA_ACCESS_GROUP,"$PA_ACCESS_GROUP", [Access group])
1313 AC_ARG_ENABLE([per-user-esound-socket],
1314 AS_HELP_STRING([--disable-per-user-esound-socket],[Use global esound socket directory /tmp/.esd/socket.]))
1316 if test "x$enable_per_user_esound_socket" != "xno"; then
1317 USE_PER_USER_ESOUND_SOCKET=1
1318 AC_DEFINE([USE_PER_USER_ESOUND_SOCKET], [1], [Define this if you want per-user esound socket directories])
1320 USE_PER_USER_ESOUND_SOCKET=0
1323 #### PulseAudio system runtime dir ####
1325 PA_SYSTEM_RUNTIME_PATH="${localstatedir}/run/pulse"
1326 AX_DEFINE_DIR(PA_SYSTEM_RUNTIME_PATH, PA_SYSTEM_RUNTIME_PATH, [System runtime dir])
1327 PA_SYSTEM_CONFIG_PATH="${localstatedir}/lib/pulse"
1328 AX_DEFINE_DIR(PA_SYSTEM_CONFIG_PATH, PA_SYSTEM_CONFIG_PATH, [System config dir])
1329 PA_SYSTEM_STATE_PATH="${localstatedir}/lib/pulse"
1330 AX_DEFINE_DIR(PA_SYSTEM_STATE_PATH, PA_SYSTEM_STATE_PATH, [System state dir])
1332 PA_BINARY=${bindir}/pulseaudio${EXEEXT}
1333 AX_DEFINE_DIR(PA_BINARY, PA_BINARY, [Location of pulseaudio binary])
1335 PACTL_BINARY=${bindir}/pactl${EXEEXT}
1336 AX_DEFINE_DIR(PACTL_BINARY, PACTL_BINARY, [Location of pactl binary])
1338 AC_SUBST(PA_SOEXT, [.so])
1339 AC_DEFINE(PA_SOEXT, [".so"], [Shared object extension])
1341 AC_SUBST(pulseconfdir, ["${sysconfdir}/pulse"])
1342 AX_DEFINE_DIR(PA_DEFAULT_CONFIG_DIR, pulseconfdir, [Location of configuration files])
1344 #### Mac OSX specific stuff #####
1346 AC_ARG_ENABLE(mac-universal,
1347 AS_HELP_STRING([--enable-mac-universal], [Build Mac universal binaries]),
1348 enable_mac_universal=$enableval, enable_mac_universal="no")
1350 AC_ARG_WITH(mac-version-min,
1351 AS_HELP_STRING([--with-mac-version-min=<version>], [Defines the earliest version of MacOS X that the executables will run on.]),
1352 mac_version_min=$withval, mac_version_min="10.5")
1354 AC_ARG_WITH(mac-sysroot,
1355 AS_HELP_STRING([--with-mac-sysroot=<path>], [SDK basedir to use as the logical root directory for headers and libraries.]),
1356 mac_sysroot=$withval, mac_sysroot="/Developer/SDKs/MacOSX10.5.sdk")
1358 if test "x$os_is_darwin" = "x1" ; then
1359 LDFLAGS="$LDFLAGS -isysroot $mac_sysroot -mmacosx-version-min=$mac_version_min"
1360 CFLAGS="$CFLAGS -isysroot $mac_sysroot -mmacosx-version-min=$mac_version_min"
1362 if test "x$enable_mac_universal" = "xyes" ; then
1363 mac_arches="-arch i386 -arch x86_64"
1364 LDFLAGS="$LDFLAGS $mac_arches"
1365 CFLAGS="$CFLAGS $mac_arches"
1369 AC_ARG_ENABLE([webrtc-aec],
1370 AS_HELP_STRING([--enable-webrtc-aec], [Enable the optional WebRTC-based echo canceller]))
1372 AS_IF([test "x$enable_webrtc_aec" != "xno"],
1373 [PKG_CHECK_MODULES(WEBRTC, [ webrtc-audio-processing ], [HAVE_WEBRTC=1], [HAVE_WEBRTC=0])],
1376 AS_IF([test "x$enable_webrtc_aec" = "xyes" && test "x$HAVE_WEBRTC" = "x0"],
1377 [AC_MSG_ERROR([*** webrtc-audio-processing library not found])])
1379 AM_CONDITIONAL([HAVE_WEBRTC], [test "x$HAVE_WEBRTC" = "x1"])
1381 AC_ARG_ENABLE([adrian-aec],
1382 AS_HELP_STRING([--enable-adrian-aec], [Enable Adrian's optional echo canceller]))
1383 AS_IF([test "x$enable_adrian_aec" != "xno"],
1385 AM_CONDITIONAL([HAVE_ADRIAN_EC], [test "x$HAVE_ADRIAN_EC" = "x1"])
1389 ###################################
1391 ###################################
1393 AC_DEFINE_UNQUOTED(PA_CFLAGS, "$CFLAGS", [The CFLAGS used during compilation])
1395 # Check whether to build tests by default (as compile-test) or not
1396 AC_ARG_ENABLE([default-build-tests],
1397 AS_HELP_STRING([--disable-default-build-tests], [Build test programs only during make check]))
1398 AM_CONDITIONAL([BUILD_TESTS_DEFAULT], [test "x$enable_default_build_tests" != "xno"])
1400 AC_ARG_ENABLE([legacy-database-entry-format],
1401 AS_HELP_STRING([--disable-legacy-database-entry-format], [Try to load legacy (< 1.0) database files (card, device and volume restore).]))
1402 if test "x$enable_legacy_database_entry_format" != "xno" ; then
1403 AC_DEFINE(ENABLE_LEGACY_DATABASE_ENTRY_FORMAT, [1], [Legacy database entry format])
1406 AC_ARG_ENABLE([static-bins],
1407 AS_HELP_STRING([--enable-static-bins],[Statically link executables.]))
1408 AM_CONDITIONAL([STATIC_BINS], [test "x$enable_static_bins" = "xyes"])
1412 AS_HELP_STRING([--with-preopen-mods],[Modules to preopen in daemon (default: all).]),
1413 [PREOPEN_MODS=$withval], [PREOPEN_MODS="all"])
1414 AM_CONDITIONAL([PREOPEN_MODS], [test "x$PREOPEN_MODS" != "xall"])
1415 if test "x$PREOPEN_MODS" != "xall" ; then
1417 for mod in $PREOPEN_MODS; do
1418 tmpLIBS="$tmpLIBS module-$mod.la"
1420 PREOPEN_MODS="$tmpLIBS"
1421 AC_SUBST(PREOPEN_MODS)
1426 AS_HELP_STRING([--with-module-dir],[Directory where to install the modules to (defaults to ${libdir}/pulse-${PA_MAJORMINOR}/modules]),
1427 [modlibexecdir=$withval], [modlibexecdir="${libdir}/pulse-${PA_MAJORMINOR}/modules"])
1429 AC_SUBST(modlibexecdir)
1430 AX_DEFINE_DIR(PA_DLSEARCHPATH, modlibexecdir, [Modules dir])
1434 AS_HELP_STRING([--with-udev-rules-dir],[Directory where to install udev rules to (defaults to /lib/udev/rules.d)]),
1435 [udevrulesdir=$withval], [udevrulesdir="/lib/udev/rules.d"])
1437 AC_SUBST(udevrulesdir)
1439 AC_ARG_WITH([bash-completion-dir],
1440 AS_HELP_STRING([--with-bash-completion-dir=DIR], [Directory for bash completion files]),
1441 [bashcompletiondir=$withval], [bashcompletiondir=$($PKG_CONFIG --variable=completionsdir bash-completion)])
1442 if test "x$bashcompletionsdir" = "x"; then
1443 bashcompletiondir="${datadir}/bash-completion/completions"
1446 AC_SUBST(bashcompletiondir)
1449 [zsh-completion-dir],
1450 AS_HELP_STRING([--with-zsh-completion-dir], [Zsh completions directory (defaults to ${datadir}/zsh/site-functions)]),
1451 [zshcompletiondir=$withval], [zshcompletiondir="${datadir}/zsh/site-functions"])
1453 AC_SUBST(zshcompletiondir)
1455 AC_ARG_ENABLE([force-preopen],
1456 AS_HELP_STRING([--enable-force-preopen],[Preopen modules, even when dlopen() is supported.]))
1458 if test "x$enable_force_preopen" = "xyes"; then
1464 AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
1472 libpulse-mainloop-glib.pc
1474 doxygen/doxygen.conf
1477 man/pulseaudio.1.xml
1479 man/pax11publish.1.xml
1483 man/pasuspender.1.xml
1485 man/pulse-daemon.conf.5.xml
1486 man/pulse-client.conf.5.xml
1487 man/default.pa.5.xml
1488 man/pulse-cli-syntax.5.xml
1489 man/start-pulseaudio-x11.1.xml
1492 AC_CONFIG_FILES([src/esdcompat:src/daemon/esdcompat.in], [chmod +x src/esdcompat])
1493 AC_CONFIG_FILES([src/start-pulseaudio-x11:src/daemon/start-pulseaudio-x11.in], [chmod +x src/start-pulseaudio-x11])
1494 AC_CONFIG_FILES([src/client.conf:src/pulse/client.conf.in])
1495 AC_CONFIG_FILES([src/daemon.conf:src/daemon/daemon.conf.in],
1496 [m4 src/daemon.conf > src/daemon.conf.gen && mv src/daemon.conf.gen src/daemon.conf])
1497 AC_CONFIG_FILES([src/default.pa:src/daemon/default.pa.in],
1498 [m4 src/default.pa > src/default.pa.gen && mv src/default.pa.gen src/default.pa])
1499 AC_CONFIG_FILES([src/system.pa:src/daemon/system.pa.in],
1500 [m4 src/system.pa > src/system.pa.gen && mv src/system.pa.gen src/system.pa])
1501 AS_IF([test "x$HAVE_SYSTEMD_DAEMON" = "x1"],
1503 AC_CONFIG_FILES([src/pulseaudio.service:src/daemon/systemd/user/pulseaudio.service.in])
1506 # CMake related ProjectConfig files
1508 AX_DEFINE_DIR(PA_LIBDIR, PA_LIBDIR, [PulseAudio library dir])
1509 PA_INCDIR="$includedir"
1510 AX_DEFINE_DIR(PA_INCDIR, PA_INCDIR, [PulseAudio include dir])
1512 AC_CONFIG_FILES([PulseAudioConfig.cmake:PulseAudioConfig.cmake.in],
1513 [m4 PulseAudioConfig.cmake > PulseAudioConfig.cmake.gen && mv PulseAudioConfig.cmake.gen PulseAudioConfig.cmake])
1514 AC_CONFIG_FILES([PulseAudioConfigVersion.cmake])
1518 # ==========================================================================
1520 AS_IF([test "x$HAVE_X11" = "x1"], ENABLE_X11=yes, ENABLE_X11=no)
1521 AS_IF([test "x$HAVE_OSS_OUTPUT" = "x1"], ENABLE_OSS_OUTPUT=yes, ENABLE_OSS_OUTPUT=no)
1522 AS_IF([test "x$HAVE_OSS_WRAPPER" = "x1"], ENABLE_OSS_WRAPPER=yes, ENABLE_OSS_WRAPPER=no)
1523 AS_IF([test "x$HAVE_ALSA" = "x1"], ENABLE_ALSA=yes, ENABLE_ALSA=no)
1524 AS_IF([test "x$HAVE_COREAUDIO" = "x1"], ENABLE_COREAUDIO=yes, ENABLE_COREAUDIO=no)
1525 AS_IF([test "x$HAVE_SOLARIS" = "x1"], ENABLE_SOLARIS=yes, ENABLE_SOLARIS=no)
1526 AS_IF([test "x$HAVE_WAVEOUT" = "x1"], ENABLE_WAVEOUT=yes, ENABLE_WAVEOUT=no)
1527 AS_IF([test "x$HAVE_GLIB20" = "x1"], ENABLE_GLIB20=yes, ENABLE_GLIB20=no)
1528 AS_IF([test "x$HAVE_GTK30" = "x1"], ENABLE_GTK30=yes, ENABLE_GTK30=no)
1529 AS_IF([test "x$HAVE_GCONF" = "x1"], ENABLE_GCONF=yes, ENABLE_GCONF=no)
1530 AS_IF([test "x$HAVE_AVAHI" = "x1"], ENABLE_AVAHI=yes, ENABLE_AVAHI=no)
1531 AS_IF([test "x$HAVE_JACK" = "x1"], ENABLE_JACK=yes, ENABLE_JACK=no)
1532 AS_IF([test "x$HAVE_LIBASYNCNS" = "x1"], ENABLE_LIBASYNCNS=yes, ENABLE_LIBASYNCNS=no)
1533 AS_IF([test "x$HAVE_LIRC" = "x1"], ENABLE_LIRC=yes, ENABLE_LIRC=no)
1534 AS_IF([test "x$HAVE_XEN" = "x1"], ENABLE_XEN=yes, ENABLE_XEN=no)
1535 AS_IF([test "x$HAVE_DBUS" = "x1"], ENABLE_DBUS=yes, ENABLE_DBUS=no)
1536 AS_IF([test "x$HAVE_UDEV" = "x1"], ENABLE_UDEV=yes, ENABLE_UDEV=no)
1537 AS_IF([test "x$HAVE_SYSTEMD_DAEMON" = "x1"], ENABLE_SYSTEMD_DAEMON=yes, ENABLE_SYSTEMD_DAEMON=no)
1538 AS_IF([test "x$HAVE_SYSTEMD_LOGIN" = "x1"], ENABLE_SYSTEMD_LOGIN=yes, ENABLE_SYSTEMD_LOGIN=no)
1539 AS_IF([test "x$HAVE_SYSTEMD_JOURNAL" = "x1"], ENABLE_SYSTEMD_JOURNAL=yes, ENABLE_SYSTEMD_JOURNAL=no)
1540 AS_IF([test "x$HAVE_BLUEZ_4" = "x1"], ENABLE_BLUEZ_4=yes, ENABLE_BLUEZ_4=no)
1541 AS_IF([test "x$HAVE_BLUEZ_5" = "x1"], ENABLE_BLUEZ_5=yes, ENABLE_BLUEZ_5=no)
1542 AS_IF([test "x$HAVE_BLUEZ_5_OFONO_HEADSET" = "x1"], ENABLE_BLUEZ_5_OFONO_HEADSET=yes, ENABLE_BLUEZ_5_OFONO_HEADSET=no)
1543 AS_IF([test "x$HAVE_BLUEZ_5_NATIVE_HEADSET" = "x1"], ENABLE_BLUEZ_5_NATIVE_HEADSET=yes, ENABLE_BLUEZ_5_NATIVE_HEADSET=no)
1544 AS_IF([test "x$HAVE_HAL_COMPAT" = "x1"], ENABLE_HAL_COMPAT=yes, ENABLE_HAL_COMPAT=no)
1545 AS_IF([test "x$HAVE_TCPWRAP" = "x1"], ENABLE_TCPWRAP=yes, ENABLE_TCPWRAP=no)
1546 AS_IF([test "x$HAVE_LIBSAMPLERATE" = "x1"], ENABLE_LIBSAMPLERATE="yes (DEPRECATED)", ENABLE_LIBSAMPLERATE=no)
1547 AS_IF([test "x$HAVE_IPV6" = "x1"], ENABLE_IPV6=yes, ENABLE_IPV6=no)
1548 AS_IF([test "x$HAVE_OPENSSL" = "x1"], ENABLE_OPENSSL=yes, ENABLE_OPENSSL=no)
1549 AS_IF([test "x$HAVE_FFTW" = "x1"], ENABLE_FFTW=yes, ENABLE_FFTW=no)
1550 AS_IF([test "x$HAVE_ORC" = "xyes"], ENABLE_ORC=yes, ENABLE_ORC=no)
1551 AS_IF([test "x$HAVE_ADRIAN_EC" = "x1"], ENABLE_ADRIAN_EC=yes, ENABLE_ADRIAN_EC=no)
1552 AS_IF([test "x$HAVE_SPEEX" = "x1"], ENABLE_SPEEX=yes, ENABLE_SPEEX=no)
1553 AS_IF([test "x$HAVE_SOXR" = "x1"], ENABLE_SOXR=yes, ENABLE_SOXR=no)
1554 AS_IF([test "x$HAVE_WEBRTC" = "x1"], ENABLE_WEBRTC=yes, ENABLE_WEBRTC=no)
1555 AS_IF([test "x$HAVE_TDB" = "x1"], ENABLE_TDB=yes, ENABLE_TDB=no)
1556 AS_IF([test "x$HAVE_GDBM" = "x1"], ENABLE_GDBM=yes, ENABLE_GDBM=no)
1557 AS_IF([test "x$HAVE_SIMPLEDB" = "x1"], ENABLE_SIMPLEDB=yes, ENABLE_SIMPLEDB=no)
1558 AS_IF([test "x$HAVE_ESOUND" = "x1"], ENABLE_ESOUND=yes, ENABLE_ESOUND=no)
1559 AS_IF([test "x$HAVE_ESOUND" = "x1" -a "x$USE_PER_USER_ESOUND_SOCKET" = "x1"], ENABLE_PER_USER_ESOUND_SOCKET=yes, ENABLE_PER_USER_ESOUND_SOCKET=no)
1560 AS_IF([test "x$HAVE_GCOV" = "x1"], ENABLE_GCOV=yes, ENABLE_GCOV=no)
1561 AS_IF([test "x$HAVE_LIBCHECK" = "x1"], ENABLE_TESTS=yes, ENABLE_TESTS=no)
1562 AS_IF([test "x$enable_legacy_database_entry_format" != "xno"], ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=yes, ENABLE_LEGACY_DATABASE_ENTRY_FORMAT=no)
1565 ---{ $PACKAGE_NAME $VERSION }---
1568 sysconfdir: ${sysconfdir}
1569 localstatedir: ${localstatedir}
1570 modlibexecdir: ${modlibexecdir}
1571 System Runtime Path: ${PA_SYSTEM_RUNTIME_PATH}
1572 System State Path: ${PA_SYSTEM_STATE_PATH}
1573 System Config Path: ${PA_SYSTEM_CONFIG_PATH}
1574 Zsh completions directory: ${zshcompletiondir}
1575 Bash completions directory: ${bashcompletiondir}
1578 CPPFLAGS: ${CPPFLAGS}
1581 Enable X11: ${ENABLE_X11}
1582 Enable OSS Output: ${ENABLE_OSS_OUTPUT}
1583 Enable OSS Wrapper: ${ENABLE_OSS_WRAPPER}
1584 Enable EsounD: ${ENABLE_ESOUND}
1585 Enable Alsa: ${ENABLE_ALSA}
1586 Enable CoreAudio: ${ENABLE_COREAUDIO}
1587 Enable Solaris: ${ENABLE_SOLARIS}
1588 Enable WaveOut: ${ENABLE_WAVEOUT}
1589 Enable GLib 2.0: ${ENABLE_GLIB20}
1590 Enable Gtk+ 3.0: ${ENABLE_GTK30}
1591 Enable GConf: ${ENABLE_GCONF}
1592 Enable Avahi: ${ENABLE_AVAHI}
1593 Enable Jack: ${ENABLE_JACK}
1594 Enable Async DNS: ${ENABLE_LIBASYNCNS}
1595 Enable LIRC: ${ENABLE_LIRC}
1596 Enable Xen PV driver: ${ENABLE_XEN}
1597 Enable D-Bus: ${ENABLE_DBUS}
1598 Enable BlueZ 4: ${ENABLE_BLUEZ_4}
1599 Enable BlueZ 5: ${ENABLE_BLUEZ_5}
1600 Enable ofono headsets: ${ENABLE_BLUEZ_5_OFONO_HEADSET}
1601 Enable native headsets: ${ENABLE_BLUEZ_5_NATIVE_HEADSET}
1602 Enable udev: ${ENABLE_UDEV}
1603 Enable HAL->udev compat: ${ENABLE_HAL_COMPAT}
1605 Daemon (Socket Activation): ${ENABLE_SYSTEMD_DAEMON}
1606 Login (Session Tracking): ${ENABLE_SYSTEMD_LOGIN}
1607 Journal (Logging): ${ENABLE_SYSTEMD_JOURNAL}
1608 Enable TCP Wrappers: ${ENABLE_TCPWRAP}
1609 Enable libsamplerate: ${ENABLE_LIBSAMPLERATE}
1610 Enable IPv6: ${ENABLE_IPV6}
1611 Enable OpenSSL (for Airtunes): ${ENABLE_OPENSSL}
1612 Enable fftw: ${ENABLE_FFTW}
1613 Enable orc: ${ENABLE_ORC}
1614 Enable Adrian echo canceller: ${ENABLE_ADRIAN_EC}
1615 Enable speex (resampler, AEC): ${ENABLE_SPEEX}
1616 Enable soxr (resampler): ${ENABLE_SOXR}
1617 Enable WebRTC echo canceller: ${ENABLE_WEBRTC}
1618 Enable gcov coverage: ${ENABLE_GCOV}
1619 Enable unit tests: ${ENABLE_TESTS}
1622 gdbm: ${ENABLE_GDBM}
1623 simple database: ${ENABLE_SIMPLEDB}
1625 System User: ${PA_SYSTEM_USER}
1626 System Group: ${PA_SYSTEM_GROUP}
1627 Access Group: ${PA_ACCESS_GROUP}
1628 Enable per-user EsounD socket: ${ENABLE_PER_USER_ESOUND_SOCKET}
1629 Force preopen: ${FORCE_PREOPEN}
1630 Preopened modules: ${PREOPEN_MODS}
1632 Legacy Database Entry Support: ${ENABLE_LEGACY_DATABASE_ENTRY_FORMAT}
1635 if test "${ENABLE_SPEEX}" = "no" && test "${ENABLE_WEBRTC}" = "no" && test "${ENABLE_ADRIAN_EC}" = "no" ; then
1636 AC_MSG_ERROR([At least one echo canceller implementation must be available.])
1639 if test "${ENABLE_DBUS}" = "no" && test "x$os_is_win32" != "x1" ; then
1641 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1642 You do not have D-Bus support enabled. It is strongly recommended
1643 that you enable D-Bus support if your platform supports it.
1644 Many parts of PulseAudio use D-Bus, from ConsoleKit interaction
1645 to the Device Reservation Protocol to speak to JACK, Bluetooth
1646 support and even a native control protocol for communicating and
1647 controling the PulseAudio daemon itself.
1648 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1652 if test "${ENABLE_UDEV}" = "no" && test "x$os_is_win32" != "x1" ; then
1654 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1655 You do not have udev support enabled. It is strongly recommended
1656 that you enable udev support if your platform supports it as it is
1657 the primary method used to detect hardware audio devices (on Linux)
1658 and is thus a critical part of PulseAudio on that platform.
1659 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1663 if test "${ENABLE_SPEEX}" = "no" && test "x$os_is_win32" != "x1" ; then
1665 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====
1666 You do not have speex support enabled. It is strongly recommended
1667 that you enable speex support if your platform supports it as it is
1668 the primary method used for audio resampling and is thus a critical
1669 part of PulseAudio on that platform.
1670 ===== WARNING WARNING WARNING WARNING WARNING WARNING WARNING =====