X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=configure.ac;h=774c7c994468fda4cad57b4e2ed7c67850e94ae2;hb=02e592f08f2873dec0e245c7d9c3ad968bc531d9;hp=61c2f6c7784597e8cc14ce1112b8f50b5555253e;hpb=b545c6fcbcfc582abc6efe40e0409501886ffbbf;p=platform%2Fupstream%2Fgstreamer-vaapi.git diff --git a/configure.ac b/configure.ac index 61c2f6c..774c7c9 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ # gstreamer-vaapi package version number m4_define([gst_vaapi_major_version], [0]) m4_define([gst_vaapi_minor_version], [5]) -m4_define([gst_vaapi_micro_version], [8]) +m4_define([gst_vaapi_micro_version], [9]) m4_define([gst_vaapi_pre_version], [0]) m4_define([gst_vaapi_version], [gst_vaapi_major_version.gst_vaapi_minor_version.gst_vaapi_micro_version]) @@ -15,6 +15,7 @@ m4_define([gst0_vaapi_lt_current_bias], [0]) m4_define([gst1_vaapi_lt_current_bias], [2]) m4_define([gst2_vaapi_lt_current_bias], [4]) m4_define([gst4_vaapi_lt_current_bias], [5]) +m4_define([gst6_vaapi_lt_current_bias], [5]) m4_define([gst_vaapi_lt_revision], [0]) m4_define([gst_vaapi_lt_age], [0]) @@ -35,6 +36,9 @@ m4_define([gst12_plugins_bad_version], [1.1.0]) m4_define([gst14_version], [1.2.90]) m4_define([gst14_plugins_base_version], [1.3.0]) m4_define([gst14_plugins_bad_version], [1.3.0]) +m4_define([gst16_version], [1.5.0]) +m4_define([gst16_plugins_base_version], [1.5.0]) +m4_define([gst16_plugins_bad_version], [1.5.0]) # Wayland minimum version number m4_define([wayland_api_version], [1.0.0]) @@ -95,15 +99,31 @@ AC_ARG_VAR([GIT], [Path to git program, if any]) AC_PATH_PROG([GIT], [git]) AM_CONDITIONAL([HAVE_GIT], [test -n "$GIT"]) +AC_ARG_VAR([YASM], [Path to yasm program, if any]) +AC_PATH_PROG([YASM], [yasm]) +if test -z "$YASM" -a "$enable_builtin_libvpx" = "yes"; then + AC_MSG_ERROR([yasm is needed to build libvpx sources]) +fi + dnl Initialize libtool LT_PREREQ([2.2]) LT_INIT +AC_ARG_ENABLE(builtin_videoparsers, + AS_HELP_STRING([--enable-builtin-videoparsers], + [enable built-in videoparsers @<:@default=yes@:>@]), + [], [enable_builtin_videoparsers="yes"]) + AC_ARG_ENABLE(builtin_codecparsers, AS_HELP_STRING([--enable-builtin-codecparsers], [enable built-in codecparsers @<:@default=yes@:>@]), [], [enable_builtin_codecparsers="yes"]) +AC_ARG_ENABLE(builtin_libvpx, + AS_HELP_STRING([--enable-builtin-libvpx], + [enable built-in libvpx @<:@default=yes@:>@]), + [], [enable_builtin_libvpx="yes"]) + AC_ARG_ENABLE([encoders], AS_HELP_STRING([--enable-encoders], [enable video encoders @<:@default=yes@:>@]), @@ -204,11 +224,16 @@ case $GST_API_VERSION in GST_PLUGINS_BASE_VERSION_REQUIRED=gst12_plugins_base_version GST_PLUGINS_BAD_VERSION_REQUIRED=gst12_plugins_bad_version ;; -1.3) +1.[[3-4]]) GST_VERSION_REQUIRED=gst14_version GST_PLUGINS_BASE_VERSION_REQUIRED=gst14_plugins_base_version GST_PLUGINS_BAD_VERSION_REQUIRED=gst14_plugins_bad_version ;; +1.5) + GST_VERSION_REQUIRED=gst16_version + GST_PLUGINS_BASE_VERSION_REQUIRED=gst16_plugins_base_version + GST_PLUGINS_BAD_VERSION_REQUIRED=gst16_plugins_bad_version + ;; *) AC_MSG_ERROR([unsupported GStreamer API version $GST_API_VERSION]) ;; @@ -238,6 +263,17 @@ if test "$USE_GST_API_1_2p" = "yes"; then fi AC_SUBST([GST_PKG_VERSION]) +dnl Validate certain features +if test "$USE_GST_API_0_10" = "yes"; then + AC_MSG_WARN([support for GStreamer 0.10 is obsolete, and will be removed]) + if test "$enable_builtin_videoparsers" = "yes"; then + AC_MSG_WARN([disabled built-in videoparsers (unsupported)]) + enable_builtin_videoparsers="no" + fi +elif test "$USE_GST_API_1_2p" != "yes"; then + AC_MSG_WARN([support for GStreamer < 1.2 is deprecated, please upgrade]) +fi + dnl GStreamer Core PKG_CHECK_MODULES([GST], [gstreamer-$GST_PKG_VERSION >= $GST_VERSION_REQUIRED]) @@ -335,6 +371,7 @@ if test "$enable_builtin_codecparsers" = "yes"; then ac_cv_have_gst_mpeg2_parser="no" ac_cv_have_gst_h264_parser="no" ac_cv_have_gst_jpeg_parser="no" + ac_cv_have_gst_vp8_parser="no" else PKG_CHECK_MODULES([GST_CODEC_PARSERS], [gstreamer-codecparsers-$GST_PKG_VERSION >= $GST_PLUGINS_BAD_VERSION_REQUIRED]) @@ -413,11 +450,40 @@ AC_CACHE_CHECK([for JPEG parser], AM_CONDITIONAL([USE_LOCAL_CODEC_PARSERS_JPEG], [test "$ac_cv_have_gst_jpeg_parser" != "yes"]) +dnl ... VP8 parser, not upstream yet +if test "$enable_builtin_libvpx" = "yes"; then + ac_cv_have_gst_vp8_parser="no" +fi +AC_CACHE_CHECK([for VP8 parser], + ac_cv_have_gst_vp8_parser, [ + saved_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $GST_CFLAGS $GST_CODEC_PARSERS_CFLAGS" + saved_LIBS="$LIBS" + LIBS="$LIBS $GST_LIBS $GST_CODEC_PARSERS_LIBS" + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[GstVp8FrameHdr frame_hdr;]])], + [ac_cv_have_gst_vp8_parser="yes"], + [ac_cv_have_gst_vp8_parser="no"] + ) + CPPFLAGS="$saved_CPPFLAGS" + LIBS="$saved_LIBS" +]) +AM_CONDITIONAL([USE_LOCAL_CODEC_PARSERS_VP8], + [test "$ac_cv_have_gst_vp8_parser" != "yes"]) +AM_CONDITIONAL([USE_BUILTIN_LIBVPX], [test "$enable_builtin_libvpx" = "yes"]) + +dnl ... video parsers +AM_CONDITIONAL([USE_LOCAL_VIDEO_PARSERS], + [test "$enable_builtin_videoparsers" = "yes"]) + case $GST_API_VERSION in 0.10) lt_bias=gst0_vaapi_lt_current_bias;; 1.0) lt_bias=gst1_vaapi_lt_current_bias;; 1.2) lt_bias=gst2_vaapi_lt_current_bias;; -1.3) lt_bias=gst4_vaapi_lt_current_bias;; +1.[[3-4]]) lt_bias=gst4_vaapi_lt_current_bias;; +1.5) lt_bias=gst6_vaapi_lt_current_bias;; esac GST_VAAPI_MAJOR_VERSION=`expr gst_vaapi_lt_current - "$lt_bias"` AC_SUBST(GST_VAAPI_MAJOR_VERSION) @@ -665,6 +731,41 @@ AC_CACHE_CHECK([for JPEG decoding API], LIBS="$saved_LIBS" ]) +dnl Check for va_dec_vp8.h header +saved_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $LIBVA_CFLAGS" +AC_CHECK_HEADERS([va/va_dec_vp8.h], [], [], [#include ]) +CPPFLAGS="$saved_CPPFLAGS" + +dnl Check for VP8 decoding API (0.34+) +USE_VP8_DECODER=0 +AC_CACHE_CHECK([for VP8 decoding API], + ac_cv_have_vp8_decoding_api, [ + saved_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $LIBVA_CFLAGS" + saved_LIBS="$LIBS" + LIBS="$LIBS $LIBVA_LIBS" + AC_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[#include + #ifdef HAVE_VA_VA_DEC_VP8_H + #include + #endif + ]], + [[VAPictureParameterBufferVP8 pic_param; + VASliceParameterBufferVP8 slice_param; + VAProbabilityDataBufferVP8 prob_data; + VAIQMatrixBufferVP8 iq_matrix; + slice_param.slice_data_offset = 0; + slice_param.slice_data_flag = 0;]])], + [ac_cv_have_vp8_decoding_api="yes" USE_VP8_DECODER=1], + [ac_cv_have_vp8_decoding_api="no"] + ) + CPPFLAGS="$saved_CPPFLAGS" + LIBS="$saved_LIBS" +]) + + dnl Check for vpp (video post-processing) support USE_VA_VPP=0 AC_CACHE_CHECK([for video post-postprocessing API], @@ -737,6 +838,10 @@ AC_DEFINE_UNQUOTED(USE_JPEG_DECODER, $USE_JPEG_DECODER, [Defined to 1 if JPEG decoder is used]) AM_CONDITIONAL(USE_JPEG_DECODER, test $USE_JPEG_DECODER -eq 1) +AC_DEFINE_UNQUOTED(USE_VP8_DECODER, $USE_VP8_DECODER, + [Defined to 1 if VP8 decoder is used]) +AM_CONDITIONAL(USE_VP8_DECODER, test $USE_VP8_DECODER -eq 1) + AC_DEFINE_UNQUOTED(USE_DRM, $USE_DRM, [Defined to 1 if DRM is enabled]) AM_CONDITIONAL(USE_DRM, test $USE_DRM -eq 1) @@ -765,7 +870,7 @@ AC_CONFIG_FILES([ debian.upstream/gstreamer-vaapi-doc.install.in debian.upstream/gstreamer$GST_API_VERSION-vaapi.install:\ debian.upstream/gstreamer-vaapi.install.in - debian.upstream/libgstvaapi$GST_API_VERSION-dev.install:\ + debian.upstream/libgstvaapi$GST_PKG_VERSION-dev.install:\ debian.upstream/libgstvaapi-dev.install.in debian.upstream/libgstvaapi$GST_VAAPI_MAJOR_VERSION.install:\ debian.upstream/libgstvaapi.install.in @@ -784,6 +889,7 @@ debian.upstream/libgstvaapi-x11.install.in docs/reference/plugins/Makefile docs/reference/plugins/plugins-docs.xml ext/Makefile + ext/libvpx/Makefile gst-libs/Makefile gst-libs/gst/Makefile gst-libs/gst/base/Makefile @@ -792,16 +898,18 @@ debian.upstream/libgstvaapi-x11.install.in gst-libs/gst/video/Makefile gst/Makefile gst/vaapi/Makefile + patches/Makefile + patches/videoparsers/Makefile pkgconfig/Makefile - pkgconfig/gstreamer-vaapi-$GST_API_VERSION.pc:\ + pkgconfig/gstreamer-vaapi-$GST_PKG_VERSION.pc:\ pkgconfig/gstreamer-vaapi.pc.in - pkgconfig/gstreamer-vaapi-drm-$GST_API_VERSION.pc:\ + pkgconfig/gstreamer-vaapi-drm-$GST_PKG_VERSION.pc:\ pkgconfig/gstreamer-vaapi-drm.pc.in - pkgconfig/gstreamer-vaapi-glx-$GST_API_VERSION.pc:\ + pkgconfig/gstreamer-vaapi-glx-$GST_PKG_VERSION.pc:\ pkgconfig/gstreamer-vaapi-glx.pc.in - pkgconfig/gstreamer-vaapi-wayland-$GST_API_VERSION.pc:\ + pkgconfig/gstreamer-vaapi-wayland-$GST_PKG_VERSION.pc:\ pkgconfig/gstreamer-vaapi-wayland.pc.in - pkgconfig/gstreamer-vaapi-x11-$GST_API_VERSION.pc:\ + pkgconfig/gstreamer-vaapi-x11-$GST_PKG_VERSION.pc:\ pkgconfig/gstreamer-vaapi-x11.pc.in tests/Makefile ])