Permalink
Browse files

1. Added gstreamer, dove and dove-overlay to configure.in

2. Added --with-iwmmxt to fmmpeg configure, but disabled meanwhile since the used processor for build (cortex-a9) doesn't support that.
   Needs to be fixed in the future (will add performance by using Dove vector operations).
  • Loading branch information...
1 parent b98c1b4 commit 49e9f4df22eac91db1affd030190cab124b119d5 @rabeeh committed Dec 18, 2011
Showing with 87 additions and 0 deletions.
  1. +87 −0 configure.in
View
87 configure.in
@@ -118,6 +118,8 @@ libplist_not_found="== Could not find libplist. AirPlay support disabled. =="
libplist_disabled="== AirPlay support disabled. =="
alsa_not_found="== Could not find ALSA. ALSA support disabled. =="
dbus_not_found="== Could not find DBUS. DBUS support disabled. =="
+gstreamer_not_found="== GStreamer libraries not found. GStreamer support disabled. =="
+gstreamer_disabled="== GStreamer support manually disabled. =="
libudev_not_found="== Could not find libudev. Will use polling to check for device changes. =="
libudev_disabled="== udev support disabled. Will use polling to check for device changes. =="
@@ -223,12 +225,30 @@ AC_ARG_ENABLE([openmax],
[use_openmax=$enableval],
[use_openmax=auto])
+AC_ARG_ENABLE([gstreamer],
+ [AS_HELP_STRING([--enable-gstreamer],
+ [enable GStreamer support (default is auto)])],
+ [use_gstreamer=$enableval],
+ [use_gstreamer=auto])
+
AC_ARG_ENABLE([tegra],
[AS_HELP_STRING([--enable-tegra],
[enable Tegra2 arm (default is no)])],
[use_tegra=$enableval],
[use_tegra=no])
+AC_ARG_ENABLE([dove],
+ [AS_HELP_STRING([--enable-dove],
+ [Enable support for Marvell Armada 510 (Dove) with overlay])],
+ [use_dove=$enableval],
+ [use_dove=no])
+
+AC_ARG_ENABLE([dove-overlay],
+ [AS_HELP_STRING([--enable-dove-overlay],
+ [enable support for Marvell Armada 510 (Dove) video overlay])],
+ [AC_DEFINE([HAS_DOVE_OVERLAY], [], [Defines dove overlay support])])
+
+
AC_ARG_ENABLE([profiling],
[AS_HELP_STRING([--enable-profiling],
[enable gprof profiling (default is no)])],
@@ -588,6 +608,13 @@ elif test "$use_arch" = "arm"; then
[ CFLAGS="$SAVE_CFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
CXXFLAGS="$CXXFLAGS -Wa,-march=armv6 -mtune=cortex-a8 -mthumb-interwork"
use_cpu=cortex-a8])
+ elif test "$use_dove" = "yes"; then
+ # Compile for ARMv7a, vfpv3-d16 with iwmmx SIMD support (no neon)
+# use_iwmmxt=yes
+ use_cpu=cortex-a9
+ CFLAGS="$CFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
+ CXXFLAGS="$CXXFLAGS -Wno-psabi -Wa,-march=armv7a -mtune=cortex-a9 -mfpu=vfpv3-d16 -mthumb-interwork"
+ FFMPEG_EXTRACFLAGS="$FFMPEG_EXTRACFLAGS -mtune=cortex-a9 -mfpu=vfpv3-d16"
else
# Compile for ARMv7a architecture, CortexA8 cpu and check for enabled NEON coprocessor
CFLAGS="$CFLAGS -Wa,-march=armv7a -mcpu=cortex-a8"
@@ -1441,6 +1468,57 @@ else
fi
fi
+# Dove Overlay
+if test "x$use_gstreamer" = "xyes"; then
+ if test "x$use_dove" = "xyes"; then
+ USE_DOVE_OVERLAY=1
+ else
+ USE_DOVE_OVERLAY=0
+ fi
+else
+ USE_DOVE_OVERLAY=0
+fi
+
+# GSTREAMER
+if test "x$use_gstreamer" != "xno"; then
+ if test "$host_vendor" = "apple" ; then
+ if test "x$use_gstreamer" = "xyes"; then
+ AC_MSG_ERROR([GStreamer not supported on this platform])
+ else
+ use_gstreamer="no"
+ AC_MSG_NOTICE($gstreamer_disabled)
+ fi
+ USE_GSTREAMER=0
+ else
+ AC_SUBST(gstreamer_req, 0.10.0)
+ AC_SUBST(gstreamer_plugins_base_req, 0.10.0)
+ PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.10 >= $gstreamer_req, HAVE_GSTREAMER=1, HAVE_GSTREAMER=0)
+ PKG_CHECK_MODULES(GSTREAMER_BASE, gstreamer-base-0.10 >= $gstreamer_req, HAVE_GSTREAMER_BASE=1, HAVE_GSTREAMER_BASE=0)
+ PKG_CHECK_MODULES(GSTREAMER_PLUGINS_BASE, gstreamer-plugins-base-0.10 >= $gstreamer_plugins_base_req, HAVE_GSTREAMER_PLUGINS_BASE=1, HAVE_GSTREAMER_PLUGINS_BASE=0)
+ HAVE_GSTREAMER_APP=1
+ AC_CHECK_LIB([gstapp-0.10], main, , HAVE_GSTREAMER_APP=0)
+
+ if test $HAVE_GSTREAMER -eq 1 -a $HAVE_GSTREAMER_BASE -eq 1 -a $HAVE_GSTREAMER_PLUGINS_BASE -eq 1 -a $HAVE_GSTREAMER_APP -eq 1; then
+ INCLUDES="$INCLUDES $GSTREAMER_CFLAGS $GSTREAMER_BASE_CFLAGS $GSTREAMER_PLUGINS_BASE_CFLAGS"
+ LIBS="$LIBS $GSTREAMER_LIBS $GSTREAMER_BASE_LIBS $GSTREAMER_PLUGINS_BASE_LIBS"
+ USE_GSTREAMER=1
+ AC_DEFINE([HAVE_LIBGSTREAMER], [1], [Define to 1 if you have the 'GStreamer' library.])
+ else
+ if test "x$use_gstreamer" = "xyes"; then
+ AC_MSG_ERROR([$gstreamer_not_found])
+ else
+ use_gstreamer="no"
+ USE_GSTREAMER=0
+ AC_MSG_RESULT($gstreamer_not_found)
+ fi
+ fi
+ fi
+else
+ USE_GSTREAMER=0
+ AC_MSG_NOTICE($gstreamer_disabled)
+fi
+
+
# yajl version check (yajl_version.h was added in yajl 2.0)
AC_CHECK_HEADERS([yajl/yajl_version.h], [], [
AC_DEFINE(YAJL_MAJOR, 1, [yajl version 1])
@@ -1545,6 +1623,12 @@ else
fi
fi
+if test "$use_gstreamer" != "no"; then
+ final_message="$final_message\n GStreamer:\tYes"
+else
+ final_message="$final_message\n GStreamer:\tNo"
+fi
+
if test "$use_alsa" = "yes"; then
USE_ALSA=1
AC_DEFINE([USE_ALSA],[1],["Define to 1 if alsa is installed"])
@@ -1949,6 +2033,8 @@ AC_SUBST(USE_LIBAFPCLIENT)
AC_SUBST(USE_AIRPLAY)
AC_SUBST(USE_VDA)
AC_SUBST(USE_OPENMAX)
+AC_SUBST(USE_GSTREAMER)
+AC_SUBST(USE_DOVE_OVERLAY)
AC_SUBST(USE_PULSE)
AC_SUBST(USE_XRANDR)
AC_SUBST(USE_ALSA)
@@ -2065,6 +2151,7 @@ XB_CONFIG_MODULE([lib/ffmpeg], [
`if test "$use_arch" != "no"; then echo --arch=$use_arch; fi`\
`if test "$use_cpu" != "no"; then echo --cpu=$use_cpu; fi`\
`if test "$use_neon" = "yes"; then echo --enable-neon; else echo --disable-neon; fi`\
+ `if test "$use_iwmmxt" = "yes"; then echo --enable-iwmmxt; fi`\
--target-os=$(tolower $(uname -s)) \
--disable-muxers \
--enable-muxer=spdif \

0 comments on commit 49e9f4d

Please sign in to comment.