# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
-AC_INIT([xbmc], [11.9.7], [http://trac.xbmc.org])
+AC_INIT([xbmc], [12.9.1], [http://trac.xbmc.org])
AC_CONFIG_HEADERS([xbmc/config.h])
AH_TOP([#pragma once])
m4_include([m4/ax_python_devel.m4])
alsa_disabled="== ALSA support disabled. =="
rsxs_enabled="== RSXS enabled. =="
rsxs_disabled="== RSXS disabled. =="
+fishbmc_enabled="== FishBMC enabled. =="
+fishbmc_disabled="== FishBMC disabled. =="
projectm_enabled="== ProjectM enabled. =="
projectm_disabled="== ProjectM disabled. =="
x11_enabled="== X11 enabled. =="
[use_rsxs=$enableval],
[use_rsxs=yes])
+AC_ARG_ENABLE([fishbmc],
+ [AS_HELP_STRING([--enable-fishbmc],
+ [enable FishBMC visualisation (default is yes)])],
+ [use_fishbmc=$enableval],
+ [use_fishbmc=yes])
+
AC_ARG_ENABLE([projectm],
[AS_HELP_STRING([--enable-projectm],
[enable ProjectM visualisation (default is yes)])],
[use_libmp3lame=$enableval],
[use_libmp3lame=auto])
-AC_ARG_ENABLE([vorbisenc],
+AC_ARG_ENABLE([libvorbisenc],
[AS_HELP_STRING([--enable-libvorbisenc],
[enable vorbis encoder support (default is auto)])],
[use_libvorbisenc=$enableval],
i386-*-freebsd*)
ARCH="x86-freebsd"
MAKE="gmake"
- use_external_ffmpeg="yes"
AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_FREEBSD -D_LINUX")
;;
amd64-*-freebsd*)
ARCH="x86_64-freebsd"
MAKE="gmake"
- use_external_ffmpeg="yes"
AC_SUBST(ARCH_DEFINES, "-DTARGET_POSIX -DTARGET_FREEBSD -D_LINUX")
;;
arm-apple-darwin*)
CXXFLAGS="$CXXFLAGS -I$LOCALBASE/include"
CPPFLAGS="$CPPFLAGS -I$LOCALBASE/include"
LDFLAGS="$LDFLAGS -L$LOCALBASE/lib"
+ FFMPEG_EXTRACFLAGS="-I$LOCALBASE/include"
fi
if test "$host_vendor" = "apple" ; then
# standard xbmc paths
AC_CHECK_SIZEOF([int])
AC_CHECK_SIZEOF([size_t])
+# Check for intrinsics
+AC_MSG_CHECKING([for __sync_add_and_fetch(temp, 1)])
+AC_TRY_COMPILE([],[long* temp=0; __sync_add_and_fetch(temp, 1);],
+ [have_builtin_sync_add_and_fetch=yes],
+ [have_builtin_sync_add_and_fetch=no])
+AC_MSG_RESULT($have_builtin_sync_add_and_fetch)
+if test "x$have_builtin_sync_add_and_fetch" = "xyes"; then
+ AC_DEFINE(HAS_BUILTIN_SYNC_ADD_AND_FETCH, 1,
+ [Define to 1 if your compiler supports the __sync_add_and_fetch() intrinsic.])
+fi
+
+AC_MSG_CHECKING([for __sync_sub_and_fetch(temp, 1)])
+AC_TRY_COMPILE([],[long* temp=0; __sync_sub_and_fetch(temp, 1);],
+ [have_builtin_sync_sub_and_fetch=yes],
+ [have_builtin_sync_sub_and_fetch=no])
+AC_MSG_RESULT($have_builtin_sync_sub_and_fetch)
+if test "x$have_builtin_sync_sub_and_fetch" = "xyes"; then
+ AC_DEFINE(HAS_BUILTIN_SYNC_SUB_AND_FETCH, 1,
+ [Define to 1 if your compiler supports the __sync_sub_and_fetch() intrinsic.])
+fi
+
+AC_MSG_CHECKING([for __sync_val_compare_and_swap(temp, 1, 1)])
+AC_TRY_COMPILE([],[long *temp = 0; __sync_val_compare_and_swap(temp, 1, 1);],
+ [have_builtin_sync_val_compare_and_swap=yes],
+ [have_builtin_sync_val_compare_and_swap=no])
+AC_MSG_RESULT($have_builtin_sync_val_compare_and_swap)
+if test "x$have_builtin_sync_val_compare_and_swap" = "xyes"; then
+ AC_DEFINE(HAS_BUILTIN_SYNC_VAL_COMPARE_AND_SWAP, 1,
+ [Define to 1 if your compiler supports the __sync_val_compare_and_swap() intrinsic.])
+fi
+
# Add top source directory for all builds so we can use config.h
-INCLUDES="$INCLUDES -I\$(abs_top_srcdir)"
+INCLUDES="-I\$(abs_top_srcdir) $INCLUDES"
# Check inotify availability
AC_CHECK_HEADER([sys/inotify.h], AC_DEFINE([HAVE_INOTIFY],[1],[Define if we have inotify]),)
fi
USE_PULSE=0
else
- AC_CHECK_LIB([pulse], [main],,
- [if test "x$use_pulse" = "xyes"; then
- AC_MSG_ERROR($pulse_not_found)
- else
- use_pulse=no
- USE_PULSE=0
- AC_MSG_RESULT($pulse_not_found)
- fi])
+ AC_CHECK_LIB([pulse],[main],,pulse_found="no")
+ AC_CHECK_LIB([pulse-simple],[main],,pulse_found="no")
+
+ if test "x$pulse_found" != "xno"; then
USE_PULSE=1
+ elif test "x$use_pulse" = "xyes"; then
+ AC_MSG_ERROR($pulse_not_found)
+ else
+ use_pulse=no
+ USE_PULSE=0
+ AC_MSG_RESULT($pulse_not_found)
+ fi
fi
else
AC_MSG_RESULT($pulse_disabled)
fi
fi
+# FISHBMC
+if test "$use_fishbmc" = "no" || test "$use_gl" = "no"; then
+ AC_MSG_NOTICE($fishbmc_disabled)
+ DISABLE_FISHBMC=1
+ use_fishbmc="no"
+else
+ AC_MSG_NOTICE($fishbmc_enabled)
+ DISABLE_FISHBMC=0
+fi
+
# PROJECTM
if test "$use_projectm" = "no" || test "$use_gl" = "no"; then
AC_MSG_NOTICE($projectm_disabled)
DISABLE_PROJECTM=1
+ use_projectm="no"
else
AC_MSG_NOTICE($projectm_enabled)
DISABLE_PROJECTM=0
# libshairport for AirTunes
USE_AIRTUNES=0
if test "x$use_airtunes" != "xno"; then
- AC_CHECK_HEADERS([shairport/shairport.h shairport/ao.h],,
+ AC_CHECK_HEADERS([shairport/shairport.h],,
[if test "x$use_airtunes" = "xyes"; then
AC_MSG_ERROR($libshairport_not_found)
elif test "x$use_airtunes" != "xno"; then
final_message="$final_message\n RSXS:\t\tNo"
fi
+if test "$use_fishbmc" = "yes"; then
+ final_message="$final_message\n FishBMC:\tYes"
+else
+ final_message="$final_message\n FishBMC:\tNo"
+fi
+
if test "$use_projectm" = "yes"; then
final_message="$final_message\n ProjectM:\tYes"
else
xbmc/visualizations/XBMCProjectM/Makefile \
xbmc/visualizations/Goom/Makefile \
xbmc/visualizations/OpenGLSpectrum/Makefile \
+ xbmc/visualizations/fishBMC/Makefile \
xbmc/visualizations/WaveForm/Makefile \
- xbmc/visualizations/iTunes/Makefile \
lib/addons/library.xbmc.addon/Makefile \
lib/addons/library.xbmc.gui/Makefile \
lib/addons/library.xbmc.pvr/Makefile \
AC_SUBST(BUILD_DVDCSS)
AC_SUBST(DISABLE_GOOM)
AC_SUBST(DISABLE_RSXS)
+AC_SUBST(DISABLE_FISHBMC)
AC_SUBST(DISABLE_PROJECTM)
AC_SUBST(USE_SKIN_TOUCHED)
AC_SUBST(USE_EXTERNAL_FFMPEG)
], [$DISABLE_GOOM])
XB_CONFIG_MODULE([xbmc/screensavers/rsxs-0.9/], [
+ if test "$host_vendor" = "apple"; then
+ TEMPCFLAGS="${CFLAGS} -fgnu89-inline";
+ else
+ TEMPCFLAGS="$CFLAGS";
+ fi
./configure \
CC="$CC" \
CXX="$CXX" \
- CFLAGS="$CFLAGS" \
+ CFLAGS="$TEMPCFLAGS" \
CXXFLAGS="$CXXFLAGS" \
- `if test "$host_vendor" = "apple"; then echo --x-includes=/usr/X11/include --x-libraries=/usr/X11/lib; fi` \
+ `if test "$host_vendor" = "apple"; then echo --with-png=${prefix} --x-includes=/usr/X11/include --x-libraries=/usr/X11/lib; fi` \
--prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
--host=$host_alias \
--build=$build_alias \
], [$SKIP_CONFIG_GTEST])
XB_CONFIG_MODULE([pvr-addons], [
+ if test "$USE_EXTERNAL_FFMPEG" = 1; then
+ PVR_EXT_FFMPEG="--enable-external-ffmpeg"
+ fi
./configure \
--prefix="${prefix}" \
--host=$host_alias \
--build=$build_alias \
--target=$target_alias \
+ $PVR_EXT_FFMPEG \
CC="$CC" \
CXX="$CXX" \
CFLAGS="$CFLAGS" \