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