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