2 # Process this file with autoconf to produce a configure script.
5 AC_INIT([xbmc], [13.1.0], [http://issues.xbmc.org])
6 AC_CONFIG_HEADERS([xbmc/config.h])
8 m4_include([m4/ax_prog_cc_for_build.m4])
9 m4_include([m4/ax_prog_cxx_for_build.m4])
10 m4_include([m4/ax_python_devel.m4])
11 m4_include([m4/xbmc_arch.m4])
13 AC_CONFIG_AUX_DIR([build-aux])
14 AM_INIT_AUTOMAKE([foreign])
18 echo "$@" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
21 # workaround for autotools that don't set this
22 abs_top_srcdir=${abs_top_srcdir=$(cd $srcdir; pwd)}
24 # check for enabling additional players
25 AC_DEFUN([XB_ADD_PLAYER],
27 AC_MSG_CHECKING([for $2])
31 AC_DEFINE([HAS_$1], 1, [using $2])
32 AC_MSG_RESULT([enabling $2])
35 AC_MSG_RESULT([$2 is not enabled])
39 # check for enabling additional codecs
40 AC_DEFUN([XB_ADD_CODEC],
42 AC_MSG_CHECKING([for $2])
47 AC_DEFINE([HAS_$1], 1, [using $2])
48 AC_MSG_RESULT([enabling $2])
51 AC_MSG_RESULT([$2 is not enabled])
55 # check for library basenames
56 AC_DEFUN([XB_FIND_SONAME],
58 if echo "$host" | grep -q freebsd ; then
59 AC_MSG_CHECKING([for lib$2 soname])
60 $1_SONAME=[`ldconfig -r | sed -n "s;.* \(/.*lib$2\.so.*\)$;\1;p" | head -n 1`]
61 if test x$$1_SONAME != x ; then
62 $1_SONAME=[`basename $$1_SONAME`]
64 elif [[ "$host_vendor" != "apple" ]]; then
65 AC_MSG_CHECKING([for lib$2 soname])
66 $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-M 2>/dev/null | grep "^LOAD.*$2" | awk '{V=2; print $V}')
67 if [[ -z $$1_FILENAME ]]; then
68 #try gold linker syntax
69 $1_FILENAME=$($CC -nostdlib -o /dev/null $LDFLAGS -l$2 -Wl,-t 3>&1 1>&2 2>&3 | grep "lib$2")
71 if [[ ! -z $$1_FILENAME ]]; then
72 $1_SONAME=$($OBJDUMP -p $$1_FILENAME | grep "SONAME.*$2" | awk '{V=2; print $V}')
75 AC_MSG_CHECKING([for lib$2 dylib])
76 gcc_lib_path=[`$CC -print-search-dirs 2>/dev/null | fgrep libraries: | sed 's/[^=]*=\(.*\)/\1/' | sed 's/:/ /g'`]
77 env_lib_path=[`echo $LDFLAGS | sed 's/-L[ ]*//g'`]
78 if test "$cross_compiling" = yes; then
81 host_lib_path="/usr/lib /usr/local/lib"
83 for path in $gcc_lib_path $env_lib_path $host_lib_path; do
84 lib=[`ls -- $path/lib$2.dylib 2>/dev/null`]
85 if test x$lib != x; then
86 # we want the path/name that is embedded in the dylib
87 $1_FILENAME=[`otool -L $lib | grep -v lib$2.dylib | grep lib$2 | awk '{V=1; print $V}'`]
88 $1_SONAME=[`basename $$1_FILENAME`]
92 if [[ -z "$$1_SONAME" ]]; then
94 if test -z "$3" || test "x${$3}" = "xyes"; then
95 AC_MSG_ERROR([Unable to determine soname of lib$2 library])
97 AC_MSG_WARN([Unable to determine soname of lib$2 library])
99 AC_MSG_WARN([lib$2 support disabled])
102 AC_MSG_RESULT([$$1_SONAME])
107 # Function to push and pop libs and includes for a command
108 AC_DEFUN([XB_PUSH_FLAGS], [
110 SAVE_INCLUDES="$INCLUDES"
115 INCLUDES="$SAVE_INCLUDES"
118 # General message strings
119 configure_debug="ERROR: this is a configure debug statement"
120 missing_library="Could not find a required library. Please see the README for your platform."
121 missing_headers="Could not find some required headers. Please see the README for your platform."
122 missing_program="Could not find a required program. Please see the README for your platform."
123 xrandr_not_found="== Could not find libXRandR. SDL will be used for resolution support. =="
124 xrandr_disabled="== XRandR support disabled. SDL will be used for resolution support. =="
125 waveform_enabled="== WAVEFORM enabled =="
126 waveform_disabled="== WAVEFORM disabled =="
127 spectrum_enabled="== SPECTRUM enabled =="
128 spectrum_disabled="== SPECTRUM disabled =="
129 goom_enabled="== GOOM enabled. =="
130 goom_disabled="== GOOM disabled. =="
131 alsa_disabled="== ALSA support disabled. =="
132 rsxs_enabled="== RSXS enabled. =="
133 rsxs_disabled="== RSXS disabled. =="
134 fishbmc_enabled="== FishBMC enabled. =="
135 fishbmc_disabled="== FishBMC disabled. =="
136 projectm_enabled="== ProjectM enabled. =="
137 projectm_disabled="== ProjectM disabled. =="
138 wayland_enabled="== Wayland enabled. =="
139 wayland_disabled="== Wayland disabled. =="
140 x11_enabled="== X11 enabled. =="
141 x11_disabled="== X11 disabled. =="
142 pulse_not_found="== Could not find libpulse. PulseAudio support disabled. =="
143 pulse_disabled="== PulseAudio support disabled. =="
144 dvdcss_enabled="== DVDCSS support enabled. =="
145 dvdcss_disabled="== DVDCSS support disabled. =="
146 hal_not_found="== Could not find hal. HAL support disabled. =="
147 halstorage_not_found="== Could not find hal-storage. HAL support disabled. =="
148 hal_disabled="== HAL support disabled. =="
149 avahi_not_found="== Could not find libavahi-common or libavahi-client. Avahi support disabled. =="
150 avahi_disabled="== Avahi support disabled. =="
151 mdnsembedded_not_found="== Could not find mDNSEmbedded. Might prevent zeroconf support. =="
152 mdnsembedded_disabled="== mDNSEmbedded support disabled. =="
153 vdpau_not_found="== Could not find libvdpau. VDPAU support disabled. =="
154 vdpau_disabled="== VDPAU support manually disabled. =="
155 vaapi_not_found="== Could not find libva. VAAPI support disabled. =="
156 vaapi_disabled="== VAAPI support manually disabled. =="
157 crystalhd_not_found="== Could not find libcrystalhd. CrystalHD support disabled. =="
158 crystalhd_disabled="== CrystalHD support manually disabled. =="
159 vtbdecoder_enabled="== VTBDecoder support enabled. =="
160 vtbdecoder_disabled="== VTBDecoder support manually disabled. =="
161 openmax_disabled="== OpenMax support manually disabled. =="
162 openmax_not_found="== Could not find libnvomx. OpenMax support disabled. =="
163 ssh_not_found="== Could not find libssh. =="
164 ssh_disabled="== SSH SFTP disabled. =="
165 librtmp_not_found="== Could not find libRTMP. RTMP support disabled. =="
166 librtmp_disabled="== RTMP support disabled. =="
167 libnfs_not_found="== Could not find libnfs. NFS client support disabled. =="
168 libnfs_disabled="== NFS support disabled. =="
169 libafpclient_not_found="== Could not find libafpclient. AFP client support disabled. =="
170 libafpclient_disabled="== AFP support disabled. =="
171 libshairport_not_found="== Could not find libshairport. =="
172 libshairplay_not_found="== Could not find libshairplay. =="
173 samba_disabled="== SAMBA support disabled. =="
174 libplist_not_found="== Could not find libplist. AirPlay support disabled. =="
175 libplist_disabled="== AirPlay support disabled. =="
176 alsa_not_found="== Could not find ALSA. ALSA support disabled. =="
177 dbus_not_found="== Could not find DBUS. DBUS support disabled. =="
178 libcap_disabled="== Capabilities detection support disabled. =="
179 libcap_not_found="== Could not find libcap. Capabilities detection support disabled. =="
180 gtest_enabled="== Google Test Framework will be configured. =="
181 gtest_disabled="== Google Test Framework will not be configured. =="
183 libudev_not_found="== Could not find libudev. Will use polling to check for device changes. =="
184 libudev_disabled="== udev support disabled. Will use polling to check for device changes. =="
185 libusb_not_found="== Could not find libusb. Plug and play USB device support will not be available. =="
186 libusb_disabled="== libusb disabled. Plug and play USB device support will not be available. =="
187 libusb_disabled_udev_found="== libusb disabled. =="
188 libcec_enabled="== libcec enabled. =="
189 libcec_disabled="== libcec disabled. CEC adapter support will not be available. =="
191 # External library message strings
192 external_libraries_enabled="== Use of all supported external libraries enabled. =="
193 external_libraries_disabled="== Use of all supported external libraries disabled. =="
194 dashes="------------------------"
195 final_message="\n XBMC Configuration:"
196 final_message="\n$dashes$final_message\n$dashes"
198 AC_ARG_ENABLE([shared-lib],
199 [AS_HELP_STRING([--enable-shared-lib],
200 [build libxbmc. helpful for tests (default is no)])],
201 [build_shared_lib=$enableval],
202 [build_shared_lib=no])
204 AC_ARG_ENABLE([debug],
205 [AS_HELP_STRING([--enable-debug],
206 [enable debugging information (default is yes)])],
207 [use_debug=$enableval],
211 [AS_HELP_STRING([--with-arch],
212 [build with given arch passing to internal ffmpeg (default is no, needed for crosscompiling)])],
216 AC_ARG_WITH([platform],
217 [AS_HELP_STRING([--with-platform],
218 [use a pre-configured config for common arm boards])],
219 [use_platform=$withval],
223 [AS_HELP_STRING([--with-cpu],
224 [build with given cpu passing to ffmpeg (default is no)])],
228 AC_ARG_ENABLE([neon],
229 [AS_HELP_STRING([--enable-neon],
230 [enable neon passing to ffmpeg (default is no)])],
231 [use_neon=$enableval],
234 AC_ARG_ENABLE([optimizations],
235 [AS_HELP_STRING([--enable-optimizations],
236 [enable optimization (default is yes)])],
237 [use_optimizations=$enableval],
238 [use_optimizations=yes])
241 [AS_HELP_STRING([--enable-gl],
242 [enable OpenGL rendering (default is yes)])],
246 AC_ARG_ENABLE([gles],
247 [AS_HELP_STRING([--enable-gles],
248 [enable OpenGLES rendering (default is no)])],
249 [use_gles=$enableval],
253 [AS_HELP_STRING([--enable-sdl],
254 [enable SDL (default is auto)])],
255 [use_sdl=$enableval],
258 AC_ARG_ENABLE([vdpau],
259 [AS_HELP_STRING([--enable-vdpau],
260 [enable VDPAU decoding (default is auto)])],
261 [use_vdpau=$enableval],
264 AC_ARG_ENABLE([vaapi],
265 [AS_HELP_STRING([--enable-vaapi],
266 [enable VAAPI decoding (default is auto)])],
267 [use_vaapi=$enableval],
270 AC_ARG_ENABLE([crystalhd],
271 [AS_HELP_STRING([--enable-crystalhd],
272 [enable CrystalHD decoding (default is auto)])],
273 [use_crystalhd=$enableval],
274 [use_crystalhd=auto])
276 AC_ARG_ENABLE([vtbdecoder],
277 [AS_HELP_STRING([--enable-vtbdecoder],
278 [enable VTBDecoder decoding (default is auto)])],
279 [use_vtbdecoder=$enableval],
280 [use_vtbdecoder=auto])
282 AC_ARG_ENABLE([openmax],
283 [AS_HELP_STRING([--enable-openmax],
284 [enable OpenMax decoding (default is auto, requires OpenGLES)])],
285 [use_openmax=$enableval],
288 AC_ARG_ENABLE([tegra],
289 [AS_HELP_STRING([--enable-tegra],
290 [enable Tegra2 arm (default is no)])],
291 [use_tegra=$enableval],
294 AC_ARG_ENABLE([profiling],
295 [AS_HELP_STRING([--enable-profiling],
296 [enable gprof profiling (default is no)])],
297 [use_profiling=$enableval],
300 AC_ARG_ENABLE([joystick],
301 [AS_HELP_STRING([--enable-joystick],
302 [enable SDL joystick support (default is yes)])],
303 [use_joystick=$enableval],
306 AC_ARG_ENABLE([xrandr],
307 [AS_HELP_STRING([--enable-xrandr],
308 [enable XRandR support (default is yes)])],
309 [use_xrandr=$enableval],
312 AC_ARG_ENABLE([waveform],
313 [AS_HELP_STRING([--enable-waveform],
314 [enable Waveform visualisation (default is yes)])],
315 [use_waveform=$enableval],
318 AC_ARG_ENABLE([spectrum],
319 [AS_HELP_STRING([--enable-spectrum],
320 [enable Spectrum visualisation (default is yes)])],
321 [use_spectrum=$enableval],
324 AC_ARG_ENABLE([goom],
325 [AS_HELP_STRING([--enable-goom],
326 [enable GOOM visualisation (default is no)])],
327 [use_goom=$enableval],
330 AC_ARG_ENABLE([rsxs],
331 [AS_HELP_STRING([--enable-rsxs],
332 [enable really slick X screensavers (default is yes)])],
333 [use_rsxs=$enableval],
336 AC_ARG_ENABLE([fishbmc],
337 [AS_HELP_STRING([--enable-fishbmc],
338 [enable FishBMC visualisation (default is yes)])],
339 [use_fishbmc=$enableval],
342 AC_ARG_ENABLE([projectm],
343 [AS_HELP_STRING([--enable-projectm],
344 [enable ProjectM visualisation (default is yes)])],
345 [use_projectm=$enableval],
348 AC_ARG_ENABLE([wayland],
349 [AS_HELP_STRING([--enable-wayland],
350 [enable wayland (default is no) 'Linux Only'])],
351 [use_wayland=$enableval],
355 [AS_HELP_STRING([--enable-x11],
356 [enable x11 (default is yes) 'Linux Only'])],
357 [use_x11=$enableval],
360 AC_ARG_ENABLE([ccache],
361 [AS_HELP_STRING([--enable-ccache],
362 [enable building with ccache feature (default is auto)])],
363 [use_ccache=$enableval],
366 AC_ARG_ENABLE([alsa],
367 [AS_HELP_STRING([--disable-alsa],
368 [disable ALSA support (only for linux/freebsd)])],
369 [use_alsa=$enableval],
372 AC_ARG_ENABLE([pulse],
373 [AS_HELP_STRING([--enable-pulse],
374 [enable PulseAudio support (default is auto)])],
375 [use_pulse=$enableval],
379 [AS_HELP_STRING([--disable-ssh],
380 [disable SSH SFTP support (default is enabled)])],
381 [use_ssh=$enableval],
384 AC_ARG_ENABLE([rtmp],
385 [AS_HELP_STRING([--enable-rtmp],
386 [enable RTMP support via librtmp (default is auto)])],
387 [use_librtmp=$enableval],
390 AC_ARG_ENABLE([samba],
391 [AS_HELP_STRING([--disable-samba],
392 [disable SAMBA support (default is enabled)])],
393 [use_samba=$enableval],
397 [AS_HELP_STRING([--enable-nfs],
398 [enable NFS support via libnfs (default is auto)])],
399 [use_libnfs=$enableval],
402 AC_ARG_ENABLE([afpclient],
403 [AS_HELP_STRING([--enable-afpclient],
404 [enable AFP support via libafpclient (default is auto)])],
405 [use_libafpclient=$enableval],
406 [use_libafpclient=auto])
408 AC_ARG_ENABLE([airplay],
409 [AS_HELP_STRING([--enable-airplay],
410 [enable AirPlay support(default is auto)])],
411 [use_airplay=$enableval],
414 AC_ARG_ENABLE([airtunes],
415 [AS_HELP_STRING([--enable-airtunes],
416 [enable AirTunes support(default is auto)])],
417 [use_airtunes=$enableval],
420 AC_ARG_ENABLE([upnp],
421 [AS_HELP_STRING([--disable-upnp],
422 [disable UPnP support (default is enabled)])],
423 [use_upnp=$enableval],
426 AC_ARG_ENABLE([ffmpeg_libvorbis],
427 [AS_HELP_STRING([--enable-ffmpeg-libvorbis],
428 [enable FFmpeg vorbis encoding (default is no)])],
429 [use_ffmpeg_libvorbis=$enableval],
430 [use_ffmpeg_libvorbis=no])
432 AC_ARG_ENABLE([dvdcss],
433 [AS_HELP_STRING([--enable-dvdcss],
434 [enable DVDCSS support (default is yes)])],
435 [use_dvdcss=$enableval],
439 [AS_HELP_STRING([--enable-mid],
440 [enable MID support (default is no)])],
441 [use_mid=$enableval],
445 [AS_HELP_STRING([--disable-hal],
446 [disable HAL support (default is enabled if hal and hal-storage is found)])],
447 [use_hal=$enableval],
450 AC_ARG_ENABLE([avahi],
451 [AS_HELP_STRING([--disable-avahi],
452 [disable Avahi support (default is enabled if libavahi-common and libavahi-client is found)])],
453 [use_avahi=$enableval],
456 AC_ARG_ENABLE([mdnsembedded],
457 [AS_HELP_STRING([--disable-mdnsembedded],
458 [disable mDNSEmbedded support (default is auto)])],
459 [use_mdnsembedded=$enableval],
460 [use_mdnsembedded=auto])
462 AC_ARG_ENABLE([non-free],
463 [AS_HELP_STRING([--disable-non-free],
464 [disable componentents with non-compliant licenses])],
465 [use_nonfree=$enableval],
468 AC_ARG_ENABLE([asap-codec],
469 [AS_HELP_STRING([--enable-asap-codec],
470 [enable ASAP ADPCM support])],
471 [use_asap=$enableval],
474 AC_ARG_ENABLE([mysql],
475 [AS_HELP_STRING([--disable-mysql],
477 [use_mysql=$enableval],
480 AC_ARG_ENABLE([webserver],
481 [AS_HELP_STRING([--disable-webserver],
482 [disable webserver])],
483 [use_webserver=$enableval],
486 AC_ARG_ENABLE([optical-drive],
487 [AS_HELP_STRING([--disable-optical-drive],
488 [disable optical drive])],
489 [use_optical_drive=$enableval],
490 [use_optical_drive=yes])
492 AC_ARG_ENABLE([libbluray],
493 [AS_HELP_STRING([--enable-libbluray],
494 [enable libbluray support])],
495 [use_libbluray=$enableval],
496 [use_libbluray=auto])
498 AC_ARG_ENABLE([texturepacker],
499 [AS_HELP_STRING([--enable-texturepacker],
500 [enable texturepacker support (default is yes)])],
501 [use_texturepacker=$enableval],
502 [use_texturepacker=auto])
504 AC_ARG_WITH([lirc-device],
505 [AS_HELP_STRING([--with-lirc-device=file],
506 [specify the default LIRC device (default is /dev/lircd)])],
507 [lirc_device=$withval],
508 [lirc_device=/dev/lircd])
509 AC_DEFINE_UNQUOTED([LIRC_DEVICE], ["$lirc_device"], [Default LIRC device])
511 AC_ARG_ENABLE([udev],
512 [AS_HELP_STRING([--enable-udev],
513 [enable udev support (default is auto)])],
514 [use_libudev=$enableval],
517 AC_ARG_ENABLE([libusb],
518 [AS_HELP_STRING([--enable-libusb],
519 [enable libusb support (default is auto)])],
520 [use_libusb=$enableval],
523 AC_ARG_ENABLE([libcec],
524 [AS_HELP_STRING([--enable-libcec],
525 [enable libcec support (default is auto)])],
526 [use_libcec=$enableval],
529 AC_ARG_ENABLE([libmp3lame],
530 [AS_HELP_STRING([--enable-libmp3lame],
531 [enable lame mp3 encoder support (default is auto)])],
532 [use_libmp3lame=$enableval],
533 [use_libmp3lame=auto])
535 AC_ARG_ENABLE([libvorbisenc],
536 [AS_HELP_STRING([--enable-libvorbisenc],
537 [enable vorbis encoder support (default is auto)])],
538 [use_libvorbisenc=$enableval],
539 [use_libvorbisenc=auto])
541 AC_ARG_ENABLE([libcap],
542 [AS_HELP_STRING([--enable-libcap],
543 [enable libcap support (default is auto)])],
544 [use_libcap=$enableval],
547 AC_ARG_ENABLE([player],
548 [AS_HELP_STRING([--enable-player],
549 [enable additional players from a list of comma separated names, (default is none, choices are omxplayer)])],
550 [add_players=$enableval],
553 AC_ARG_ENABLE([gtest],
554 [AS_HELP_STRING([--enable-gtest],
555 [configure Google Test Framework (default is no)])],
556 [configure_gtest=$enableval],
557 [configure_gtest=no])
559 AC_ARG_ENABLE([codec],
560 [AS_HELP_STRING([--enable-codec],
561 [enable additional codecs from a list of comma separated names, (default is none, choices are amcodec, libstagefright)])],
562 [add_codecs=$enableval],
565 ### External libraries options
566 AC_ARG_ENABLE([external-libraries],
567 [AS_HELP_STRING([--enable-external-libraries],
568 [enable use of all supported external libraries (default is no) 'Linux only'])],
569 [use_external_libraries=$enableval],
570 [use_external_libraries=no])
572 AC_ARG_ENABLE([libav-compat],
573 [AS_HELP_STRING([--enable-libav-compat],
574 [build a wrapper around libav to provide the functions needed by XBMC. This is
575 *not* supported by XBMC developers and is provided only for convenience. (default is no) 'Linux only'])],
576 [use_libav_hacks=$enableval],
577 [use_libav_hacks=no])
579 ### End of external library options
581 if test "x$host_vendor" != "xapple"; then
582 DEFAULT_COMPILE_FLAGS="-fPIC -DPIC -D_REENTRANT"
583 DEFAULT_COMPILE_FLAGS="$DEFAULT_COMPILE_FLAGS -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
586 # Checks for programs.
587 PASSED_CFLAGS=$CFLAGS # Hack to override autoconf default values
590 CFLAGS="$PASSED_CFLAGS $DEFAULT_COMPILE_FLAGS"
591 PASSED_CXXFLAGS=$CXXFLAGS # Hack to override autoconf default values
593 AX_PROG_CXX_FOR_BUILD
594 CXXFLAGS="$PASSED_CXXFLAGS $DEFAULT_COMPILE_FLAGS"
601 OBJDUMP="${OBJDUMP:-objdump}"
602 READELF="${READELF:-readelf}"
605 use_external_ffmpeg=no
608 # ffmpeg needs the output of uname -s (e.x. linux, darwin) for the target_os
609 # there is no autoconf variable which will give
610 # the correct output format when doing cross compilation
611 # so we have to use our own var here
612 # defaults to the build side target_os
613 # and should be overridden for cross below (see android)
614 ffmpeg_target_os=$(tolower $(uname -s))
616 # host detection and setup
618 i*86*-linux-android*)
619 target_platform=target_android
623 ffmpeg_target_os=linux
631 i*86*-linux-gnu*|i*86*-*-linux-uclibc*)
633 if test "$use_cpu" = "no" -a "$cross_compiling" = "yes"; then
637 use_static_ffmpeg=yes
639 x86_64-*-linux-gnu*|x86_64-*-linux-uclibc*)
641 if test "$use_cpu" = "no" -a "$cross_compiling" = "yes"; then
645 use_static_ffmpeg=yes
652 ARCH="x86_64-freebsd"
668 PYTHON_LDFLAGS="-L${prefix}/lib -lpython2.6"
669 PYTHON_CPPFLAGS="-I${prefix}/include/python2.6"
670 PYTHON_SITE_PKG="${prefix}/lib/python2.6/site-packages"
671 PYTHON_NOVERSIONCHECK="no-check"
678 powerpc-apple-darwin*)
685 powerpc-*-linux-gnu*|powerpc-*-linux-uclibc*)
688 powerpc64-*-linux-gnu*|powerpc64-*-linux-uclibc*)
689 ARCH="powerpc64-linux"
691 arm*-*-linux-gnu*|arm*-*-linux-uclibc*)
694 ffmpeg_target_os=linux
701 use_static_ffmpeg=yes
703 arm*-*linux-android*)
704 target_platform=target_android
708 ffmpeg_target_os=linux
719 mipsel-*-linux*|mipsel*linux)
722 ffmpeg_target_os=linux
731 AC_MSG_ERROR(unsupported host ($host))
735 check_sdl_arch=[`file $NATIVE_ROOT/lib/libSDL_image.dylib | awk '{print $NF}'`]
736 if test "x$check_sdl_arch" = "xi386" ; then
737 DARWIN_NATIVE_ARCH=-m32
738 elif test "x$check_sdl_arch" = "xx86_64" ; then
739 DARWIN_NATIVE_ARCH=-m64
741 AC_SUBST([DARWIN_NATIVE_ARCH])
743 if test "$target_platform" = "target_android" ; then
745 webserver_checkdepends=yes
746 CFLAGS="$CFLAGS -Wno-psabi"
747 DROID_DVDLIB_SEEK64="-D_FILE_OFFSET_BITS=64 -D_OFF_T_DEFINED_ -Doff_t=off64_t -Dlseek=lseek64"
748 CXXFLAGS="$CXXFLAGS -Wno-psabi"
749 AC_DEFINE(HAS_EGLGLES, [1], [Define if supporting EGL based GLES Framebuffer])
752 case $use_platform in
754 target_platform=target_raspberry_pi
758 use_hardcoded_tables="yes"
761 AC_DEFINE(HAS_EGLGLES, [1], [Define if supporting EGL based GLES Framebuffer])
762 USE_OMXLIB=1; AC_DEFINE([HAVE_OMXLIB],[1],["Define to 1 if OMX libs is enabled"])
765 ffmpeg_target_os=linux
769 target_platform=target_dvbbox
772 ffmpeg_target_os=linux
780 AC_DEFINE(HAS_EGLGLES, [1], [Define if supporting EGL based GLES Framebuffer])
787 XBMC_SETUP_ARCH_DEFINES()
790 AC_CHECK_PROG(HAVE_GIT,git,"yes","no",)
791 if test "$GIT_REV" = ""; then
792 if test -f VERSION ; then
793 GIT_REV=$(awk 'END{print substr($1,1,16)}' VERSION)
794 elif test "$HAVE_GIT" = "yes" -a -d ${abs_top_srcdir}/.git; then
795 GIT_REV=$(git --no-pager log --abbrev=7 -n 1 --pretty=format:"%h %ci" HEAD | awk '{gsub("-", "");print $2"-"$1}')
800 final_message="$final_message\n git Rev.:\t${GIT_REV}"
802 if test "$host_vendor" = "apple"; then
803 echo "#define GIT_REV \"$GIT_REV\"" > git_revision.h
805 SDL_DEFINES="$SDL_DEFINES -D'GIT_REV=\"$GIT_REV\"'"
808 if test "$build_shared_lib" = "yes"; then
809 final_message="$final_message\n Shared lib\tYes"
810 AC_SUBST(USE_LIBXBMC,1)
814 # platform debug flags
815 if test "$use_debug" = "yes"; then
816 final_message="$final_message\n Debugging:\tYes"
817 if test "$use_profiling" = "yes"; then
818 final_message="$final_message\n Profiling:\tYes"
819 DEBUG_FLAGS="-g -pg -D_DEBUG -Wall"
821 final_message="$final_message\n Profiling:\tNo"
822 DEBUG_FLAGS="-g -D_DEBUG -Wall"
825 final_message="$final_message\n Debugging:\tNo"
826 if test "$use_profiling" = "yes"; then
827 final_message="$final_message\n Profiling:\tYes"
828 DEBUG_FLAGS="-pg -DNDEBUG=1"
830 final_message="$final_message\n Profiling:\tNo"
831 DEBUG_FLAGS="-DNDEBUG=1"
834 CFLAGS="$CFLAGS $DEBUG_FLAGS"
835 CXXFLAGS="$CXXFLAGS $DEBUG_FLAGS"
838 if test "$use_optimizations" = "yes"; then
839 final_message="$final_message\n Optimization:\tYes"
840 if test "$target_platform" = "target_raspberry_pi"; then
844 CXXFLAGS="-O2 $CXXFLAGS"
848 final_message="$final_message\n Optimization:\tNo"
852 # platform specific flags
853 if echo "$ARCH" | grep -q "freebsd" ; then
854 LOCALBASE="${LOCALBASE:-/usr/local}"
855 CFLAGS="$CFLAGS -I$LOCALBASE/include"
856 CXXFLAGS="$CXXFLAGS -I$LOCALBASE/include"
857 CPPFLAGS="$CPPFLAGS -I$LOCALBASE/include"
858 LDFLAGS="$LDFLAGS -L$LOCALBASE/lib"
859 FFMPEG_EXTRACFLAGS="-I$LOCALBASE/include"
861 if test "$host_vendor" = "apple" ; then
862 # standard xbmc paths
863 INCLUDES="$INCLUDES -I\$(abs_top_srcdir)/xbmc/osx"
864 if test "$use_arch" != "arm"; then
865 LIBS="$LIBS -framework ApplicationServices"
866 LIBS="$LIBS -framework AudioUnit"
867 LIBS="$LIBS -framework AudioToolbox"
868 LIBS="$LIBS -framework Cocoa"
869 LIBS="$LIBS -framework CoreAudio"
870 LIBS="$LIBS -framework CoreVideo"
871 LIBS="$LIBS -framework CoreServices"
872 LIBS="$LIBS -framework CoreFoundation"
873 LIBS="$LIBS -framework DiskArbitration"
874 LIBS="$LIBS -framework IOKit"
875 LIBS="$LIBS -framework IOSurface"
876 LIBS="$LIBS -framework QuartzCore"
877 LIBS="$LIBS -framework SystemConfiguration"
878 LIBS="$LIBS -framework VideoDecodeAcceleration"
880 USE_EXTERNAL_FFMPEG=1
881 elif test "$target_platform" = "target_raspberry_pi"; then
884 elif test "$use_arch" = "arm"; then
885 CFLAGS="$CFLAGS -mno-apcs-stack-check"
886 CXXFLAGS="$CXXFLAGS -mno-apcs-stack-check"
887 FFMPEG_EXTRACFLAGS=""
888 if test "$use_tegra" = "yes"; then
889 # Compile for ARMv7a architecture, need to test gcc for vfpv3-d16 support
890 SAVE_CFLAGS="$CFLAGS"
891 CFLAGS="-mfpu=vfpv3-d16"
893 [AC_LANG_SOURCE([int foo;])],
894 [ CFLAGS="$SAVE_CFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
895 CXXFLAGS="$CXXFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
896 FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mtune=cortex-a9 -mfpu=vfpv3-d16"
898 [ CFLAGS="$SAVE_CFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
899 CXXFLAGS="$CXXFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
902 if test "$use_neon" = "yes"; then
903 CFLAGS="$CFLAGS -mfpu=neon -mvectorize-with-neon-quad"
904 CXXFLAGS="$CXXFLAGS -mfpu=neon -mvectorize-with-neon-quad"
905 FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mfpu=neon"
909 if test "$use_static_ffmpeg" = "yes"; then
911 AC_DEFINE([USE_STATIC_FFMPEG], [1], [link ffmpeg statically])
912 # ffmpeg may depend on gnutls and vorbisenc, we add those libs at the end of linker
913 # command in order to resolve any missing symbols
914 GNUTLS_ALL_LIBS=`${PKG_CONFIG} --static --libs-only-l --silence-errors gnutls`
915 HOGWEED_ALL_LIBS=`${PKG_CONFIG} --static --libs-only-l --silence-errors hogweed nettle`
916 VORBISENC_ALL_LIBS=`${PKG_CONFIG} --static --libs-only-l --silence-errors vorbisenc`
919 # Checks for library functions.
922 AC_FUNC_CLOSEDIR_VOID
923 AC_FUNC_ERROR_AT_LINE
925 AC_PROG_GCC_TRADITIONAL
927 AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
931 # Boxee is apparently having compile problems
932 # if HAVE_REALLOC is defined. Sort this later.
934 AC_FUNC_SELECT_ARGTYPES
935 AC_FUNC_SETVBUF_REVERSED
943 AC_CHECK_FUNCS([atexit dup2 fdatasync floor fs_stat_dev ftime ftruncate getcwd gethostbyaddr gethostbyname gethostname getpagesize getpass gettimeofday inet_ntoa lchown localeconv memchr memmove memset mkdir modf munmap pow rmdir select setenv setlocale socket sqrt strcasecmp strchr strcspn strdup strerror strncasecmp strpbrk strrchr strspn strstr strtol strtoul sysinfo tzset utime posix_fadvise])
945 # Check for various sizes
946 AC_CHECK_SIZEOF([int])
947 AC_CHECK_SIZEOF([size_t])
949 # Check for intrinsics
950 AC_MSG_CHECKING([for __sync_add_and_fetch(temp, 1)])
951 AC_TRY_LINK([],[long* temp=0; long ret=__sync_add_and_fetch(temp, 1);],
952 [have_builtin_sync_add_and_fetch=yes],
953 [have_builtin_sync_add_and_fetch=no])
954 AC_MSG_RESULT($have_builtin_sync_add_and_fetch)
955 if test "x$have_builtin_sync_add_and_fetch" = "xyes"; then
956 AC_DEFINE(HAS_BUILTIN_SYNC_ADD_AND_FETCH, 1,
957 [Define to 1 if your compiler supports the __sync_add_and_fetch() intrinsic.])
960 AC_MSG_CHECKING([for __sync_sub_and_fetch(temp, 1)])
961 AC_TRY_LINK([],[long* temp=0; long ret=__sync_sub_and_fetch(temp, 1);],
962 [have_builtin_sync_sub_and_fetch=yes],
963 [have_builtin_sync_sub_and_fetch=no])
964 AC_MSG_RESULT($have_builtin_sync_sub_and_fetch)
965 if test "x$have_builtin_sync_sub_and_fetch" = "xyes"; then
966 AC_DEFINE(HAS_BUILTIN_SYNC_SUB_AND_FETCH, 1,
967 [Define to 1 if your compiler supports the __sync_sub_and_fetch() intrinsic.])
970 AC_MSG_CHECKING([for __sync_val_compare_and_swap(temp, 1, 1)])
971 AC_TRY_LINK([],[long *temp = 0; long ret=__sync_val_compare_and_swap(temp, 1, 1);],
972 [have_builtin_sync_val_compare_and_swap=yes],
973 [have_builtin_sync_val_compare_and_swap=no])
974 AC_MSG_RESULT($have_builtin_sync_val_compare_and_swap)
975 if test "x$have_builtin_sync_val_compare_and_swap" = "xyes"; then
976 AC_DEFINE(HAS_BUILTIN_SYNC_VAL_COMPARE_AND_SWAP, 1,
977 [Define to 1 if your compiler supports the __sync_val_compare_and_swap() intrinsic.])
980 # Check for u16string/u32string declarations
982 AC_CHECK_TYPES([std::u16string, std::u32string], [], [], [[#include <string>]])
983 AC_CHECK_TYPES([char16_t, char32_t])
984 AC_CHECK_SIZEOF([wchar_t])
987 # Add top source directory for all builds so we can use config.h
988 INCLUDES="-I\$(abs_top_srcdir) $INCLUDES"
990 # Check inotify availability
991 AC_CHECK_HEADER([sys/inotify.h], AC_DEFINE([HAVE_INOTIFY],[1],[Define if we have inotify]),)
993 # Checks for boost headers using CXX instead of CC
995 AC_CHECK_HEADER([boost/shared_ptr.hpp],, AC_MSG_ERROR($missing_library))
999 if test -z "$PYTHON_NOVERSIONCHECK"; then
1000 AX_PYTHON_DEVEL([>= 2.4])
1001 PYTHON_VERSION=$ac_python_version
1004 if test -z "$PYTHON_VERSION"; then
1005 AC_MSG_ERROR([Can't find a Python version.])
1007 LIBS="$LIBS $PYTHON_LDFLAGS"
1008 AC_MSG_NOTICE([Using Python $PYTHON_VERSION])
1012 if test "$use_wayland" = "yes" && test "$host_vendor" != "apple"; then
1013 AC_MSG_NOTICE($wayland_enabled)
1014 PKG_CHECK_MODULES([WAYLAND_CLIENT], [wayland-client],
1015 [INCLUDES="$INCLUDES $WAYLAND_CLIENT_CFLAGS";
1016 WAYLAND_CLIENT_LIBRARY_LINE=`LIBRARY=\`${PKG_CONFIG} --libs-only-l wayland-client\`; echo ${LIBRARY:2}`;
1017 XB_FIND_SONAME([WAYLAND_CLIENT_LIBRARY], ${WAYLAND_CLIENT_LIBRARY_LINE})],
1018 AC_MSG_ERROR($missing_library))
1019 PKG_CHECK_MODULES([WAYLAND_EGL], [wayland-egl],
1020 [INCLUDES="$INCLUDES $WAYLAND_EGL_CFLAGS";
1021 WAYLAND_EGL_LIBRARY_LINE=`LIBRARY=\`${PKG_CONFIG} --libs-only-l wayland-egl\`; echo ${LIBRARY:2:11}`
1022 XB_FIND_SONAME([WAYLAND_EGL_LIBRARY], ${WAYLAND_EGL_LIBRARY_LINE})],
1023 AC_MSG_ERROR($missing_library))
1024 PKG_CHECK_MODULES([XKBCOMMON], [xkbcommon],
1025 [INCLUDES="$INCLUDES $XKBCOMMON_CFLAGS";
1026 XKBCOMMON_LIBRARY_LINE=`LIBRARY=\`${PKG_CONFIG} --libs-only-l xkbcommon\`; echo ${LIBRARY:2}`;
1027 XB_FIND_SONAME([XKBCOMMON_LIBRARY], $XKBCOMMON_LIBRARY_LINE)],
1028 AC_MSG_ERROR($missing_library))
1029 AC_DEFINE([HAVE_WAYLAND], [1], [Define to 1 if you have Wayland libs installed.])
1030 AC_DEFINE([HAVE_XKBCOMMON], [1], [Define to 1 if you have libxkbcommon installed.])
1032 # If we are also building with tests then we want to build
1033 # wayland tests as well
1034 if test "$configure_gtest" = "yes"; then
1036 PKG_CHECK_MODULES([PIXMAN],
1037 [pixman-1],have_pixman=yes,
1038 [AC_MSG_WARN($missing_library); have_pixman=no])
1039 PKG_CHECK_MODULES([WESTON],
1040 [weston >= 1.1.90],[have_weston_sdk=yes],
1041 [have_weston_sdk=no; AC_MSG_WARN($missing_library)])
1043 AC_CHECK_PROG(WAYLAND_SCANNER, wayland-scanner, "wayland-scanner", "no")
1044 if test "x$WAYLAND_SCANNER" == "xno"; then
1045 AC_MSG_WARN($missing_program)
1047 if test "x$have_weston_sdk" == "xyes" && test "x$have_pixman" = "xyes"; then
1048 AC_SUBST(WAYLAND_TEST_INCLUDES,"$WAYLAND_CLIENT_CFLAGS $XKBCOMMON_CFLAGS $PIXMAN_CFLAGS $WESTON_CFLAGS")
1049 AC_SUBST(WAYLAND_TEST_LIBS,"$WAYLAND_CLIENT_LIBS $XKBCOMMON_LIBS $PIXMAN_LIBS $WESTON_LIBS")
1050 AC_DEFINE([HAVE_WESTON_SDK], [1], [Define to 1 if Weston SDK is installed.])
1051 AC_SUBST(USE_WAYLAND_TEST_EXTENSION, 1)
1053 AC_SUBST(WAYLAND_SCANNER)
1054 AC_DEFINE([HAVE_WAYLAND_XBMC_PROTO],[1],["Define to 1 if the wayland test-protocol will be built"])
1058 # Disable SDL and X11 builds
1063 # Wayland requires the EGL "window system" which in turn only supports
1064 # the OpenGL ES API, so enable gles support
1067 AC_MSG_RESULT($wayland_disabled)
1070 # Checks for platforms libraries.
1071 if test "$use_gles" = "yes"; then
1073 # GLES overwrites GL if both set to yes.
1074 if test "$host_vendor" = "apple" ; then
1075 AC_DEFINE([HAVE_LIBEGL],[1],["Define to 1 if you have the `EGL' library (-lEGL)."])
1076 AC_DEFINE([HAVE_LIBGLESV2],[1],["Define to 1 if you have the `GLESv2' library (-lGLESv2)."])
1077 AC_MSG_RESULT(== WARNING: OpenGLES support is assumed.)
1079 if test "$target_platform" = "target_raspberry_pi"; then
1080 AC_DEFINE([HAVE_LIBEGL],[1],["Define to 1 if you have the `EGL' library (-lEGL)."])
1081 AC_DEFINE([HAVE_LIBGLESV2],[1],["Define to 1 if you have the `GLESv2' library (-lGLESv2)."])
1082 AC_MSG_RESULT(== WARNING: OpenGLES support is assumed.)
1083 LIBS="$LIBS -lEGL -lGLESv2 -lbcm_host -lvcos -lvchiq_arm"
1085 AC_CHECK_LIB([EGL], [main],, AC_MSG_ERROR($missing_library))
1086 AC_CHECK_LIB([GLESv2],[main],, AC_MSG_ERROR($missing_library))
1090 if test "$use_gl" = "yes"; then
1091 if test "$host_vendor" = "apple" ; then
1092 # linking to OpenGL.framework instead of libGL, libGLU so AC_CHECK_LIB will fail
1093 LIBS="$LIBS -framework OpenGL"
1094 AC_DEFINE([HAVE_LIBGL],[1],["Define to 1 if you have the `GL' library (-lGL)."])
1095 AC_MSG_RESULT(== WARNING: OpenGL support is assumed.)
1096 AC_DEFINE([HAVE_LIBGLU],[1],["Define to 1 if you have the `GLU' library (-lGLU)."])
1097 AC_MSG_RESULT(== WARNING: OpenGLU support is assumed.)
1098 AC_CHECK_LIB([GLEW],[main],, AC_MSG_ERROR($missing_library))
1100 AC_CHECK_LIB([GL], [main],, AC_MSG_ERROR($missing_library))
1101 AC_CHECK_LIB([GLEW],[main],, AC_MSG_ERROR($missing_library))
1102 AC_CHECK_LIB([GLU], [main],, AC_MSG_ERROR($missing_library))
1105 AC_MSG_RESULT(== WARNING: OpenGL support is disabled. XBMC will run VERY slow. ==)
1106 AC_CHECK_LIB([SDL_gfx],[main])
1110 # platform common libraries
1111 if test "$use_mysql" = "yes"; then
1112 AC_PATH_PROG(MYSQL_CONFIG, mysql_config,"no")
1113 if test "x$MYSQL_CONFIG" != "xno"; then
1114 AC_DEFINE([HAVE_MYSQL],[1],["Define to 1 if you have the `mysql' library (-lmysqlclient)."])
1115 INCLUDES="$INCLUDES `$MYSQL_CONFIG --include`"
1116 MYSQL_LIBS=`$MYSQL_CONFIG --libs`
1117 LIBS="$LIBS $MYSQL_LIBS"
1118 AC_SUBST(MYSQL_LIBS)
1120 AC_MSG_ERROR($missing_program)
1123 AC_CHECK_HEADER([ass/ass.h],, AC_MSG_ERROR($missing_library))
1124 AC_CHECK_HEADER([mpeg2dec/mpeg2.h],, AC_MSG_ERROR($missing_library))
1125 AC_CHECK_HEADER([mpeg2dec/mpeg2convert.h],, AC_MSG_ERROR($missing_library),
1126 AC_INCLUDES_DEFAULT()
1127 [#include <mpeg2dec/mpeg2.h>])
1128 AC_CHECK_HEADER([mad.h],, AC_MSG_ERROR($missing_library))
1129 AC_CHECK_HEADER([jpeglib.h],, AC_MSG_ERROR($missing_library))
1130 AC_CHECK_HEADER([samplerate.h],, AC_MSG_ERROR($missing_library))
1131 AC_CHECK_HEADER([ogg/ogg.h],, AC_MSG_ERROR($missing_library))
1132 AC_CHECK_HEADER([vorbis/vorbisfile.h],, AC_MSG_ERROR($missing_library))
1133 AC_CHECK_HEADER([libmodplug/modplug.h],, AC_MSG_ERROR($missing_library))
1134 AC_CHECK_HEADER([FLAC/stream_decoder.h],, AC_MSG_ERROR($missing_library))
1136 AC_CHECK_HEADER([curl/curl.h],, AC_MSG_ERROR($missing_library))
1137 XB_FIND_SONAME([CURL], [curl])
1138 AC_MSG_CHECKING([for CRYPTO_set_locking_callback(0) in $CURL_SONAME])
1139 if test "$host_vendor" = "apple" ; then
1141 searchpattern="T [_]?CRYPTO_set_locking_call"
1143 libchecker="$READELF -s"
1144 searchpattern="CRYPTO_set_locking_call"
1146 if test $($libchecker $CURL_FILENAME | grep -Eq "${searchpattern}" ; echo $?) -eq 0 ; then
1148 AC_DEFINE([HAS_CURL_STATIC], [1], [Whether OpenSSL inside libcurl is static.])
1153 AC_CHECK_HEADER([openssl/crypto.h], AC_DEFINE([HAVE_OPENSSL],[1],[Define if we have openssl]),)
1154 AC_CHECK_HEADER([gcrypt.h], gcrypt_headers_available=yes,gcrypt_headers_available=no)
1155 if test "$gcrypt_headers_available" = "yes"; then
1156 # if we have the headers then we must have the lib
1157 AC_CHECK_LIB([gpg-error],[main],, AC_MSG_ERROR($missing_library))
1158 AC_CHECK_LIB([gcrypt],[gcry_control],, AC_MSG_ERROR($missing_library))
1159 AC_DEFINE([HAVE_GCRYPT],[1],[Define if we have gcrypt])
1161 PKG_CHECK_MODULES([GNUTLS], [gnutls], [have_gnutls=yes];AC_DEFINE([HAVE_GNUTLS], [1], [Define if we have gnutls]), AC_MSG_WARN("gnutls not found, ffmpeg TLS support disabled"))
1163 AC_CHECK_LIB([bz2], [main],, AC_MSG_ERROR($missing_library))
1164 AC_CHECK_LIB([jpeg], [main],, AC_MSG_ERROR($missing_library)) # check for cximage
1165 AC_CHECK_LIB([tiff], [main],, AC_MSG_ERROR($missing_library))
1166 if echo "$ARCH" | grep -q freebsd; then
1167 AC_CHECK_LIB([pthread], [main],LIBS="-pthread $LIBS", AC_MSG_ERROR($missing_library))
1168 AC_CHECK_LIB([pthread], [pthread_set_name_np],
1169 AC_DEFINE([HAVE_PTHREAD_SET_NAME_NP],[1],["Define to 1 if pthread has pthread_set_name_np"]),
1170 AC_MSG_RESULT([Could not find pthread_set_name_np in pthread]))
1172 if test "$target_platform" != "target_android" ; then
1173 AC_CHECK_LIB([pthread], [main],, AC_MSG_ERROR($missing_library))
1174 AC_CHECK_LIB([pthread], [pthread_setname_np],
1175 AC_DEFINE([HAVE_PTHREAD_SETNAME_NP],[1],["Define to 1 if pthread has pthread_setname_np"]),
1176 AC_MSG_RESULT([Could not find pthread_setname_np in pthread]))
1179 AC_CHECK_LIB([lzo2], [main],, AC_MSG_ERROR($missing_library))
1180 AC_CHECK_LIB([z], [main],, AC_MSG_ERROR($missing_library))
1181 AC_CHECK_LIB([crypto], [main],, AC_MSG_ERROR($missing_library))
1182 AC_CHECK_LIB([ssl], [main],, AC_MSG_ERROR($missing_library))
1183 if test "$use_mysql" = "yes"; then
1184 AC_CHECK_LIB([mysqlclient], [main],, AC_MSG_ERROR($missing_library))
1186 AC_CHECK_LIB([bluetooth], [hci_devid],, AC_MSG_RESULT([Could not find suitable version of libbluetooth]))
1187 AC_CHECK_LIB([yajl], [main],, AC_MSG_ERROR($missing_library))
1188 AC_CHECK_LIB([tinyxml], [main],, AC_MSG_ERROR($missing_library))
1189 if test "$target_platform" = "target_android" ; then
1190 AC_CHECK_LIB([android], [main],, AC_MSG_ERROR($missing_library))
1191 AC_CHECK_LIB([log], [__android_log_vprint],, AC_MSG_ERROR($missing_library))
1192 AC_CHECK_LIB([jnigraphics], [main],, AC_MSG_ERROR($missing_library))
1194 PKG_CHECK_MODULES([LIBXML], [libxml-2.0],
1195 [INCLUDES="$INCLUDES $LIBXML_CFLAGS"; LIBS="$LIBS $LIBXML_LIBS"],
1196 AC_MSG_ERROR($missing_library))
1197 PKG_CHECK_MODULES([LIBXSLT], [libxslt],
1198 [INCLUDES="$INCLUDES $LIBXSLT_CFLAGS"; LIBS="$LIBS $LIBXSLT_LIBS"],
1199 AC_MSG_ERROR($missing_library))
1200 PKG_CHECK_MODULES([FRIBIDI], [fribidi],
1201 [INCLUDES="$INCLUDES $FRIBIDI_CFLAGS"; LIBS="$LIBS $FRIBIDI_LIBS"],
1202 AC_MSG_ERROR($missing_library))
1203 PKG_CHECK_MODULES([SQLITE3], [sqlite3],
1204 [INCLUDES="$INCLUDES $SQLITE3_CFLAGS"; LIBS="$LIBS $SQLITE3_LIBS"],
1205 AC_MSG_ERROR($missing_library))
1206 PKG_CHECK_MODULES([PNG], [libpng],
1207 [INCLUDES="$INCLUDES $PNG_CFLAGS"; LIBS="$LIBS $PNG_LIBS"],
1208 AC_MSG_ERROR($missing_library))
1209 PKG_CHECK_MODULES([PCRECPP], [libpcrecpp],
1210 [INCLUDES="$INCLUDES $PCRECPP_CFLAGS"; LIBS="$LIBS $PCRECPP_LIBS"]; \
1211 AC_DEFINE([HAVE_LIBPCRECPP],[1],["Define to 1 if libpcrecpp is installed"]),
1212 AC_MSG_ERROR($missing_library))
1213 PKG_CHECK_MODULES([PCRE], [libpcre],
1214 [INCLUDES="$INCLUDES $PCRE_CFLAGS"; LIBS="$LIBS $PCRE_LIBS"]; \
1215 AC_DEFINE([HAVE_LIBPCRE],[1],["Define to 1 if libpcre is installed"]),
1216 AC_MSG_ERROR($missing_library))
1217 PKG_CHECK_MODULES([SAMPLERATE], [samplerate],
1218 [INCLUDES="$INCLUDES $SAMPLERATE_CFLAGS"; LIBS="$LIBS $SAMPLERATE_LIBS"],
1219 AC_MSG_ERROR($missing_library))
1220 PKG_CHECK_MODULES([FREETYPE2], [freetype2],
1221 [INCLUDES="$INCLUDES $FREETYPE2_CFLAGS"; LIBS="$LIBS $FREETYPE2_LIBS"],
1222 AC_MSG_ERROR($missing_library))
1223 PKG_CHECK_MODULES([TAGLIB], [taglib >= 1.8],
1224 [INCLUDES="$INCLUDES $TAGLIB_CFLAGS"; LIBS="$LIBS $TAGLIB_LIBS"],
1225 AC_MSG_ERROR($missing_library))
1227 if test "$use_optical_drive" = "yes"; then
1228 PKG_CHECK_MODULES([CDIO], [libcdio],
1229 [INCLUDES="$INCLUDES $CDIO_CFLAGS"; LIBS="$LIBS $CDIO_LIBS"],
1230 AC_MSG_ERROR($missing_library))
1233 if test "$target_platform" = "target_android" ; then
1234 PKG_CHECK_MODULES([ZIP], [libzip],
1235 [INCLUDES="$INCLUDES $ZIP_CFLAGS"; LIBS="$LIBS $ZIP_LIBS"],
1236 AC_MSG_ERROR($missing_library))
1239 # check for libbluray
1240 AS_CASE([x$use_libbluray],
1242 PKG_CHECK_MODULES([LIBBLURAY],[libbluray >= 0.2.1],[use_libbluray="yes"], AC_MSG_ERROR($missing_library))
1245 PKG_CHECK_MODULES([LIBBLURAY],[libbluray >= 0.2.1],[use_libbluray="yes"], [use_libbluray="no"])
1248 AS_CASE([x$use_libbluray],
1250 INCLUDES="$INCLUDES $LIBBLURAY_CFLAGS";
1251 XB_FIND_SONAME([BLURAY], [bluray], [use_libbluray])
1252 AC_DEFINE([HAVE_LIBBLURAY], 1, [System has libbluray library])
1253 AC_SUBST([HAVE_LIBBLURAY], 1)
1254 AC_CHECK_LIB([bluray], [bd_register_argb_overlay_proc],
1255 AC_CHECK_DECL([BD_EVENT_IDLE],
1256 AC_DEFINE([HAVE_LIBBLURAY_BDJ], 1, [System has libbluray library with bdj support]),,
1257 [[#include <libbluray/bluray.h>]]))
1259 AC_SUBST([HAVE_LIBBLURAY], 0)
1263 #Check to see if libs are needed for functions that are often built-in to libc
1264 AC_SEARCH_LIBS([iconv_open],iconv,,AC_SEARCH_LIBS([libiconv_open],iconv,,AC_MSG_ERROR($missing_library)))
1265 AC_SEARCH_LIBS([dlopen],dl)
1266 AC_SEARCH_LIBS([clock_gettime],rt)
1267 AC_SEARCH_LIBS([dn_expand], resolv)
1268 AC_SEARCH_LIBS([_dn_expand], resolv)
1269 AC_SEARCH_LIBS([__dn_expand],resolv)
1271 # platform dependent libraries
1272 if test "$host_vendor" = "apple" ; then
1273 if test "$use_arch" != "arm"; then
1274 AC_CHECK_LIB([SDL], [main],, AC_MSG_ERROR($missing_library))
1275 AC_DEFINE([HAVE_SDL],[1],["Define to 1 if using sdl"])
1278 if test "$target_platform" != "target_android" ; then
1279 AC_CHECK_LIB([jasper], [main],, AC_MSG_ERROR($missing_library)) # check for cximage
1281 if test "x$use_alsa" != "xno"; then
1282 PKG_CHECK_MODULES([ALSA], [alsa],
1283 [INCLUDES="$INCLUDES $ALSA_CFLAGS"; LIBS="$LIBS $ALSA_LIBS"; use_alsa=yes],
1284 AC_MSG_NOTICE($alsa_not_found); use_alsa=no)
1286 PKG_CHECK_MODULES([DBUS], [dbus-1],
1287 [INCLUDES="$INCLUDES $DBUS_CFLAGS"; LIBS="$LIBS $DBUS_LIBS"; use_dbus=yes]; \
1288 AC_DEFINE([HAVE_DBUS],[1],["Define to 1 if dbus is installed"]),
1289 AC_MSG_NOTICE($missing_library); use_dbus=no)
1290 if test "x$use_sdl" != "xno"; then
1291 PKG_CHECK_MODULES([SDL], [sdl],
1292 [INCLUDES="$INCLUDES $SDL_CFLAGS"; LIBS="$LIBS $SDL_LIBS"],
1293 AC_MSG_ERROR($missing_library))
1294 AC_CHECK_LIB([SDL_image], [main],, AC_MSG_ERROR($missing_library))
1295 AC_DEFINE([HAVE_SDL],[1],["Define to 1 if using sdl"])
1299 XB_FIND_SONAME([MAD], [mad])
1300 XB_FIND_SONAME([OGG], [ogg])
1301 XB_FIND_SONAME([FLAC], [FLAC])
1302 XB_FIND_SONAME([VORBIS], [vorbis])
1303 XB_FIND_SONAME([VORBISFILE], [vorbisfile])
1304 XB_FIND_SONAME([MODPLUG], [modplug])
1305 XB_FIND_SONAME([ASS], [ass])
1306 XB_FIND_SONAME([MPEG2], [mpeg2])
1309 if test "x$use_libmp3lame" != "xno"; then
1310 XB_FIND_SONAME([LAMEENC], [mp3lame], [use_libmp3lame])
1311 if test "x$use_libmp3lame" != "xno"; then
1312 AC_CHECK_HEADER([lame/lame.h],, AC_MSG_ERROR($missing_headers))
1315 AS_CASE([x$use_libmp3lame],
1317 AC_SUBST([HAVE_LIBMP3LAME], 0)
1320 AC_DEFINE([HAVE_LIBMP3LAME], 1, [System has libmp3lame library])
1321 AC_SUBST([HAVE_LIBMP3LAME], 1)
1324 if test "x$use_libvorbisenc" != "xno"; then
1325 XB_FIND_SONAME([VORBISENC], [vorbisenc], [use_libvorbisenc])
1326 if test "x$use_libvorbisenc" != "xno"; then
1327 AC_CHECK_HEADER([vorbis/vorbisenc.h],, AC_MSG_ERROR($missing_headers))
1330 AS_CASE([x$use_libvorbisenc],
1332 AC_SUBST([HAVE_LIBVORBISENC], 0)
1334 AC_DEFINE([HAVE_LIBVORBISENC], 1, [System has libvorbisenc library])
1335 AC_SUBST([HAVE_LIBVORBISENC], 1)
1340 if test "$use_webserver" = "yes"; then
1341 AC_CHECK_LIB([microhttpd], [main],, AC_MSG_ERROR($missing_library))
1345 if test "$use_optical_drive" = "yes"; then
1346 AC_DEFINE([HAS_DVD_DRIVE], [1], [Define to 1 to have optical drive support])
1350 if test "$use_alsa" = "yes" && test "$host_vendor" != "apple"; then
1351 PKG_CHECK_MODULES([ALSA], [alsa],
1352 [INCLUDES="$INCLUDES $ALSA_CFLAGS"; LIBS="$LIBS $ALSA_LIBS"],
1353 AC_MSG_ERROR($missing_library))
1354 AC_DEFINE([HAS_ALSA], [1], [Define to 0 to disable ALSA support])
1357 AC_MSG_RESULT($alsa_disabled)
1361 if test "x$use_pulse" != "xno"; then
1362 if test "$host_vendor" = "apple" ; then
1363 if test "x$use_pulse" = "xyes"; then
1364 AC_MSG_ERROR($pulse_disabled)
1367 AC_MSG_RESULT($pulse_disabled)
1371 PKG_CHECK_MODULES([PULSE], [libpulse >= 1.0],
1372 [INCLUDES="$INCLUDES $PULSE_CFLAGS"; LIBS="$LIBS $PULSE_LIBS"; USE_PULSE=1;
1373 HAVE_LIBPULSE=1; AC_DEFINE([HAVE_LIBPULSE],[1],[Pulse audio enabled])],
1374 [pulse_found="no"; USE_PULSE=0; HAVE_LIBPULSE=0])
1376 if test "$pulse_found" = "no"; then
1377 if test "x$use_pulse" = "xyes"; then
1378 AC_MSG_ERROR($pulse_not_found)
1380 AC_MSG_RESULT($pulse_disabled)
1385 AC_MSG_RESULT($pulse_disabled)
1390 if test "$host_vendor" = "apple" ; then
1392 AC_MSG_RESULT($hal_disabled)
1394 if test "$use_hal" = "yes"; then
1395 PKG_CHECK_MODULES([HAL], [hal],
1396 [INCLUDES="$INCLUDES $HAL_CFLAGS"; LIBS="$LIBS $HAL_LIBS"],
1397 use_hal=no;AC_MSG_RESULT($hal_not_found))
1398 PKG_CHECK_MODULES([HAL_STORAGE], [hal-storage],
1399 [INCLUDES="$INCLUDES $HAL_STORAGE_CFLAGS"; LIBS="$LIBS $HAL_STORAGE_LIBS"],
1400 use_hal=no;AC_MSG_RESULT($halstorage_not_found))
1402 AC_MSG_RESULT($hal_disabled)
1404 if test "$use_hal" = "yes"; then
1405 AC_DEFINE([HAS_HAL], [1], [Define to 1 if you have HAL installed])
1410 if test "$host_vendor" = "apple" ; then
1412 AC_MSG_RESULT($avahi_disabled)
1414 if test "$use_avahi" = "yes"; then
1415 AC_CHECK_LIB([avahi-common], [main],,
1416 use_avahi=no;AC_MSG_RESULT($avahi_not_found))
1417 if test "$use_avahi" = "yes"; then
1418 #either both libs or none
1419 AC_CHECK_LIB([avahi-client], [main],,
1420 use_avahi=no;AC_MSG_RESULT($avahi_not_found))
1423 AC_MSG_RESULT($avahi_disabled)
1428 if test "$use_mdnsembedded" != "no"; then
1429 AC_CHECK_LIB([mDNSEmbedded], [embedded_mDNSInit],,
1430 [if test "$use_mdnsembedded" = "yes"; then
1431 AC_MSG_ERROR($mdnsembedded_not_found)
1433 elif test "$use_mdnsembedded" != "no"; then
1434 AC_MSG_NOTICE($mdnsembedded_not_found)
1435 use_mdnsembedded="no"
1439 if test $use_mdnsembedded != "no"; then
1443 AC_MSG_RESULT($mdnsembedded_disabled)
1446 AC_SUBST(USE_MDNSEMBEDDED)
1449 if test "$use_x11" = "yes" && test "$host_vendor" != "apple"; then
1450 AC_MSG_NOTICE($x11_enabled)
1451 PKG_CHECK_MODULES([X11], [x11],
1452 [INCLUDES="$INCLUDES $X11_CFLAGS"; LIBS="$LIBS $X11_LIBS"],
1453 AC_MSG_ERROR($missing_library))
1454 PKG_CHECK_MODULES([XEXT], [xext],
1455 [INCLUDES="$INCLUDES $XEXT_CFLAGS"; LIBS="$LIBS $XEXT_LIBS"],
1456 AC_MSG_ERROR($missing_library))
1457 AC_DEFINE([HAVE_X11], [1], [Define to 1 if you have X11 libs installed.])
1459 AC_MSG_RESULT($x11_disabled)
1463 if test "$host_vendor" = "apple" || test "$use_x11" = "no"; then
1465 AC_MSG_RESULT($xrandr_disabled)
1467 if test "$use_xrandr" = "yes" ; then
1468 AC_CHECK_LIB([Xrandr], [main],,
1469 use_xrandr="no";AC_MSG_RESULT($xrandr_not_found))
1471 AC_MSG_RESULT($xrandr_disabled)
1476 if test "$use_waveform" = "yes"; then
1477 AC_MSG_NOTICE($waveform_enabled)
1480 AC_MSG_NOTICE($waveform_disabled)
1485 if test "$use_spectrum" = "yes"; then
1486 AC_MSG_NOTICE($spectrum_enabled)
1489 AC_MSG_NOTICE($spectrum_disabled)
1494 if test "$host_vendor" = "apple" ; then
1495 AC_MSG_NOTICE($goom_disabled)
1498 if test "$use_goom" = "yes" && test "$use_gl" = "yes"; then
1499 AC_MSG_NOTICE($goom_enabled)
1502 AC_MSG_NOTICE($goom_disabled)
1508 if test "$use_rsxs" = "no" || test "$use_gl" = "no"; then
1509 AC_MSG_NOTICE($rsxs_disabled)
1512 AC_MSG_NOTICE($rsxs_enabled)
1514 # darwin osx can do rsxs but does not use x11, so do not pkg-config check for them
1515 if test "$host_vendor" != "apple" ; then
1516 PKG_CHECK_MODULES([XT], [xt],
1517 [INCLUDES="$INCLUDES $XT_CFLAGS"; LIBS="$LIBS $XT_LIBS"],
1518 AC_MSG_ERROR($missing_library))
1519 PKG_CHECK_MODULES([XMU], [xmu],
1520 [INCLUDES="$INCLUDES $XMU_CFLAGS"; LIBS="$LIBS $XMU_LIBS"],
1521 AC_MSG_ERROR($missing_library))
1526 if test "$use_fishbmc" = "no" || test "$use_gl" = "no"; then
1527 AC_MSG_NOTICE($fishbmc_disabled)
1531 AC_MSG_NOTICE($fishbmc_enabled)
1536 if test "$use_projectm" = "no" || test "$use_gl" = "no"; then
1537 AC_MSG_NOTICE($projectm_disabled)
1541 AC_MSG_NOTICE($projectm_enabled)
1547 if [[ -f "addons/skin.touched/addon.xml" ]]; then
1548 use_skin_touched=yes
1550 AC_DEFINE([HAS_SKIN_TOUCHED], [1], [Whether to build skin touched.])
1556 if test "x$use_ssh" = "xno"; then
1557 AC_MSG_NOTICE($ssh_disabled)
1560 AC_CHECK_LIB([ssh], [sftp_tell64],, AC_MSG_ERROR($ssh_not_found))
1561 AC_DEFINE([HAVE_LIBSSH], [1], [Whether to use libSSH library.])
1565 if test "$use_librtmp" != "no"; then
1566 PKG_CHECK_MODULES([LIBRTMP], [librtmp],
1567 [INCLUDES="$INCLUDES $LIBRTMP_CFLAGS"; LIBS="$LIBS $LIBRTMP_LIBS";
1568 XB_FIND_SONAME([RTMP], [rtmp], [use_librtmp])
1569 AC_DEFINE([HAS_LIBRTMP], [1], [Whether to use libRTMP library.])
1570 RTMP_ALL_LIBS=$(${PKG_CONFIG} --static --libs-only-l --silence-errors librtmp)
1571 test "$use_static_ffmpeg" = "yes" && LIBS="$LIBS $RTMP_ALL_LIBS"; LIBS="`echo $LIBS | sed 's/-lrtmp//g'`"],
1572 [AC_CHECK_HEADERS([librtmp/log.h librtmp/amf.h librtmp/rtmp.h],,
1573 [if test "$use_librtmp" = "yes"; then
1574 AC_MSG_ERROR($librtmp_not_found)
1575 elif test "$use_librtmp" != "no"; then
1576 AC_MSG_NOTICE($librtmp_not_found)
1580 if test "$use_librtmp" != "no"; then
1581 XB_FIND_SONAME([RTMP], [rtmp], [use_librtmp])
1583 if test "$use_librtmp" != "no"; then
1584 AC_DEFINE([HAS_LIBRTMP], [1], [Whether to use libRTMP library.])
1588 AC_MSG_NOTICE($librtmp_disabled)
1592 if test "x$use_samba" != "xno"; then
1593 PKG_CHECK_MODULES([SAMBA], [smbclient],
1594 [INCLUDES="$INCLUDES $SAMBA_CFLAGS"; LIBS="$LIBS $SAMBA_LIBS"],
1595 [AC_CHECK_LIB([smbclient], [main],,
1596 use_samba=no;AC_MSG_ERROR($missing_library))
1600 AC_MSG_RESULT($samba_disabled)
1604 if test "x$use_samba" != "xno"; then
1605 AC_DEFINE([HAVE_LIBSMBCLIENT], [1], [Define to 1 if you have Samba installed])
1610 if test "$use_libnfs" != "no"; then
1611 AC_CHECK_HEADERS([nfsc/libnfs.h],,
1612 [if test "$use_libnfs" = "yes"; then
1613 AC_MSG_ERROR($libnfs_not_found)
1615 elif test "$use_libnfs" != "no"; then
1616 AC_MSG_NOTICE($libnfs_not_found)
1621 if test "$use_libnfs" != "no"; then
1622 XB_FIND_SONAME([NFS], [nfs], [use_libnfs])
1624 if test "$use_libnfs" != "no"; then
1625 AC_DEFINE([HAVE_LIBNFS], [1], [Whether to use libnfs library.])
1630 AC_MSG_NOTICE($libnfs_disabled)
1635 if test "x$use_libafpclient" != "xno"; then
1636 AC_CHECK_HEADERS([afpfs-ng/libafpclient.h],,
1637 [if test "x$use_libafpclient" = "xyes"; then
1638 AC_MSG_ERROR($libafpclient_not_found)
1639 elif test "x$use_libafpclient" != "xno"; then
1640 AC_MSG_NOTICE($libafpclient_not_found)
1641 use_libafpclient="no"
1644 if test "x$use_libafpclient" != "xno"; then
1645 XB_FIND_SONAME([AFPCLIENT], [afpclient], [use_libafpclient])
1646 AC_DEFINE([HAVE_LIBAFPCLIENT], [1], [Whether to use libafpclient library.])
1650 AC_MSG_NOTICE($libafpclient_disabled)
1653 # libplist for airplay feature
1655 if test "$use_airplay" != "no"; then
1656 AC_CHECK_HEADER([plist/plist.h],,
1657 [if test "$use_airplay" = "yes"; then
1658 AC_MSG_ERROR($libplist_not_found)
1659 elif test "$use_airplay" != "no"; then
1660 AC_MSG_NOTICE($libplist_not_found)
1665 if test "$use_airplay" != "no"; then
1666 XB_FIND_SONAME([PLIST], [plist], [use_airplay])
1668 AC_DEFINE([HAVE_LIBPLIST],[1],["Define to 1 if you have libplist."])
1672 # libshairplay for AirTunes (prefered lib)
1674 if test "x$use_airtunes" != "xno"; then
1675 AC_CHECK_HEADERS([shairplay/raop.h],USE_AIRTUNES=1,
1676 [AC_MSG_NOTICE($libshairplay_not_found)
1679 if test "x$USE_AIRTUNES" != "x0"; then
1680 XB_FIND_SONAME([SHAIRPLAY], [shairplay], [USE_AIRTUNES])
1682 AC_CHECK_MEMBERS([struct raop_callbacks_s.cls],,,
1683 [[#include <shairplay/raop.h>]])
1684 AC_DEFINE([HAVE_LIBSHAIRPLAY],[1],["Define to 1 if you have libshairplay."])
1687 #libshairport - as a fallback for AirTunes
1688 if test "x$USE_AIRTUNES" == "x0"; then
1689 AC_CHECK_HEADERS([shairport/shairport.h],USE_AIRTUNES=1,
1690 [AC_MSG_NOTICE($libshairport_not_found)
1693 if test "x$USE_AIRTUNES" != "x0"; then
1694 XB_FIND_SONAME([SHAIRPORT], [shairport], [USE_AIRTUNES])
1695 AC_CHECK_MEMBERS([struct AudioOutput.ao_set_metadata],,,
1696 [[#include <shairport/shairport.h>]])
1697 AC_DEFINE([HAVE_LIBSHAIRPORT],[1],["Define to 1 if you have libshairport."])
1701 if test "x$USE_AIRTUNES" == "x0"; then
1702 if test "x$use_airtunes" == "xyes"; then
1703 AC_MSG_ERROR("No airtunes library could be found. (libshairport/libshairplay)")
1711 if test "$host_vendor" = "apple" ; then
1713 AC_MSG_NOTICE($libudev_disabled)
1715 if test "$use_libudev" = "auto"; then
1716 PKG_CHECK_MODULES([UDEV],[libudev],,[use_libudev="no";AC_MSG_RESULT($libudev_not_found)])
1717 elif test "$use_libudev" = "yes" ; then
1718 PKG_CHECK_MODULES([UDEV],[libudev],,[use_libudev="no";AC_MSG_ERROR($libudev_not_found)])
1720 AC_MSG_NOTICE($libudev_disabled)
1723 if test "x$use_libudev" != "xno"; then
1724 USE_LIBUDEV=1;INCLUDES="$INCLUDES $UDEV_CFLAGS";LIBS="$LIBS $UDEV_LIBS"
1725 AC_DEFINE([HAVE_LIBUDEV],[1],["Define to 1 if libudev is installed"])
1732 # if libudev is available, we don't need libusb
1733 if test "x$use_libudev" != "xno"; then
1735 AC_MSG_NOTICE($libusb_disabled_udev_found)
1737 if test "$host_vendor" = "apple" ; then
1739 AC_MSG_NOTICE($libusb_disabled)
1741 if echo "$ARCH" | grep -q freebsd ; then
1742 AC_CHECK_LIB([usb],[main],
1743 [use_libusb="yes";USB_LIBS="-lusb"],
1744 [use_libusb="no";AC_MSG_RESULT($libusb_not_found)])
1745 elif test "$use_libusb" = "auto"; then
1746 PKG_CHECK_MODULES([USB],[libusb],,[use_libusb="no";AC_MSG_RESULT($libusb_not_found)])
1747 elif test "$use_libusb" = "yes"; then
1748 PKG_CHECK_MODULES([USB],[libusb],,[use_libusb="no";AC_MSG_ERROR($libusb_not_found)])
1750 AC_MSG_NOTICE($libusb_disabled)
1753 if test "x$use_libusb" != "xno"; then
1754 USE_LIBUSB=1;INCLUDES="$INCLUDES $USB_CFLAGS";LIBS="$LIBS $USB_LIBS"
1755 AC_DEFINE([HAVE_LIBUSB],[1],["Define to 1 if libusb is installed"])
1762 if test "x$use_libcec" != "xno"; then
1763 # libcec is dyloaded, so we need to check for its headers and link any depends.
1764 if test "x$use_libcec" != "xno"; then
1765 if test "x$use_libcec" != "xauto"; then
1766 PKG_CHECK_MODULES([CEC],[libcec >= 2.1.0],,[use_libcec="no";AC_MSG_ERROR($libcec_disabled)])
1768 PKG_CHECK_MODULES([CEC],[libcec >= 2.1.0],,[use_libcec="no";AC_MSG_RESULT($libcec_disabled)])
1771 if test "x$use_libcec" != "xno"; then
1772 INCLUDES="$INCLUDES $CEC_CFLAGS"
1773 USE_LIBCEC=1;AC_DEFINE([HAVE_LIBCEC],[1],["Define to 1 if libcec is installed"])
1774 XB_FIND_SONAME([LIBCEC],[cec],[use_libcec])
1775 AC_MSG_NOTICE($libcec_enabled)
1778 AC_MSG_NOTICE($libcec_disabled)
1783 AC_MSG_NOTICE($libcec_disabled)
1787 if test "$use_libcap" != "no"; then
1788 AC_CHECK_HEADERS([sys/capability.h],,
1789 [if test "$use_libcap" = "yes"; then
1790 AC_MSG_ERROR($libcap_not_found)
1791 elif test "$use_libcap" != "no"; then
1792 AC_MSG_NOTICE($libcap_not_found)
1796 if test "$use_libcap" != "no"; then
1797 AC_CHECK_LIB([cap], main, LIBS="$LIBS -lcap", use_libcap=no)
1799 if test "$use_libcap" != "no"; then
1800 AC_DEFINE([HAVE_LIBCAP], [1], [Whether to use libcap library.])
1803 AC_MSG_NOTICE($libcap_disabled)
1806 ### External libraries checks
1808 # Hacks for supporting libav
1811 if test "$use_libav_hacks" = "yes"; then
1812 export PKG_CONFIG_PATH="${srcdir}/lib/xbmc-libav-hacks/pkgconfig/:$PKG_CONFIG_PATH"
1814 AC_DEFINE([USE_LIBAV_HACKS], [1], [Whether to use libav compatibility hacks.])
1818 if test "$use_external_ffmpeg" = "yes"; then
1819 FFMPEG_LIBNAMES="libavcodec libavfilter libavformat libavutil libpostproc libswscale libswresample"
1821 PKG_CHECK_MODULES([FFMPEG], [$FFMPEG_LIBNAMES],
1822 [INCLUDES="$INCLUDES $FFMPEG_CFLAGS"; LIBS="$LIBS $FFMPEG_LIBS"],
1823 AC_MSG_ERROR($missing_library))
1825 # in case the headers are in a custom directory
1826 SAVE_CPPFLAGS="$CPPFLAGS"
1827 CPPFLAGS="$CPPFLAGS $FFMPEG_CFLAGS"
1829 AC_CHECK_HEADERS([libavcodec/avcodec.h libavfilter/avfilter.h libavformat/avformat.h libavutil/avutil.h libpostproc/postprocess.h libswscale/swscale.h],,
1830 [AC_MSG_ERROR($missing_headers)])
1832 AC_MSG_NOTICE($external_ffmpeg_enabled)
1833 USE_EXTERNAL_FFMPEG=1
1834 AC_DEFINE([USE_EXTERNAL_FFMPEG], [1], [Whether to use external FFmpeg libraries.])
1836 CPPFLAGS="$SAVE_CPPFLAGS"
1838 AC_MSG_NOTICE($external_ffmpeg_disabled)
1839 USE_EXTERNAL_FFMPEG=0
1842 echo "Checking for SWIG installation"
1843 AC_PATH_PROG(SWIG_EXE, swig, "none")
1844 if test "$SWIG_EXE" = "none"; then
1845 AC_PATH_PROG(SWIG20_EXE, swig2.0, "none")
1846 if test "$SWIG20_EXE" != "none" ; then
1847 SWIG_EXE=$SWIG20_EXE
1850 if test "$SWIG_EXE" = "none"; then
1851 AC_MSG_ERROR($missing_program)
1853 final_message="$final_message\n SWIG Available:\tYes"
1855 echo "Checking for a jre installation"
1856 AC_PATH_PROG(JAVA_EXE, java, "none")
1857 if test "$JAVA_EXE" = "none"; then
1858 AC_MSG_ERROR($missing_program)
1860 final_message="$final_message\n JRE Available:\tYes"
1862 echo "Checking for doxygen installation"
1863 AC_PATH_PROG(DOXYGEN_EXE, doxygen, "none")
1864 if test "$DOXYGEN_EXE" = "none"; then
1865 AC_MSG_WARN([Unable to find doxygen installation. Will not be able to make docstrings for the python api])
1866 final_message="$final_message\n Doxygen Available:\tNo"
1869 final_message="$final_message\n Doxygen Available:\tYes"
1874 if test "x$use_vdpau" != "xno"; then
1875 if test "$host_vendor" = "apple" ; then
1876 if test "x$use_vdpau" = "xyes"; then
1877 AC_MSG_ERROR([VDPAU not supported on this platform])
1880 AC_MSG_NOTICE($vdpau_disabled)
1885 AC_CHECK_HEADER([vdpau/vdpau.h],AC_DEFINE([HAVE_LIBVDPAU], [],
1886 [Define to 1 if you have the 'vdpau' library (-lvdpau).]),
1887 [if test "x$use_vdpau" = "xyes"; then
1889 AC_MSG_ERROR([$vdpau_not_found])
1893 AC_MSG_RESULT($vdpau_not_found)
1898 AC_MSG_NOTICE($vdpau_disabled)
1902 if test "x$use_vaapi" != "xno"; then
1903 if test "$host_vendor" = "apple" ; then
1904 if test "x$use_vaapi" = "xyes"; then
1905 AC_MSG_ERROR([VAAPI not supported on this platform])
1908 AC_MSG_NOTICE($vaapi_disabled)
1912 initial_val=$use_vaapi
1913 AC_CHECK_LIB([va], main, :, use_vaapi=no)
1914 if test "x$use_vaapi" != "xno"; then
1915 AC_CHECK_LIB([va-glx], main, LIBS="-lva -lva-glx $LIBS", use_vaapi=no, -lva)
1918 if test "x$use_vaapi" = "xno"; then
1919 if test "x$initial_val" = "xyes"; then
1920 AC_MSG_ERROR($vaapi_not_found)
1922 AC_MSG_RESULT($vaapi_not_found)
1926 AC_DEFINE([HAVE_LIBVA], [1], [Define to 1 if you have the 'vaapi' libraries (-lva AND -lva-glx)])
1931 AC_MSG_NOTICE($vaapi_disabled)
1936 if test "x$use_crystalhd" != "xno"; then
1937 SAVE_CFLAGS="$CFLAGS"
1938 CFLAGS="-D__LINUX_USER__"
1939 AC_CHECK_HEADER([libcrystalhd/libcrystalhd_if.h], [],
1940 [ if test "x$use_crystalhd" = "xyes"; then
1941 AC_MSG_ERROR($crystalhd_not_found)
1944 AC_MSG_RESULT($crystalhd_not_found)
1948 CFLAGS="$SAVE_CFLAGS"
1949 if test "$host_vendor" != "apple"; then
1950 XB_FIND_SONAME([CRYSTALHD], [crystalhd], [use_crystalhd])
1952 if test "x$use_crystalhd" != "xno"; then
1953 SAVE_CFLAGS="$CFLAGS"
1954 CFLAGS="-D__LINUX_USER__ -lcrystalhd"
1955 # check for new crystalhd lib
1957 [AC_LANG_SOURCE([#include <libcrystalhd/bc_dts_types.h>
1958 #include <libcrystalhd/bc_dts_defs.h>
1959 PBC_INFO_CRYSTAL bCrystalInfo;])],
1960 [ AC_DEFINE([HAVE_LIBCRYSTALHD], [2], [Define to 2 if you have the 'New Broadcom Crystal HD' library.]) ],
1961 [ AC_DEFINE([HAVE_LIBCRYSTALHD], [1], [Define to 1 if you have the 'Old Broadcom Crystal HD' library.]) ])
1962 CFLAGS="$SAVE_CFLAGS"
1966 AC_MSG_NOTICE($crystalhd_disabled)
1971 if test "x$use_vtbdecoder" != "xno"; then
1972 if test "$host_vendor" = "apple" ; then
1973 HAVE_VIDEOTOOLBOXDECODER=1
1974 AC_DEFINE([HAVE_VIDEOTOOLBOXDECODER], [1], [Define to 1 if you have the 'VTBDecoder' library.])
1975 AC_MSG_NOTICE($vtbdecoder_enabled)
1977 if test "x$use_vtbdecoder" = "xyes"; then
1978 AC_MSG_ERROR([VTB Decoder not supported on this platform])
1981 AC_MSG_NOTICE($vtbdecoder_disabled)
1985 AC_MSG_NOTICE($vtbdecoder_disabled)
1989 if test "$host_vendor" = "apple" ; then
1992 AC_MSG_NOTICE($openmax_disabled)
1993 elif test "$target_platform" = "target_raspberry_pi"; then
1996 AC_MSG_NOTICE($openmax_disabled)
1998 if test "$use_gles" = "yes" && test "$use_openmax" = "auto"; then
1999 PKG_CHECK_MODULES([OPENMAX], [libomxil-bellagio],
2000 USE_OPENMAX=1;[INCLUDES="$INCLUDES $OPENMAX_CFLAGS"; LIBS="$LIBS $OPENMAX_LIBS"],
2001 use_openmax=no;USE_OPENMAX=0;AC_MSG_RESULT($openmax_not_found))
2002 elif test "$use_gles" = "yes" && test "$use_openmax" = "yes"; then
2003 PKG_CHECK_MODULES([OPENMAX], [libomxil-bellagio],
2004 USE_OPENMAX=1;[INCLUDES="$INCLUDES $OPENMAX_CFLAGS"; LIBS="$LIBS $OPENMAX_LIBS"],
2005 AC_MSG_ERROR($openmax_not_found))
2007 AC_MSG_NOTICE($openmax_disabled)
2013 # yajl version check (yajl_version.h was added in yajl 2.0)
2014 AC_CHECK_HEADERS([yajl/yajl_version.h], [], [
2015 AC_DEFINE(YAJL_MAJOR, 1, [yajl version 1])
2018 # additional internal players
2019 case $add_players in
2021 XB_ADD_PLAYER([OMXPLAYER], [omxplayer])
2025 # additional internal codecs
2026 # remember to convert commas to spaces
2027 for codecs in `echo $add_codecs | sed 's/,/ /g'`; do
2030 AC_CHECK_HEADER([amcodec/codec_error.h],, AC_MSG_ERROR($missing_headers))
2031 XB_ADD_CODEC([LIBAMCODEC], [amcodec], [$codecs])
2034 XB_ADD_CODEC([LIBSTAGEFRIGHT], [libstagefright], [$codecs])
2040 # platform specific bin utilities
2041 if test "$build_vendor" != "apple" ; then
2042 AC_CHECK_PROG(HAVE_GAWK,gawk,"yes","no",)
2043 if test "$HAVE_GAWK" = "no" ; then
2044 AC_MSG_ERROR($missing_program)
2048 if test "$use_arch" != "arm" ; then
2049 AC_CHECK_PROG(HAVE_CMAKE,cmake,"yes","no",)
2050 if test "$HAVE_CMAKE" = "no" ; then
2051 AC_MSG_ERROR($missing_program)
2055 AC_CHECK_PROG(HAVE_GPERF,gperf,"yes","no",)
2056 if test "$HAVE_GPERF" = "no" ; then
2057 AC_MSG_ERROR($missing_program)
2060 AC_CHECK_PROG(HAVE_UNZIP,unzip,"yes","no",)
2061 if test "$HAVE_UNZIP" = "no" ; then
2062 AC_MSG_ERROR($missing_program)
2065 AC_CHECK_PROG(HAVE_ZIP,zip,"yes","no",)
2066 if test "$HAVE_ZIP" = "no" ; then
2067 AC_MSG_ERROR($missing_program)
2070 if test "$ARCH" = "i486-linux" || test "$ARCH" = "x86-freebsd"; then
2071 AC_CHECK_PROG(HAVE_NASM,nasm,"yes","no",)
2072 if test "$HAVE_NASM" = "no" ; then
2073 AC_MSG_ERROR($missing_program)
2077 # Checks for header files.
2081 AC_CHECK_HEADERS([arpa/inet.h fcntl.h float.h inttypes.h limits.h locale.h \
2082 malloc.h memory.h netdb.h netinet/in.h stddef.h stdint.h stdlib.h string.h \
2083 strings.h sys/file.h sys/ioctl.h sys/mount.h sys/param.h sys/socket.h \
2084 sys/time.h sys/timeb.h sys/vfs.h termios.h unistd.h utime.h wchar.h wctype.h])
2085 AC_CHECK_HEADERS([cdio/iso9660.h],,AC_MSG_ERROR([$missing_headers]))
2087 # Checks for typedefs, structures, and compiler characteristics.
2103 AC_CHECK_MEMBERS([struct stat.st_rdev])
2112 if test "$cross_compiling" = "yes"; then
2113 final_message="$final_message\n Crosscomp.:\tYes"
2114 if [[ -d "$NATIVE_ROOT" ]]; then
2115 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -I$NATIVE_ROOT/include"
2116 CXXFLAGS_FOR_BUILD="$CXXFLAGS_FOR_BUILD -I$NATIVE_ROOT/include"
2117 LDFLAGS_FOR_BUILD="$LDFLAGS_FOR_BUILD -L$NATIVE_ROOT/lib"
2118 if test "$host_vendor" != "apple" ; then
2119 LDFLAGS_FOR_BUILD="$LDFLAGS_FOR_BUILD -Wl,-rpath=$NATIVE_ROOT/lib"
2121 final_message="$final_message\n Native Root:\t$NATIVE_ROOT"
2124 final_message="$final_message\n Crosscomp.:\tNo"
2127 final_message="$final_message\n target ARCH:\t$use_arch"
2128 final_message="$final_message\n target CPU:\t$use_cpu"
2130 if test "$use_gles" = "yes"; then
2131 final_message="$final_message\n OpenGLES:\tYes"
2136 if test "$use_gl" = "yes"; then
2137 final_message="$final_message\n OpenGL:\tYes"
2140 final_message="$final_message\n OpenGL:\tNo (Very Slow)"
2141 SDL_DEFINES="$SDL_DEFINES -DHAS_SDL_2D"
2146 if test "$use_alsa" = "yes"; then
2148 AC_DEFINE([USE_ALSA],[1],["Define to 1 if alsa is installed"])
2149 final_message="$final_message\n ALSA:\t\tYes"
2152 final_message="$final_message\n ALSA:\t\tNo"
2155 if test "$use_dbus" = "yes"; then
2156 final_message="$final_message\n DBUS:\t\tYes"
2158 final_message="$final_message\n DBUS:\t\tNo"
2161 if test "x$use_vdpau" != "xno"; then
2162 final_message="$final_message\n VDPAU:\tYes"
2164 final_message="$final_message\n VDPAU:\tNo"
2167 if test "x$use_vaapi" != "xno"; then
2168 final_message="$final_message\n VAAPI:\tYes"
2170 final_message="$final_message\n VAAPI:\tNo"
2173 if test "x$use_crystalhd" != "xno"; then
2174 final_message="$final_message\n CrystalHD:\tYes"
2176 final_message="$final_message\n CrystalHD:\tNo"
2179 if test "x$use_vtbdecoder" != "xno"; then
2180 final_message="$final_message\n VTBDecoder:\tYes"
2182 final_message="$final_message\n VTBDecoder:\tNo"
2185 if test "$use_openmax" != "no"; then
2186 final_message="$final_message\n OpenMax:\tYes"
2188 final_message="$final_message\n OpenMax:\tNo"
2191 if test "$use_joystick" = "yes"; then
2192 final_message="$final_message\n Joystick:\tYes"
2193 SDL_DEFINES="$SDL_DEFINES -DHAS_SDL_JOYSTICK"
2195 final_message="$final_message\n Joystick:\tNo"
2198 if test "$use_xrandr" = "yes"; then
2199 final_message="$final_message\n XRandR:\tYes"
2202 final_message="$final_message\n XRandR:\tNo"
2206 if test "$use_waveform" = "yes"; then
2207 final_message="$final_message\n Waveform:\tYes"
2209 final_message="$final_message\n Waveform:\tNo"
2212 if test "$use_spectrum" = "yes"; then
2213 final_message="$final_message\n Spectrum:\tYes"
2215 final_message="$final_message\n Spectrum:\tNo"
2218 if test "$use_goom" = "yes"; then
2219 final_message="$final_message\n GOOM:\t\tYes"
2221 final_message="$final_message\n GOOM:\t\tNo"
2224 if test "$use_rsxs" = "yes"; then
2225 final_message="$final_message\n RSXS:\t\tYes"
2227 final_message="$final_message\n RSXS:\t\tNo"
2230 if test "$use_fishbmc" = "yes"; then
2231 final_message="$final_message\n FishBMC:\tYes"
2233 final_message="$final_message\n FishBMC:\tNo"
2236 if test "$use_projectm" = "yes"; then
2237 final_message="$final_message\n ProjectM:\tYes"
2239 final_message="$final_message\n ProjectM:\tNo"
2242 if test "$use_skin_touched" = "yes"; then
2243 final_message="$final_message\n Skin Touched:\tYes"
2245 final_message="$final_message\n Skin Touched:\tNo"
2248 if test "$use_x11" = "yes"; then
2249 final_message="$final_message\n X11:\t\tYes"
2251 final_message="$final_message\n X11:\t\tNo"
2254 if test "$use_wayland" = "yes"; then
2255 final_message="$final_message\n Wayland:\tYes"
2259 final_message="$final_message\n Wayland:\tNo"
2262 if test "$use_libbluray" = "yes"; then
2263 final_message="$final_message\n Bluray:\tYes"
2265 final_message="$final_message\n Bluray:\tNo"
2268 if test "x$use_texturepacker" != "xno"; then
2269 final_message="$final_message\n TexturePacker:Yes"
2272 final_message="$final_message\n TexturePacker:No"
2276 if test "$use_mid" = "yes"; then
2277 final_message="$final_message\n MID Support:\tYes"
2278 SDL_DEFINES="$SDL_DEFINES -DMID"
2280 final_message="$final_message\n MID Support:\tNo"
2285 if test "x$use_ccache" != "xno"; then
2286 AC_PATH_PROG(CCACHE,ccache,none)
2287 if test "$ac_cv_path_CCACHE" = "none"; then
2288 if test "x$use_ccache" = "xyes"; then
2289 AC_MSG_ERROR([ccache not found.]);
2291 AC_MSG_NOTICE([ccache not found. Falling back to default CC])
2292 final_message="$final_message\n ccache:\tNo"
2295 CC="$ac_cv_path_CCACHE $CC"
2296 CXX="$ac_cv_path_CCACHE $CXX"
2297 AC_MSG_NOTICE(enabling ccache)
2298 final_message="$final_message\n ccache:\tYes"
2301 final_message="$final_message\n ccache:\tNo"
2304 if test "$use_alsa" = "yes"; then
2305 final_message="$final_message\n ALSA Support:\tYes"
2307 final_message="$final_message\n ALSA Support:\tNo"
2310 if test "x$use_pulse" != "xno"; then
2311 XBMC_STANDALONE_SH_PULSE=tools/Linux/xbmc-standalone.sh.pulse
2312 final_message="$final_message\n PulseAudio:\tYes"
2314 XBMC_STANDALONE_SH_PULSE=/dev/null
2315 final_message="$final_message\n PulseAudio:\tNo"
2318 if test "$use_hal" = "yes"; then
2319 final_message="$final_message\n HAL Support:\tYes"
2321 final_message="$final_message\n HAL Support:\tNo"
2325 if test "$use_dvdcss" = "yes"; then
2326 AC_MSG_NOTICE($dvdcss_enabled)
2327 final_message="$final_message\n DVDCSS:\tYes"
2329 SKIP_CONFIG_DVDCSS=0
2330 DVDREAD_CFLAGS="-D_XBMC -DHAVE_DVDCSS_DVDCSS_H"
2332 AC_MSG_NOTICE($dvdcss_disabled)
2333 final_message="$final_message\n DVDCSS:\tNo"
2335 SKIP_CONFIG_DVDCSS=1
2336 DVDREAD_CFLAGS="-D_XBMC -UHAVE_DVDCSS_DVDCSS_H"
2338 if test "$host_vendor" = "apple"; then
2339 DVDREAD_CFLAGS="$DVDREAD_CFLAGS -D__DARWIN__"
2342 # Google Test Framework
2343 if test "$configure_gtest" = "yes"; then
2344 AC_MSG_NOTICE($gtest_enabled)
2345 final_message="$final_message\n Google Test Framework Configured:\tYes"
2349 AC_MSG_NOTICE($gtest_disabled)
2350 final_message="$final_message\n Google Test Framework Configured:\tNo"
2355 if test "$use_avahi" = "yes"; then
2356 final_message="$final_message\n Avahi:\tYes"
2358 final_message="$final_message\n Avahi:\tNo"
2361 if test "$use_mdnsembedded" != "no"; then
2362 final_message="$final_message\n mDNSEmbedded:\tYes"
2364 final_message="$final_message\n mDNSEmbedded:\tNo"
2367 if test "$use_nonfree" = "yes"; then
2368 final_message="$final_message\n Non-free:\tYes"
2370 AC_DEFINE([HAVE_XBMC_NONFREE], [1], [Define to 1 to enable non-free components.])
2373 final_message="$final_message\n Non-free:\tNo"
2376 if test "$use_asap" = "yes"; then
2377 AC_CHECK_PROGS(HAVE_GDC,gdc-4.4 gdc-4.3 gdc,"no")
2378 if test "$HAVE_GDC" = "no"; then
2379 AC_MSG_ERROR($missing_program);
2381 AC_CHECK_PROG(HAVE_FPC,fpc,"yes","no")
2382 if test "$HAVE_FPC" = "no"; then
2383 AC_MSG_ERROR($missing_program);
2386 AC_DEFINE([USE_ASAP_CODEC], [1], [Define to 1 to enable ASAP codec.])
2387 final_message="$final_message\n ASAP Codec:\tYes"
2390 final_message="$final_message\n ASAP Codec:\tNo"
2393 if test "$use_mysql" = "yes"; then
2394 final_message="$final_message\n MySQL:\tYes"
2397 final_message="$final_message\n MySQL:\tNo"
2400 if test "$use_webserver" = "yes"; then
2401 final_message="$final_message\n Webserver:\tYes"
2404 final_message="$final_message\n Webserver:\tNo"
2408 if test "$use_libssh" != "no"; then
2409 final_message="$final_message\n libssh support:\tYes"
2411 final_message="$final_message\n libssh support:\tNo"
2414 if test "$use_librtmp" != "no"; then
2415 final_message="$final_message\n libRTMP support:\tYes"
2417 final_message="$final_message\n libRTMP support:\tNo"
2420 if test "x$use_samba" != "xno"; then
2421 final_message="$final_message\n libsmbclient support:\tYes"
2423 final_message="$final_message\n libsmbclient support:\tNo"
2426 if test "$use_libnfs" != "no"; then
2427 final_message="$final_message\n libnfs client support:Yes"
2429 final_message="$final_message\n libnfs client support:No"
2432 if test "x$use_libafpclient" != "xno"; then
2433 final_message="$final_message\n libafpclient support:\tYes"
2435 final_message="$final_message\n libafpclient support:\tNo"
2438 if test "$use_airplay" != "no"; then
2439 final_message="$final_message\n AirPlay support:\tYes"
2441 final_message="$final_message\n AirPLay support:\tNo"
2444 if test "x$use_airtunes" != "xno"; then
2445 if test "x$USE_LIBSHAIRPLAY" == "x1"; then
2446 final_message="$final_message\n AirTunes support (libshairplay):\tYes"
2448 final_message="$final_message\n AirTunes support (libshairport):\tYes"
2451 final_message="$final_message\n AirTunes support:\tNo"
2454 if test "x$use_upnp" != "xno"; then
2455 final_message="$final_message\n UPnP support:\t\tYes"
2457 AC_DEFINE([USE_UPNP], [1], [Define to 1 to enable UPnP support.])
2460 final_message="$final_message\n UPnP support:\t\tNo"
2463 if test "$use_optical_drive" = "yes"; then
2464 final_message="$final_message\n Optical drive:\tYes"
2466 final_message="$final_message\n Optical drive:\tNo"
2469 if test "x$use_libudev" != "xno"; then
2470 final_message="$final_message\n libudev support:\tYes"
2472 final_message="$final_message\n libudev support:\tNo"
2475 if test "x$use_libusb" != "xno"; then
2476 final_message="$final_message\n libusb support:\tYes"
2478 final_message="$final_message\n libusb support:\tNo"
2481 if test "x$use_libcec" != "xno"; then
2482 final_message="$final_message\n libcec support:\tYes"
2484 final_message="$final_message\n libcec support:\tNo"
2487 if test "x$use_libmp3lame" != "xno"; then
2488 final_message="$final_message\n libmp3lame support:\tYes"
2490 final_message="$final_message\n libmp3lame support:\tNo"
2493 if test "x$use_libvorbisenc" != "xno"; then
2494 final_message="$final_message\n libvorbisenc support:\tYes"
2496 final_message="$final_message\n libvorbisenc support:\tNo"
2499 if test "x$use_libcap" != "xno"; then
2500 final_message="$final_message\n libcap support:\tYes"
2502 final_message="$final_message\n libcap support:\tNo"
2505 if test "x$add_players" != "xno"; then
2506 final_message="$final_message\n additional players:\tYes, $add_players"
2508 final_message="$final_message\n additional players:\tNo"
2511 if test "x$add_codecs" != "xno"; then
2512 final_message="$final_message\n additional codecs:\tYes, $add_codecs"
2514 final_message="$final_message\n additional codecs:\tNo"
2517 ### External libraries messages
2519 if test "$use_external_ffmpeg" = "yes"; then
2520 final_message="$final_message\n External FFmpeg:\tYes"
2522 final_message="$final_message\n External FFmpeg:\tNo"
2525 if test "$host_vendor" = "apple" ; then
2526 # built internal but referenced as external, we link directly to them.
2527 # this MUST be the last thing before OUTPUT_FILES as they do not
2528 # exist until after we build FFMpeg.
2529 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libavcodec -lavcodec"
2530 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libavfilter -lavfilter"
2531 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libswresample -lswresample"
2532 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libavformat -lavformat"
2533 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libavutil -lavutil"
2534 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libpostproc -lpostproc"
2535 LIBS="$LIBS -L\$(abs_top_srcdir)/lib/ffmpeg/libswscale -lswscale"
2539 DISABLE_PVR_ADDON_CONFIG=1
2540 if [[ -f "pvr-addons/Makefile.am" ]]; then
2541 final_message="$final_message\n PVR add-ons:\t\tYes"
2543 DISABLE_PVR_ADDON_CONFIG=0
2545 final_message="$final_message\n PVR add-ons:\t\tNo"
2548 OUTPUT_FILES="Makefile \
2550 addons/skin.confluence/media/Makefile \
2552 xbmc/cdrip/Makefile \
2553 xbmc/cores/Makefile \
2554 xbmc/cores/VideoRenderers/Makefile \
2555 xbmc/cores/dvdplayer/Makefile \
2557 lib/libdvd/Makefile \
2558 xbmc/cores/DllLoader/Makefile \
2559 xbmc/cores/DllLoader/exports/Makefile \
2560 xbmc/cores/dvdplayer/DVDCodecs/Makefile \
2561 xbmc/cores/dvdplayer/DVDCodecs/Audio/Makefile \
2562 xbmc/cores/dvdplayer/DVDCodecs/Overlay/Makefile \
2563 xbmc/cores/dvdplayer/DVDCodecs/Video/Makefile \
2564 xbmc/cores/dvdplayer/DVDDemuxers/Makefile \
2565 xbmc/cores/dvdplayer/DVDSubtitles/Makefile \
2566 xbmc/cores/AudioEngine/Makefile \
2567 xbmc/cores/paplayer/Makefile \
2568 xbmc/cores/omxplayer/Makefile \
2569 lib/timidity/Makefile \
2571 lib/nosefart/Makefile \
2572 lib/libsidplay2/Makefile \
2573 lib/vgmstream/Makefile \
2574 lib/snesapu/SNES/SNESAPU/Makefile \
2575 lib/stsound/StSoundLibrary/Makefile \
2576 xbmc/cores/playercorefactory/Makefile \
2577 xbmc/music/karaoke/Makefile \
2579 xbmc/guilib/Makefile \
2580 xbmc/input/linux/Makefile \
2581 xbmc/interfaces/Makefile \
2582 xbmc/network/Makefile \
2583 xbmc/network/upnp/Makefile \
2584 lib/libRTV/Makefile \
2585 lib/libexif/Makefile \
2586 lib/libXDAAP/Makefile \
2587 lib/cmyth/Makefile \
2588 lib/libhdhomerun/Makefile \
2589 lib/libsquish/Makefile \
2590 lib/cximage-6.0/Makefile \
2591 lib/libUPnP/Makefile \
2592 xbmc/DllPaths_generated.h \
2593 xbmc/DllPaths_generated_android.h \
2594 xbmc/freebsd/Makefile \
2595 xbmc/linux/Makefile \
2596 xbmc/filesystem/Makefile \
2597 xbmc/screensavers/rsxs-0.9/xbmc/Makefile \
2598 xbmc/visualizations/XBMCProjectM/Makefile \
2599 xbmc/visualizations/Goom/Makefile \
2600 xbmc/visualizations/OpenGLSpectrum/Makefile \
2601 xbmc/visualizations/fishBMC/Makefile \
2602 xbmc/visualizations/WaveForm/Makefile \
2603 xbmc/windowing/Makefile \
2604 xbmc/windowing/egl/Makefile \
2605 lib/addons/library.xbmc.addon/Makefile \
2606 lib/addons/library.xbmc.codec/Makefile \
2607 lib/addons/library.xbmc.gui/Makefile \
2608 lib/addons/library.xbmc.pvr/Makefile \
2609 xbmc/visualizations/EGLHelpers/Makefile \
2610 tools/Linux/xbmc.sh \
2611 tools/Linux/xbmc-standalone.sh \
2612 tools/TexturePacker/Makefile \
2613 tools/EventClients/Clients/OSXRemote/Makefile \
2614 xbmc/peripherals/bus/Makefile \
2615 xbmc/peripherals/devices/Makefile \
2616 xbmc/android/activity/Makefile \
2617 xbmc/android/loader/Makefile \
2618 xbmc/android/jni/Makefile \
2619 xbmc/utils/Makefile \
2620 xbmc/main/Makefile \
2621 project/cmake/xbmc-config.cmake"
2623 if test "$use_wayland" = "yes"; then
2624 OUTPUT_FILES="$OUTPUT_FILES xbmc/windowing/tests/wayland/Makefile"
2627 if test "$use_skin_touched" = "yes"; then
2628 OUTPUT_FILES="$OUTPUT_FILES addons/skin.touched/media/Makefile"
2631 if test "$use_codec_libstagefright" = "yes"; then
2632 OUTPUT_FILES="$OUTPUT_FILES xbmc/cores/dvdplayer/DVDCodecs/Video/libstagefrightICS/Makefile"
2635 OUTPUT_FILES="$OUTPUT_FILES \
2636 xbmc/interfaces/python/Makefile \
2637 xbmc/interfaces/python/test/Makefile"
2639 # Line below is used so we can use AM_INIT_AUTOMAKE. The corresponding
2640 # .dummy.am does nothing.
2641 AC_CONFIG_FILES([.dummy])
2643 AC_CONFIG_FILES([${OUTPUT_FILES}])
2644 OUTPUT_FILES="$OUTPUT_FILES \
2650 AC_SUBST(CXX_FOR_BUILD)
2651 AC_SUBST(CC_FOR_BUILD)
2652 AC_SUBST(CFLAGS_FOR_BUILD)
2653 AC_SUBST(CXXFLAGS_FOR_BUILD)
2654 AC_SUBST(LDFLAGS_FOR_BUILD)
2655 AC_SUBST(SDL_DEFINES)
2656 AC_SUBST(BUILD_DVDCSS)
2657 AC_SUBST(DISABLE_WAVEFORM)
2658 AC_SUBST(DISABLE_SPECTRUM)
2659 AC_SUBST(DISABLE_GOOM)
2660 AC_SUBST(DISABLE_RSXS)
2661 AC_SUBST(DISABLE_FISHBMC)
2662 AC_SUBST(DISABLE_PROJECTM)
2663 AC_SUBST(USE_SKIN_TOUCHED)
2664 AC_SUBST(USE_EXTERNAL_FFMPEG)
2665 AC_SUBST(USE_STATIC_FFMPEG)
2666 AC_SUBST(USE_LIBAV_HACKS)
2667 AC_SUBST(PYTHON_VERSION)
2668 AC_SUBST(OUTPUT_FILES)
2669 AC_SUBST(HAVE_XBMC_NONFREE)
2670 AC_SUBST(USE_ASAP_CODEC)
2671 AC_SUBST(LIBCURL_BASENAME)
2672 AC_SUBST(LIBFLAC_BASENAME)
2673 AC_SUBST(LIBVORBISFILE_BASENAME)
2674 AC_SUBST(LIBMODPLUG_BASENAME)
2675 AC_SUBST(LIBMAD_BASENAME)
2676 AC_SUBST(LIBOGG_BASENAME)
2677 AC_SUBST(LIBVORBISENC_BASENAME)
2678 AC_SUBST(LIBVORBIS_BASENAME)
2679 AC_SUBST(LIBASS_BASENAME)
2680 AC_SUBST(LIBMEPG2_BASENAME)
2681 AC_SUBST_FILE(XBMC_STANDALONE_SH_PULSE)
2682 AC_SUBST(USE_OPENGL)
2683 AC_SUBST(USE_OPENGLES)
2686 AC_SUBST(USE_CRYSTALHD)
2687 AC_SUBST(USE_LIBSMBCLIENT)
2688 AC_SUBST(USE_LIBNFS)
2689 AC_SUBST(USE_LIBAFPCLIENT)
2690 AC_SUBST(USE_AIRPLAY)
2691 AC_SUBST(USE_OPENMAX)
2693 AC_SUBST(HAVE_LIBPULSE)
2694 AC_SUBST(USE_XRANDR)
2696 AC_SUBST(USE_TEXTUREPACKER)
2697 AC_SUBST(USE_AIRTUNES)
2698 AC_SUBST(USE_LIBUDEV)
2699 AC_SUBST(USE_LIBUSB)
2700 AC_SUBST(USE_LIBCEC)
2702 AC_SUBST(USE_WAYLAND)
2703 AC_SUBST(USE_WEB_SERVER)
2705 AC_SUBST(USE_XKBCOMMON)
2706 AC_SUBST(USE_OMXLIB)
2707 AC_SUBST(USE_ANDROID)
2708 AC_SUBST(GTEST_CONFIGURED)
2709 AC_SUBST(USE_DOXYGEN)
2710 AC_SUBST(USE_PVR_ADDONS)
2711 AC_SUBST(GNUTLS_ALL_LIBS)
2712 AC_SUBST(HOGWEED_ALL_LIBS)
2713 AC_SUBST(VORBISENC_ALL_LIBS)
2715 AC_SUBST(USE_DVBBOX_EGL)
2717 # pushd and popd are not available in other shells besides bash, so implement
2718 # our own pushd/popd functions
2723 if [[ -d "$dirname" ]] && [[ -x "$dirname" ]]; then
2725 XB_DIRSTACK="$dirname ${XB_DIRSTACK:-$PWD}"
2728 AC_MSG_ERROR(xb_pushd: unable to change to $dirname)
2733 if [[ -n "$XB_DIRSTACK" ]]; then
2734 XB_DIRSTACK="${XB_DIRSTACK#* }"
2735 cd "${XB_DIRSTACK%% *}"
2738 AC_MSG_ERROR(xb_popd: unable to go back to previous directory)
2742 # Function to run the configure scripts in our submodules
2743 # Consists of three paramaters, the path to the submodule, the configure command
2744 # with appropriate arguments, and a third parameter set to 1 if we are to skip
2745 # running the script, anything else if not.
2746 AC_DEFUN([XB_CONFIG_MODULE],[
2747 AC_CONFIG_COMMANDS_POST([
2748 if [[ $3 != "1" ]]; then
2749 if [[ -d $1 ]]; then
2752 if [[ $? -ne 0 ]]; then
2754 AC_MSG_ERROR([[Submodule $1 failed to configure]])
2759 AC_MSG_ERROR([[Submodule $1 does not exist]])
2762 AC_MSG_NOTICE([[Skipping configuration of submodule $1.]])
2767 XB_CONFIG_MODULE([lib/ffmpeg], [
2768 if test "$host_vendor" = "apple" ; then
2769 ffmpg_config="--target-os=$ffmpeg_target_os"
2770 # handle disables first, we do individual enables later
2771 ffmpg_config="$ffmpg_config --disable-muxers --disable-encoders"
2772 ffmpg_config="$ffmpg_config --disable-devices --disable-doc"
2773 ffmpg_config="$ffmpg_config --disable-ffplay --disable-ffmpeg"
2774 ffmpg_config="$ffmpg_config --disable-ffprobe --disable-ffserver"
2775 ffmpg_config="$ffmpg_config --enable-vda --disable-crystalhd"
2776 ffmpg_config="$ffmpg_config --disable-decoder=mpeg_xvmc"
2778 # handle conditional enables/disables
2779 if test "$use_debug" = "no"; then
2780 ffmpg_config="$ffmpg_config --disable-debug"
2782 if test "$use_cpu" != "no"; then
2783 ffmpg_config="$ffmpg_config --cpu=$use_cpu"
2785 if test "$use_arch" != "no"; then
2786 ffmpg_config="$ffmpg_config --arch=$use_arch --enable-cross-compile"
2788 if test "$use_arch" = "arm"; then
2789 ffmpg_config="$ffmpg_config --enable-pic"
2790 ffmpg_config="$ffmpg_config --disable-armv5te --disable-armv6t2"
2791 if test "$use_neon" = "yes"; then
2792 ffmpg_config="$ffmpg_config --enable-neon"
2794 ffmpg_config="$ffmpg_config --disable-neon"
2797 ffmpg_config="$ffmpg_config --disable-amd3dnow"
2799 if test "$use_ffmpeg_libvorbis" = "yes"; then
2800 ffmpg_config="$ffmpg_config --enable-libvorbis --enable-muxer=ogg --enable-encoder=libvorbis"
2802 ffmpg_config="$ffmpg_config --disable-libvorbis"
2804 if test "$have_gnutls" = "yes"; then
2805 ffmpg_config="$ffmpg_config --enable-gnutls"
2808 # handle individual enables
2809 ffmpg_config="$ffmpg_config --enable-gpl"
2810 ffmpg_config="$ffmpg_config --enable-postproc"
2811 ffmpg_config="$ffmpg_config --enable-static --enable-pthreads"
2812 ffmpg_config="$ffmpg_config --enable-muxer=spdif --enable-muxer=adts --enable-muxer=asf --enable-muxer=ipod"
2813 ffmpg_config="$ffmpg_config --enable-encoder=ac3 --enable-encoder=aac --enable-encoder=wmav2"
2814 ffmpg_config="$ffmpg_config --enable-protocol=http"
2815 ffmpg_config="$ffmpg_config --enable-runtime-cpudetect"
2817 # ffmpeg will not compile with llvm-gcc-4.2, use clang instead
2820 ffmpg_config="$ffmpg_config --cc=clang" ;;
2822 ffmpg_config="$ffmpg_config --cc=$CC" ;;
2825 # extra-cflags must be passed alone or it gets expanded wrong by the ffmpeg configure
2826 FFMPEG_EXTRACFLAGS="$CFLAGS $FFMPEG_EXTRACFLAGS -w -D_DARWIN_C_SOURCE -Dattribute_deprecated="
2828 LDFLAGS="$LDFLAGS" ./configure --extra-cflags="$FFMPEG_EXTRACFLAGS" $ffmpg_config --as="$AS"
2830 # if using llvm-gcc-4.2 as assembler, -MMD is not enough to generate
2831 # dependency files in the right place, replace it with something that works
2834 sed -ie "s#AS_DEPFLAGS=-MMD#AS_DEPFLAGS=-MMD -MF \$(\@:.o=.d) -MT \$\@#" config.mak ;;
2837 # ffmpeg will use yasm found at ${prefix}/bin during configure
2838 # but then hardcodes 'yasm' in config.mak, fix it.
2839 sed -ie "s#YASM=yasm#YASM=${YASM}#" config.mak
2840 sed -ie "s#YASMDEP=yasm#YASMDEP=${YASM}#" config.mak
2841 sed -ie "s# -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 # #" config.mak
2842 else # oskwon : disable mips arch at ffmpeg configure.
2846 LDFLAGS="$(echo "$LDFLAGS" | sed "s/-Wl,-Bsymbolic-functions//g")" \
2848 --extra-cflags="$PASSED_CFLAGS $FFMPEG_EXTRACFLAGS" \
2849 `if test "$use_debug" = "no"; then echo --disable-debug; fi` \
2850 `if test "$cross_compiling" = "yes"; then echo --enable-cross-compile; fi` \
2851 `if test "$use_arch" != "no"; then echo --arch=$use_arch; fi`\
2852 `if test "$use_cpu" != "no"; then echo --cpu=$use_cpu; fi`\
2853 `if test "$use_neon" = "yes"; then echo --enable-neon; else echo --disable-neon; fi`\
2854 --target-os=$ffmpeg_target_os \
2856 --enable-muxer=spdif \
2857 --enable-muxer=adts \
2858 --enable-muxer=asf \
2859 --enable-muxer=ipod \
2860 --disable-encoders \
2861 --enable-encoder=ac3 \
2862 --enable-encoder=aac \
2863 --enable-encoder=wmav2 \
2864 `if test "$use_ffmpeg_libvorbis" = "yes"; then echo --enable-libvorbis --enable-muxer=ogg --enable-encoder=libvorbis; else echo --disable-libvorbis; fi` \
2865 --disable-decoder=mpeg_xvmc \
2869 --disable-ffserver \
2871 --disable-crystalhd \
2872 `if test "$use_static_ffmpeg" = "yes"; then echo --enable-static --disable-shared; else echo --disable-static --enable-shared; fi` \
2876 `if test "x$use_vdpau" != "xno"; then echo --enable-vdpau; else echo --disable-vdpau; fi` \
2877 `if test "x$use_vaapi" != "xno"; then echo --enable-vaapi; else echo --disable-vaapi; fi` \
2878 `if test "$use_optimizations" != "no"; then echo --enable-optimizations; else echo --disable-optimizations; fi` \
2879 --enable-protocol=http \
2880 `if test "$have_gnutls" = "yes"; then echo --enable-gnutls; fi` \
2882 --enable-runtime-cpudetect \
2883 --enable-runtime-cpudetect \
2885 --disable-mips32r2 \
2886 --disable-mipsdspr1 \
2887 --disable-mipsdspr2 \
2889 `if test "$use_hardcoded_tables" = "yes"; then echo --enable-hardcoded-tables; else echo --disable-hardcoded-tables; fi`\
2890 `if test "$target_platform" = "target_android"; then echo "--custom-libname-with-major=\\$(SLIBPREF)\\$(FULLNAME)-\\$(LIBMAJOR)-${ARCH}\\$(SLIBSUF)"; \
2891 else echo "--custom-libname-with-major=\\$(FULLNAME)-\\$(LIBMAJOR)-${ARCH}\\$(SLIBSUF)"; fi` \
2892 `case $host_cpu in i?86*) echo --disable-pic ;; *) echo --enable-pic ;; esac` \
2894 sed -i -e "s#define HAVE_SYMVER 1#define HAVE_SYMVER 0#" config.h &&
2895 sed -i -e "s#define HAVE_SYMVER_GNU_ASM 1#define HAVE_SYMVER_GNU_ASM 0#" config.h
2897 ], [$USE_EXTERNAL_FFMPEG])
2899 XB_CONFIG_MODULE([lib/libdvd/libdvdcss], [
2903 CFLAGS="$CFLAGS $DROID_DVDLIB_SEEK64" \
2904 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
2905 --host=$host_alias \
2906 --build=$build_alias \
2907 --target=$target_alias \
2911 ], [$SKIP_CONFIG_DVDCSS])
2913 XB_CONFIG_MODULE([lib/libdvd/libdvdread], [
2915 --extra-cflags="$CFLAGS $DVDREAD_CFLAGS -I`pwd`/../libdvdcss/src $DROID_DVDLIB_SEEK64" \
2916 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
2917 --host=$host_alias \
2918 --build=$build_alias \
2919 --target=$target_alias \
2925 mkdir -p `pwd`/../includes/dvdread
2926 cp `pwd`/../libdvdread/src/*.h `pwd`/../includes/dvdread
2927 cp `pwd`/../libdvdread/src/dvdread/*.h `pwd`/../includes/dvdread
2930 XB_CONFIG_MODULE([lib/libdvd/libdvdnav], [
2932 --extra-cflags="$CFLAGS $DVDREAD_CFLAGS -I`pwd`/../includes $DROID_DVDLIB_SEEK64" \
2933 --extra-ldflags="-L`pwd`/../libdvdread/obj" \
2934 --with-dvdread-config="`pwd`/../dvdread-config" \
2935 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
2936 --host=$host_alias \
2937 --build=$build_alias \
2938 --target=$target_alias \
2944 XB_CONFIG_MODULE([xbmc/visualizations/XBMCProjectM/libprojectM],[
2946 rm -f CMakeCache.txt && \
2947 CC="$ORIGCC" CXX="$ORIGCXX" LDFLAGS="$LDFLAGS" cmake \
2948 -DCMAKE_BUILD_TYPE=None -DUSE_FTGL:BOOL=OFF \
2949 -DCMAKE_C_FLAGS:STRING="${CPPFLAGS} ${CFLAGS}" \
2950 -DCMAKE_CXX_FLAGS:STRING="${CPPFLAGS} ${CXXFLAGS}" \
2951 -DCMAKE_INSTALL_PREFIX="${prefix}" \
2952 -DCMAKE_INSTALL_LIBDIR:PATH="${libdir}" \
2953 -DINCLUDE_INSTALL_DIR:PATH="${includedir}" \
2954 -DLIB_INSTALL_DIR:PATH="${libdir}" \
2955 -DSYSCONF_INSTALL_DIR:PATH="${sysconfdir}" \
2956 -DSHARE_INSTALL_PREFIX:PATH="${datadir}" . &&
2957 if test "$host_vendor" = "apple" ; then
2958 # cmake has hardcoded paths to macports which bork our darwin depends cross/ppc, remove them
2959 sed -ie "s|-L/opt/local/lib| |" CMakeFiles/projectM.dir/link.txt
2960 sed -ie "s|-L/opt/local/lib| |" CMakeFiles/projectM.dir/flags.make
2961 sed -ie "s|-I/opt/local/include| |" CMakeFiles/projectM.dir/flags.make
2964 ], [$DISABLE_PROJECTM])
2966 XB_CONFIG_MODULE([xbmc/visualizations/Goom/goom2k4-0],[
2969 CXXFLAGS="$CXXFLAGS" \
2970 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
2971 --host=$host_alias \
2972 --build=$build_alias \
2973 --target=$target_alias \
2979 XB_CONFIG_MODULE([xbmc/screensavers/rsxs-0.9/], [
2980 if test "$host_vendor" = "apple"; then
2981 # clang treats inlines different
2984 TEMPCFLAGS="$CFLAGS";;
2986 TEMPCFLAGS="${CFLAGS} -fgnu89-inline";;
2989 TEMPCFLAGS="$CFLAGS";
2994 CFLAGS="$TEMPCFLAGS" \
2995 CXXFLAGS="$CXXFLAGS" \
2996 `if test "$host_vendor" = "apple"; then echo --with-png=${prefix} --x-includes=/usr/X11/include --x-libraries=/usr/X11/lib; fi` \
2997 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
2998 --host=$host_alias \
2999 --build=$build_alias \
3000 --target=$target_alias \
3001 --without-xscreensaver \
3004 --disable-fieldlines \
3008 --disable-hyperspace \
3011 if echo "$ARCH" | grep -q freebsd ; then
3012 sed -i.back "s;\(STDBOOL_H = \)stdbool.h;\1;" lib/Makefile
3016 XB_CONFIG_MODULE([lib/cpluff], [
3017 ./configure --disable-nls \
3018 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
3019 --host=$host_alias \
3020 --build=$build_alias \
3021 --target=$target_alias CFLAGS="$CFLAGS" CC="$CC" CXX="$CXX" LDFLAGS="$LDFLAGS" LIBS=""
3022 #LDFLAGS="$LDFLAGS -Wl,-read_only_relocs,suppress"
3025 XB_CONFIG_MODULE([lib/gtest], [
3030 --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
3031 --host=$host_alias \
3032 --build=$build_alias \
3033 --target=$target_alias \
3037 ], [$SKIP_CONFIG_GTEST])
3039 XB_CONFIG_MODULE([pvr-addons], [
3041 --prefix="${prefix}" \
3042 --host=$host_alias \
3043 --build=$build_alias \
3044 --target=$target_alias \
3048 CXXFLAGS="$CXXFLAGS"
3049 ], [$DISABLE_PVR_ADDON_CONFIG])
3053 final_message="$final_message\n prefix:\t$prefix\n$dashes"
3054 echo -e "$final_message\n"