summaryrefslogtreecommitdiff
path: root/m4
diff options
context:
space:
mode:
authorDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2006-09-12 00:06:05 +0000
committerDiego 'Flameeyes' Pettenò <flameeyes@gmail.com>2006-09-12 00:06:05 +0000
commita065c7dc482ea280d7f30f23626171a8303ec488 (patch)
tree13d772054bacf6230dab7e398517ecd906e69245 /m4
parentea9a0462ef4b08279957e281e2e6bc33ff4ca7ee (diff)
downloadxine-lib-a065c7dc482ea280d7f30f23626171a8303ec488.tar.gz
xine-lib-a065c7dc482ea280d7f30f23626171a8303ec488.tar.bz2
Rewrite external ffmpeg support by using pkg-config rather than ad-hoc tests. To change the prefix, simply change the variables from outside or add the directory containing the .pc files to PKG_CONFIG_PATH environment variable.
CVS patchset: 8222 CVS date: 2006/09/12 00:06:05
Diffstat (limited to 'm4')
-rw-r--r--m4/Makefile.am1
-rw-r--r--m4/ffmpeg.m4173
2 files changed, 0 insertions, 174 deletions
diff --git a/m4/Makefile.am b/m4/Makefile.am
index 98e559820..40f4be43a 100644
--- a/m4/Makefile.am
+++ b/m4/Makefile.am
@@ -19,7 +19,6 @@ EXTRA_DIST = glibc2.m4 intdiv0.m4 intmax.m4 inttypes.m4 inttypes_h.m4 inttypes-p
dl.m4 \
dvdnav.m4 \
esd.m4 \
- ffmpeg.m4 \
freetype2.m4 \
gettext.m4 \
glibc21.m4 \
diff --git a/m4/ffmpeg.m4 b/m4/ffmpeg.m4
deleted file mode 100644
index 8f056ffc8..000000000
--- a/m4/ffmpeg.m4
+++ /dev/null
@@ -1,173 +0,0 @@
-dnl
-dnl autoconf script for searching and checking ffmpeg
-dnl
-dnl written by Frantisek Dvorak <valtri@users.sourceforge.net>
-dnl
-dnl
-dnl AM_PATH_FFMPEG([ACTION IF FOUND [, ACTION IF NOT FOUND]]))
-dnl
-dnl It looks for ffmpeg, defines FFMPEG_CPPFLAGS, FFMPEG_LDFLAFS, FFMPEG_LIBS and
-dbl FFMPEG_POSTPROC_LIBS.
-dnl
-AC_DEFUN([AM_PATH_FFMPEG], [
-
-AC_ARG_WITH(external-ffmpeg, AC_HELP_STRING([--with-external-ffmpeg@<:@=DIR@:>@], [use external ffmpeg library]),
- [external_ffmpeg="$withval"],
- [external_ffmpeg="no"]
-)
-
-if test x"$external_ffmpeg" != "xno"; then
-
- dnl get the prefix, if specified
- if test x"$external_ffmpeg" != "xyes"; then
- ffmpeg_prefix="$withval"
- fi
-
- dnl disable test if requested
- AC_ARG_ENABLE(ffmpegtest,
- AC_HELP_STRING([--disable-ffmpegtest],
- [Do not try compile and run a test ffmpeg program. It will need specify custom FFMPEG_CPPFLAGS and FFMPEG_LIBS environment variables.]
- ),
- enable_ffmpegtest="$enableval",
- enable_ffmpegtest=yes
- )
-
- if test x"$enable_ffmpegtest" = "xyes"; then
- ac_save_LDFLAGS="${LDFLAGS}"
- ac_save_CPPFLAGS="${CPPFLAGS}"
- external_ffmpeg_found=no
-
- dnl look for the ffmpeg or just check specified flags
- if test x"$FFMPEG_CPPFLAGS" = "x" -a x"$FFMPEG_LDFLAGS" = "x" -a x"$FFMPEG_LIBS" = x -a x"$FFMPEG_POSTPROC_LIBS" = "x"; then
- dnl look for ffmpeg
- if test x"$ffmpeg_prefix" = "x"; then
- prefixes="/usr /usr/local /opt"
- else
- prefixes="$ffmpeg_prefix"
- fi
- for dir in $prefixes; do
- if test -d ${dir}/include/postproc ; then
- postproc=" -I${dir}/include/postproc"
- elif test -d ${dir}/include/ffmpeg/postproc ; then
- postproc=" -I${dir}/include/ffmpeg/postproc"
- fi
- FFMPEG_CPPFLAGS="-I${dir}/include/ffmpeg${postproc}"
- FFMPEG_LDFLAGS="-L${dir}/lib"
- CPPFLAGS="${FFMPEG_CPPFLAGS} ${ac_save_CPPFLAGS}"
- LDFLAGS="${FFMPEG_LDFLAGS} ${ac_save_LDFLAGS}"
-
- dnl drop the cache
- for i in "ac_cv_header_avcodec_h" "ac_cv_header_postprocess_h" \
- "ac_cv_lib_avcodec_pp_get_context" \
- "ac_cv_lib_postproc_pp_get_context" \
- "ac_cv_lib_avcodec_register_avcodec"; do
- $as_unset $i || test "${$i+set}" != set || { $i=; export $i; }
- done
-
- dnl look for headers
- AC_CHECK_HEADER(avcodec.h, , continue)
- AC_CHECK_HEADER(postprocess.h, , continue)
-
- dnl look for libpostproc and libpostproc inside libavcodec
- AC_CHECK_LIB(postproc, pp_get_context,
- [FFMPEG_POSTPROC_LIBS="-lpostproc"],
- AC_CHECK_LIB(avcodec, pp_get_context,
- [FFMPEG_POSTPROC_LIBS="-lavcodec"],
- [break],
- []
- ),
- []
- )
-
- dnl look for libavcodec
- AC_CHECK_LIB(avcodec, register_avcodec,
- [external_ffmpeg_found=yes
- FFMPEG_LIBS="-lavcodec"
- break]
- )
- done
-
- dnl result of autodetection
- if test x"$external_ffmpeg_found" = "xyes"; then
- AC_MSG_RESULT([External ffmpeg library was found in ${dir}.])
- else
- AC_MSG_ERROR([External ffmpeg library not found.
-*********************************************************************
-You can try to specify prefix of ffmpeg library by the option
---with-external-ffmpeg=prefix, or to specify custom FFMPEG_CPPFLAGS,
-FFMPEG_LIBS and FFMPEG_POSTPROC_LIBS.
-
-If you would like to use the internal ffmpeg, please remove the
-configure option --with-external-ffmpeg.
-*********************************************************************])
- fi
- else
- dnl check specified flags
- CPPFLAGS="${ac_save_CPPFLAGS} ${FFMPEG_CPPFLAGS}"
- LDFLAGS="${ac_save_LDFLAGS} ${FFMPEG_LDFLAGS} ${FFMPEG_LIBS} ${FFMPEG_POSTPROC_LIBS}"
- AC_LINK_IFELSE([#include <avcodec.h>
-#include <postprocess.h>
-
-int main() {
- register_avcodec((void *)0);
- pp_get_context(0, 0, 0);
-}
-],
- [external_ffmpeg_found=yes],
- [external_ffmpeg_found=no],
- )
-
- dnl result
- if test x"$external_ffmpeg_found" = "xyes"; then
- AC_MSG_RESULT([Using custom FFMPEG_CPPFLAGS and FFMPEG_LIBS for external ffmpeg.])
- else
- AC_MSG_ERROR([External ffmpeg library not found with specified options.
-*********************************************************************
-You can try to specify prefix of ffmpeg library by the option
---with-external-ffmpeg=prefix, or to specify different
-FFMPEG_CPPFLAGS and FFMPEG_LIBS.
-
-If you would like to use the internal ffmpeg, please remove the
-configure option --with-external-ffmpeg.
-*********************************************************************])
- fi
- fi
- CPPFLAGS="${ac_save_CPPFLAGS}"
- LDFLAGS="${ac_save_LDFLAGS}"
- else
- if test x"${FFMPEG_CPPFLAGS}" = "x" -a x"${FFMPEG_LIBS}" = "x"; then
- external_ffmpeg_found=no
- AC_MSG_ERROR([You should specify FFMPEG_CPPFLAGS and FFMPEG_LIBS.])
- else
- external_ffmpeg_found=yes
- AC_MSG_RESULT([Forced using custom FFMPEG_CPPFLAGS and FFMPEG_LIBS.])
- fi
- fi
-
-
- dnl result
- if test x"$external_ffmpeg_found" = "xyes"; then
- dnl common warning
- AC_MSG_NOTICE([
-*********************************************************************
-xine is configured with external ffmpeg.
-
-This requires the same version of ffmpeg what is included in xine and
-you should know what you do. If some problems occur, please try to
-use internal ffmpeg.
-*********************************************************************])
- ifelse([$1], , :, [$1])
- else
- ifelse([$2], , :, [$2])
- fi
-
- AC_SUBST(FFMPEG_CPPFLAGS)
- AC_SUBST(FFMPEG_LDFLAGS)
- AC_SUBST(FFMPEG_LIBS)
- AC_SUBST(FFMPEG_POSTPROC_LIBS)
-
-else
- AC_MSG_RESULT([using included ffmpeg])
-fi
-
-])