1 # gstreamer-vaapi package version number
2 m4_define([gst_vaapi_major_version], [0])
3 m4_define([gst_vaapi_minor_version], [5])
4 m4_define([gst_vaapi_micro_version], [4])
5 m4_define([gst_vaapi_pre_version], [1])
6 m4_define([gst_vaapi_version],
7 [gst_vaapi_major_version.gst_vaapi_minor_version.gst_vaapi_micro_version])
8 m4_if(gst_vaapi_pre_version, [0], [], [
9 m4_append([gst_vaapi_version], gst_vaapi_pre_version, [.pre])
12 # gstreamer-vaapi library (libtool) version number
13 m4_define([gst_vaapi_lt_current], [3])
14 m4_define([gst0_vaapi_lt_current_bias], [0])
15 m4_define([gst1_vaapi_lt_current_bias], [2])
16 m4_define([gst_vaapi_lt_revision], [0])
17 m4_define([gst_vaapi_lt_age], [0])
20 m4_define([glib_version], [2.28])
22 # gstreamer version number
23 m4_define([gst_api_version], [1.0])
24 m4_define([gst0_version], [0.10.36])
25 m4_define([gst0_plugins_base_version], [0.10.31])
26 m4_define([gst0_plugins_bad_version], [0.10.22])
27 m4_define([gst1_version], [1.0.0])
28 m4_define([gst1_plugins_base_version], [1.0.0])
29 m4_define([gst1_plugins_bad_version], [1.0.0])
31 # Wayland minimum version number
32 m4_define([wayland_api_version], [1.0.0])
34 # VA-API minimum version number
35 m4_define([va_api_version], [0.30.4])
36 m4_define([va_api_drm_version], [0.33.0])
37 m4_define([va_api_x11_version], [0.31.0])
38 m4_define([va_api_glx_version], [0.32.0])
39 m4_define([va_api_wld_version], [0.33.0])
41 # libva package version number
42 m4_define([libva_drm_package_version], [1.1.0])
43 m4_define([libva_x11_package_version], [1.0.3])
44 m4_define([libva_glx_package_version], [1.0.9])
45 m4_define([libva_wld_package_version], [1.1.0])
47 # gtk-doc version number
48 # XXX: introspection annotations require gtk-doc >= 1.12
49 m4_define([gtkdoc_version], [1.9])
52 AC_INIT([gst_vaapi], [gst_vaapi_version],
53 [gwenole.beauchesne@intel.com],
56 AC_CONFIG_HEADERS([config.h])
57 AC_CONFIG_SRCDIR([Makefile.am])
58 AC_CONFIG_MACRO_DIR([m4])
59 AC_CONFIG_AUX_DIR([build-aux])
63 AM_INIT_AUTOMAKE([1.11 tar-ustar no-dist-gzip dist-bzip2])
65 TODAY="`LC_ALL=C date +'%a, %d %b %Y %X %z'`"
68 LIBVA_PACKAGE_VERSION=libva_x11_package_version
69 AC_SUBST(LIBVA_PACKAGE_VERSION)
71 WAYLAND_API_VERSION=wayland_api_version
72 AC_SUBST(WAYLAND_API_VERSION)
74 dnl Use pretty build output with automake >= 1.11
75 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])], [
76 AM_DEFAULT_VERBOSITY=1
77 AC_SUBST(AM_DEFAULT_VERBOSITY)
84 AC_ARG_VAR([GIT], [Path to git program, if any])
85 AC_PATH_PROG([GIT], [git])
86 AM_CONDITIONAL([HAVE_GIT], [test -n "$GIT"])
88 dnl Initialize libtool
92 AC_ARG_ENABLE(builtin_codecparsers,
93 AS_HELP_STRING([--enable-builtin-codecparsers],
94 [enable built-in codecparsers @<:@default=yes@:>@]),
95 [], [enable_builtin_codecparsers="yes"])
98 AS_HELP_STRING([--enable-drm],
99 [enable DRM backend @<:@default=yes@:>@]),
100 [], [enable_drm="yes"])
103 AS_HELP_STRING([--enable-x11],
104 [enable X11 output @<:@default=yes@:>@]),
105 [], [enable_x11="yes"])
108 AS_HELP_STRING([--enable-glx],
109 [enable OpenGL/X11 output @<:@default=yes@:>@]),
110 [], [enable_glx="yes"])
112 AC_ARG_ENABLE(wayland,
113 AC_HELP_STRING([--enable-wayland],
114 [enable Wayland output @<:@default=yes@:>@]),
115 [], [enable_wayland="yes"])
117 AC_ARG_WITH([gstreamer-api],
118 AC_HELP_STRING([--with-gstreamer-api=VERSION],
119 [build against the specified GStreamer API version
120 @<:@default=gst_api_version@:>@]),
121 [GST_API_VERSION="$with_gstreamer_api"], [GST_API_VERSION=gst_api_version])
123 dnl Check for basic libraries
126 dnl Check for Gtk doc
127 GTKDOC_VERSION=gtkdoc_version
128 # gtkdocize greps for '^GTK_DOC_CHECK', so it needs to be on its own line
129 m4_ifdef([GTK_DOC_CHECK], [
130 GTK_DOC_CHECK([$GTKDOC_VERSION], [--flavour no-tmpl])], [
131 AM_CONDITIONAL([ENABLE_GTK_DOC], [false])])
132 AC_SUBST(GTKDOC_VERSION)
135 GLIB_VERSION_REQUIRED=glib_version
136 PKG_CHECK_MODULES([GLIB], [glib-2.0 >= $GLIB_VERSION_REQUIRED])
137 AC_SUBST(GLIB_VERSION_REQUIRED)
139 dnl Check to see if dlopen is in default libraries (like Solaris, which
140 dnl has it in libc), or if libdl is needed to get it.
141 AC_CHECK_FUNC([dlopen], [], [
142 AC_CHECK_LIB([dl], [dlopen], [DLOPEN_LIBS="-ldl"])])
143 AC_SUBST([DLOPEN_LIBS])
145 dnl ---------------------------------------------------------------------------
147 dnl ---------------------------------------------------------------------------
149 dnl Versions for GStreamer and plugins-base
150 case $GST_API_VERSION in
152 GST_VERSION_REQUIRED=gst0_version
153 GST_PLUGINS_BASE_VERSION_REQUIRED=gst0_plugins_base_version
154 GST_PLUGINS_BAD_VERSION_REQUIRED=gst0_plugins_bad_version
157 GST_VERSION_REQUIRED=gst1_version
158 GST_PLUGINS_BASE_VERSION_REQUIRED=gst1_plugins_base_version
159 GST_PLUGINS_BAD_VERSION_REQUIRED=gst1_plugins_bad_version
162 AC_MSG_ERROR([unsupported GStreamer API version $GST_API_VERSION])
165 AC_SUBST(GST_API_VERSION)
166 AC_SUBST(GST_VERSION_REQUIRED)
167 AC_SUBST(GST_PLUGINS_BASE_VERSION_REQUIRED)
168 AC_SUBST(GST_PLUGINS_BAD_VERSION_REQUIRED)
170 USE_GST_API_0_10="no"
171 USE_GST_API_1_0p="no"
172 AS_VERSION_COMPARE([$GST_API_VERSION], [0.10],
173 [], [USE_GST_API_0_10="yes"], [])
174 AS_VERSION_COMPARE([$GST_API_VERSION], [1.0],
175 [], [USE_GST_API_1_0p="yes"], [USE_GST_API_1_0p="yes"])
176 AM_CONDITIONAL([USE_GST_API_0_10], [test "$USE_GST_API_0_10" = "yes"])
177 AM_CONDITIONAL([USE_GST_API_1_0p], [test "$USE_GST_API_1_0p" = "yes"])
180 PKG_CHECK_MODULES([GST],
181 [gstreamer-$GST_API_VERSION >= $GST_VERSION_REQUIRED])
182 PKG_CHECK_MODULES([GST_BASE],
183 [gstreamer-base-$GST_API_VERSION >= $GST_VERSION_REQUIRED])
185 AC_CACHE_CHECK([for GstBaseSink::query hook], ac_cv_have_gst_base_sink_query, [
186 saved_CPPFLAGS="$CPPFLAGS"
187 CPPFLAGS="$CPPFLAGS $GST_BASE_CFLAGS"
189 LIBS="$LIBS $GST_BASE_LIBS"
192 [[#include <gst/base/gstbasesink.h>]],
193 [[GstBaseSinkClass klass; klass.query = NULL;]])],
194 [ac_cv_have_gst_base_sink_query="yes"],
195 [ac_cv_have_gst_base_sink_query="no"]
197 CPPFLAGS="$saved_CPPFLAGS"
200 if test "$ac_cv_have_gst_base_sink_query" != "yes"; then
201 AC_MSG_ERROR([GstBaseSink does not contain the 'query' vfunc])
204 dnl GStreamer -base plugins
205 PKG_CHECK_MODULES([GST_PLUGINS_BASE],
206 [gstreamer-plugins-base-$GST_API_VERSION >= $GST_PLUGINS_BASE_VERSION_REQUIRED])
207 if test "$GST_API_VERSION" = "0.10"; then
208 PKG_CHECK_MODULES([GST_INTERFACES],
209 [gstreamer-interfaces-$GST_API_VERSION >= $GST_PLUGINS_BASE_VERSION_REQUIRED])
212 dnl ... GstVideoOverlayComposition (gstreamer-video)
213 PKG_CHECK_MODULES([GST_VIDEO],
214 [gstreamer-video-$GST_API_VERSION >= $GST_PLUGINS_BASE_VERSION_REQUIRED])
216 AC_CACHE_CHECK([for GstVideoOverlayComposition],
217 ac_cv_have_gst_video_overlay_composition, [
218 saved_CPPFLAGS="$CPPFLAGS"
219 CPPFLAGS="$CPPFLAGS $GST_CFLAGS"
221 LIBS="$LIBS $GST_LIBS"
224 [[#include <gst/video/video-overlay-composition.h>]],
225 [[GstVideoOverlayComposition *c;
226 c = gst_video_overlay_composition_new(0);]])],
227 [ac_cv_have_gst_video_overlay_composition="yes"],
228 [ac_cv_have_gst_video_overlay_composition="no"]
230 CPPFLAGS="$saved_CPPFLAGS"
233 if test "$ac_cv_have_gst_video_overlay_composition" != "yes"; then
234 AC_MSG_ERROR([GstVideoOverlayComposition is not available])
237 AC_CACHE_CHECK([... with advanced format flags],
238 ac_cv_have_gst_video_overlay_hwcaps, [
239 saved_CPPFLAGS="$CPPFLAGS"
240 CPPFLAGS="$CPPFLAGS $GST_CFLAGS $GST_VIDEO_CFLAGS"
242 LIBS="$LIBS $GST_LIBS $GST_VIDEO_LIBS"
245 [[#include <gst/video/video-overlay-composition.h>]],
246 [[GstVideoOverlayRectangle *rect;
247 const guint w = 64, h = 64;
249 GST_VIDEO_OVERLAY_FORMAT_FLAG_PREMULTIPLIED_ALPHA|
250 GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA);
251 rect = gst_video_overlay_rectangle_new_argb(NULL, w, h, w * 4,
253 gst_video_overlay_rectangle_set_global_alpha(rect, 0.5f);]])],
254 [ac_cv_have_gst_video_overlay_hwcaps="yes"],
255 [ac_cv_have_gst_video_overlay_hwcaps="no"]
257 CPPFLAGS="$saved_CPPFLAGS"
260 if test "$ac_cv_have_gst_video_overlay_hwcaps" = "yes"; then
261 AC_DEFINE_UNQUOTED([HAVE_GST_VIDEO_OVERLAY_HWCAPS], 1,
262 [Defined to 1 if GstVideoOverlayComposition API supports HW hints.])
265 dnl ... GstVideoDecoder (gstreamer-video)
266 AC_CACHE_CHECK([for GstVideoDecoder],
267 ac_cv_have_gst_video_decoder, [
268 saved_CPPFLAGS="$CPPFLAGS"
269 CPPFLAGS="$CPPFLAGS $GST_CFLAGS $GST_VIDEO_CFLAGS"
271 LIBS="$LIBS $GST_LIBS $GST_VIDEO_LIBS"
274 [[#include <gst/video/gstvideodecoder.h>]],
275 [[GstVideoCodecFrame *f;
276 GstVideoDecoder vdec;
277 f = g_slice_new0(GstVideoCodecFrame);
279 gst_video_decoder_have_frame(&vdec);
280 gst_video_decoder_finish_frame(&vdec, f);
281 gst_video_codec_frame_unref(f);]])],
282 [ac_cv_have_gst_video_decoder="yes"],
283 [ac_cv_have_gst_video_decoder="no"]
285 CPPFLAGS="$saved_CPPFLAGS"
288 AM_CONDITIONAL([USE_LOCAL_GST_VIDEO_DECODER],
289 [test "$ac_cv_have_gst_video_decoder" != "yes"])
291 dnl GStreamer -bad plugins
292 PKG_CHECK_MODULES([GST_BASEVIDEO],
293 [gstreamer-basevideo-$GST_API_VERSION >= $GST_PLUGINS_BAD_VERSION_REQUIRED])
295 dnl ... bitstream parsers
296 if test "$enable_builtin_codecparsers" = "yes"; then
297 ac_cv_have_gst_mpeg2_parser="no"
298 ac_cv_have_gst_h264_parser="no"
299 ac_cv_have_gst_jpeg_parser="no"
301 PKG_CHECK_MODULES([GST_CODEC_PARSERS],
302 [gstreamer-codecparsers-$GST_API_VERSION >= $GST_PLUGINS_BAD_VERSION_REQUIRED])
304 dnl ... MPEG-2 parser, with the required extensions
305 AC_CACHE_CHECK([for MPEG-2 parser],
306 ac_cv_have_gst_mpeg2_parser, [
307 saved_CPPFLAGS="$CPPFLAGS"
308 CPPFLAGS="$CPPFLAGS $GST_CFLAGS $GST_CODEC_PARSERS_CFLAGS"
310 LIBS="$LIBS $GST_LIBS $GST_CODEC_PARSERS_LIBS"
313 [[#include <gst/codecparsers/gstmpegvideoparser.h>]],
314 [[GstMpegVideoSequenceHdr seq_hdr;
315 GstMpegVideoSequenceExt seq_ext;
316 GstMpegVideoSequenceDisplayExt seq_dpy;
317 gst_mpeg_video_finalise_mpeg2_sequence_header(&seq_hdr,
318 &seq_ext, &seq_dpy);]])],
319 [ac_cv_have_gst_mpeg2_parser="yes"],
320 [ac_cv_have_gst_mpeg2_parser="no"]
322 CPPFLAGS="$saved_CPPFLAGS"
325 AM_CONDITIONAL([USE_LOCAL_CODEC_PARSERS_MPEG2],
326 [test "$ac_cv_have_gst_mpeg2_parser" != "yes"])
328 dnl ... H.264 parser, with the required extensions
329 AC_CACHE_CHECK([for H.264 parser],
330 ac_cv_have_gst_h264_parser, [
331 saved_CPPFLAGS="$CPPFLAGS"
332 CPPFLAGS="$CPPFLAGS $GST_CFLAGS $GST_CODEC_PARSERS_CFLAGS"
334 LIBS="$LIBS $GST_LIBS $GST_CODEC_PARSERS_LIBS"
337 [[#include <gst/codecparsers/gsth264parser.h>]],
338 [[GstH264SliceHdr slice_hdr;
339 GstH264VUIParams vui_params;
340 GstH264Profile profile = GST_H264_PROFILE_HIGH;
341 slice_hdr.n_emulation_prevention_bytes = 0;
342 vui_params.par_n = 0;
343 vui_params.par_d = 0;]])],
344 [ac_cv_have_gst_h264_parser="yes"],
345 [ac_cv_have_gst_h264_parser="no"]
347 CPPFLAGS="$saved_CPPFLAGS"
350 AM_CONDITIONAL([USE_LOCAL_CODEC_PARSERS_H264],
351 [test "$ac_cv_have_gst_h264_parser" != "yes"])
353 dnl ... JPEG parser, not upstream yet
354 AC_CACHE_CHECK([for JPEG parser],
355 ac_cv_have_gst_jpeg_parser, [
356 saved_CPPFLAGS="$CPPFLAGS"
357 CPPFLAGS="$CPPFLAGS $GST_CFLAGS $GST_CODEC_PARSERS_CFLAGS"
359 LIBS="$LIBS $GST_LIBS $GST_CODEC_PARSERS_LIBS"
362 [[#include <gst/codecparsers/gstjpegparser.h>]],
363 [[GstJpegImage jpeg_image;]])],
364 [ac_cv_have_gst_jpeg_parser="yes"],
365 [ac_cv_have_gst_jpeg_parser="no"]
367 CPPFLAGS="$saved_CPPFLAGS"
370 AM_CONDITIONAL([USE_LOCAL_CODEC_PARSERS_JPEG],
371 [test "$ac_cv_have_gst_jpeg_parser" != "yes"])
373 case $GST_API_VERSION in
374 0.10) lt_bias=gst0_vaapi_lt_current_bias;;
375 1.0) lt_bias=gst1_vaapi_lt_current_bias;;
377 GST_VAAPI_MAJOR_VERSION=`expr gst_vaapi_lt_current - "$lt_bias"`
378 AC_SUBST(GST_VAAPI_MAJOR_VERSION)
380 dnl GST_VAAPI_LT_LDFLAGS:
381 GST_VAAPI_LT_CURRENT="$GST_VAAPI_MAJOR_VERSION"
382 GST_VAAPI_LT_REV=gst_vaapi_lt_revision
383 GST_VAAPI_LT_AGE=gst_vaapi_lt_age
384 GST_VAAPI_LT_VERSION="$GST_VAAPI_LT_CURRENT:$GST_VAAPI_LT_REV:$GST_VAAPI_LT_AGE"
385 GST_VAAPI_LT_LDFLAGS="-version-info $GST_VAAPI_LT_VERSION"
386 AC_SUBST(GST_VAAPI_LT_VERSION)
387 AC_SUBST(GST_VAAPI_LT_LDFLAGS)
390 dnl LDFLAGS really should only contain flags, not libs - they get added before
391 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
392 GST_ALL_LDFLAGS="-no-undefined"
393 AC_SUBST(GST_ALL_LDFLAGS)
395 dnl GST_PLUGIN_LDFLAGS:
396 dnl this really should only contain flags, not libs - they get added before
397 dnl whatevertarget_LIBS and -L flags here affect the rest of the linking
398 GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^([_]*gst_plugin_desc|gst_.*_get_type)\$\$' $GST_ALL_LDFLAGS"
399 AC_SUBST(GST_PLUGIN_LDFLAGS)
401 dnl Check for the GStreamer plugins directory
402 AC_ARG_VAR([GST_PLUGIN_PATH], [installation path for gstreamer-vaapi plugin elements])
403 AC_MSG_CHECKING([for GStreamer plugins directory])
404 if test -d "$GST_PLUGIN_PATH"; then
405 GST_PLUGINS_DIR="$GST_PLUGIN_PATH"
407 GST_PLUGINS_DIR=`$PKG_CONFIG gstreamer-$GST_API_VERSION --variable pluginsdir`
408 if test -z "$GST_PLUGINS_DIR"; then
409 GST_PLUGINS_DIR="\$(libdir)/gstreamer-$GST_API_VERSION"
412 AC_MSG_RESULT([$GST_PLUGINS_DIR])
413 plugindir="$GST_PLUGINS_DIR"
416 dnl ---------------------------------------------------------------------------
418 dnl ---------------------------------------------------------------------------
420 dnl Check for DRM/libudev
422 if test "$enable_drm" = "yes"; then
423 PKG_CHECK_MODULES(DRM, [libdrm], [USE_DRM=1], [USE_DRM=0])
424 PKG_CHECK_MODULES(UDEV, [libudev], [:], [USE_DRM=0])
426 if test $USE_DRM -eq 1; then
427 saved_CPPFLAGS="$CPPFLAGS"
428 CPPFLAGS="$CPPFLAGS $DRM_CFLAGS"
429 AC_CHECK_HEADERS([drm_fourcc.h], [:], [USE_DRM=0])
430 CPPFLAGS="$saved_CPPFLAGS"
436 if test "$enable_x11" = "yes"; then
437 PKG_CHECK_MODULES(X11, [x11], [USE_X11=1], [USE_X11=0])
438 if test $USE_X11 -eq 1; then
439 saved_CPPFLAGS="$CPPFLAGS"
440 CPPFLAGS="$CPPFLAGS $X11_CFLAGS"
441 AC_CHECK_HEADERS([X11/Xlib.h X11/Xutil.h X11/Xatom.h], [:], [USE_X11=0])
442 CPPFLAGS="$saved_CPPFLAGS"
448 if test $USE_X11 -eq 1; then
450 PKG_CHECK_MODULES([XRANDR], [xrandr], [:], [HAVE_XRANDR=0])
451 if test $HAVE_XRANDR -eq 1; then
452 saved_CPPFLAGS="$CPPFLAGS"
453 CPPFLAGS="$CPPFLAGS $XRANDR_CFLAGS"
454 AC_CHECK_HEADERS([X11/extensions/Xrandr.h], [:], [HAVE_XRANDR=0])
455 CPPFLAGS="$saved_CPPFLAGS"
458 if test $HAVE_XRANDR -eq 1; then
459 AC_DEFINE_UNQUOTED(HAVE_XRANDR, 1,
460 [Defined to 1 if the XRandR extension exists.])
465 if test "$enable_glx" = "yes"; then
470 if test "$enable_opengl" = "yes"; then
472 PKG_CHECK_MODULES([GL], [gl], [:], [HAVE_GL=0])
473 saved_CPPFLAGS="$CPPFLAGS"
474 CPPFLAGS="$CPPFLAGS $GL_CFLAGS"
475 AC_CHECK_HEADERS([GL/gl.h GL/glext.h], [:], [HAVE_GL=0], [
480 CPPFLAGS="$saved_CPPFLAGS"
485 if test "$enable_glx" = "yes" -a $HAVE_GL -eq 1 -a $USE_X11 -eq 1; then
487 saved_CPPFLAGS="$CPPFLAGS"
489 CPPFLAGS="$CPPFLAGS $GL_CFLAGS"
490 LIBS="$LIBS $GL_LIBS"
491 AC_CHECK_HEADERS([GL/glx.h], [:], [USE_GLX=0], [
496 AC_CHECK_LIB([GL], [glXCreateContext], [:], [USE_GLX=0])
497 CPPFLAGS="$saved_CPPFLAGS"
501 dnl Check for Wayland
503 if test "$enable_wayland" = "yes"; then
504 PKG_CHECK_MODULES(WAYLAND, [wayland-client >= wayland_api_version],
505 [USE_WAYLAND=1], [USE_WAYLAND=0])
507 if test $USE_WAYLAND -eq 1; then
508 saved_CPPFLAGS="$CPPFLAGS"
509 CPPFLAGS="$CPPFLAGS $WAYLAND_CFLAGS"
510 AC_CHECK_HEADERS([wayland-client.h], [:], [USE_WAYLAND=0])
511 CPPFLAGS="$saved_CPPFLAGS"
515 dnl ---------------------------------------------------------------------------
517 dnl ---------------------------------------------------------------------------
520 LIBVA_PKGNAME="libva"
521 PKG_CHECK_MODULES(LIBVA, [$LIBVA_PKGNAME >= va_api_version])
522 AC_SUBST(LIBVA_PKGNAME)
524 VA_VERSION=`$PKG_CONFIG --modversion libva`
525 VA_MAJOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f1`
526 VA_MINOR_VERSION=`echo "$VA_VERSION" | cut -d'.' -f2`
527 VA_MICRO_VERSION=`echo "$VA_VERSION" | cut -d'.' -f3`
528 VA_VERSION_STR="$VA_VERSION"
532 if test $USE_DRM -eq 1; then
533 PKG_CHECK_MODULES([LIBVA_DRM], [libva-drm >= va_api_drm_version],
534 [HAVE_VA_DRM=1], [USE_DRM=0])
536 if test $HAVE_VA_DRM -eq 1; then
537 saved_CPPFLAGS="$CPPFLAGS"
538 CPPFLAGS="$LIBVA_DRM_CFLAGS"
539 AC_CHECK_HEADERS([va/va_drm.h], [:], [HAVE_VA_DRM=0 USE_DRM=0])
540 CPPFLAGS="$saved_CPPFLAGS"
546 LIBVA_X11_PKGNAME="libva-x11"
547 if test $USE_X11 -eq 1; then
548 PKG_CHECK_MODULES(LIBVA_X11, [$LIBVA_X11_PKGNAME >= va_api_x11_version],
549 [HAVE_VA_X11=1], [USE_X11=0])
551 AC_SUBST(LIBVA_X11_PKGNAME)
555 LIBVA_GLX_PKGNAME="libva-glx"
556 if test $USE_GLX -eq 1; then
557 PKG_CHECK_MODULES(LIBVA_GLX, [$LIBVA_GLX_PKGNAME >= va_api_glx_version],
558 [HAVE_VA_GLX=1], [LIBVA_GLX_PKGNAME="$LIBVA_X11_PKGNAME"])
560 if test $HAVE_VA_GLX -eq 1; then
561 saved_CPPFLAGS="$CPPFLAGS"
562 CPPFLAGS="$LIBVA_GLX_CFLAGS"
563 AC_CHECK_HEADERS([va/va_glx.h], [:], [HAVE_VA_GLX=0])
564 CPPFLAGS="$saved_CPPFLAGS"
567 AC_SUBST(LIBVA_GLX_PKGNAME)
569 dnl Check for JPEG decoding API (0.32.1+)
571 AC_CACHE_CHECK([for JPEG decoding API],
572 ac_cv_have_jpeg_decoding_api, [
573 saved_CPPFLAGS="$CPPFLAGS"
574 CPPFLAGS="$CPPFLAGS $LIBVA_CFLAGS"
576 LIBS="$LIBS $LIBVA_LIBS"
579 [[#include <va/va.h>]],
580 [[VAPictureParameterBufferJPEGBaseline pic_param;
581 VASliceParameterBufferJPEGBaseline slice_param;
582 VAHuffmanTableBufferJPEGBaseline huffman_table;
583 VAIQMatrixBufferJPEGBaseline iq_matrix;]])],
584 [ac_cv_have_jpeg_decoding_api="yes" USE_JPEG_DECODER=1],
585 [ac_cv_have_jpeg_decoding_api="no"]
587 CPPFLAGS="$saved_CPPFLAGS"
592 if test "$enable_wayland" = "yes"; then
593 PKG_CHECK_MODULES([LIBVA_WAYLAND], [libva-wayland >= va_api_wld_version],
594 [:], [USE_WAYLAND=0])
597 dnl ---------------------------------------------------------------------------
598 dnl -- Generate files and summary --
599 dnl ---------------------------------------------------------------------------
601 case ":$USE_X11:$USE_GLX:$USE_WAYLAND:$USE_DRM:" in
605 AC_MSG_ERROR([No renderer is enabled])
609 AC_DEFINE_UNQUOTED(USE_JPEG_DECODER, $USE_JPEG_DECODER,
610 [Defined to 1 if JPEG decoder is used])
611 AM_CONDITIONAL(USE_JPEG_DECODER, test $USE_JPEG_DECODER -eq 1)
613 AC_DEFINE_UNQUOTED(USE_DRM, $USE_DRM,
614 [Defined to 1 if DRM is enabled])
615 AM_CONDITIONAL(USE_DRM, test $USE_DRM -eq 1)
617 AC_DEFINE_UNQUOTED(USE_X11, $USE_X11,
618 [Defined to 1 if X11 is enabled])
619 AM_CONDITIONAL(USE_X11, test $USE_X11 -eq 1)
621 AC_DEFINE_UNQUOTED(USE_GLX, $USE_GLX,
622 [Defined to 1 if GLX is enabled])
623 AM_CONDITIONAL(USE_GLX, test $USE_GLX -eq 1)
625 AC_DEFINE_UNQUOTED(USE_WAYLAND, $USE_WAYLAND,
626 [Defined to 1 if WAYLAND is enabled])
627 AM_CONDITIONAL(USE_WAYLAND, test $USE_WAYLAND -eq 1)
629 pkgconfigdir=${libdir}/pkgconfig
630 AC_SUBST(pkgconfigdir)
634 debian.upstream/Makefile
635 debian.upstream/changelog
636 debian.upstream/control
637 debian.upstream/gstreamer$GST_API_VERSION-vaapi-doc.install:\
638 debian.upstream/gstreamer-vaapi-doc.install.in
639 debian.upstream/gstreamer$GST_API_VERSION-vaapi.install:\
640 debian.upstream/gstreamer-vaapi.install.in
641 debian.upstream/libgstvaapi$GST_API_VERSION-dev.install:\
642 debian.upstream/libgstvaapi-dev.install.in
643 debian.upstream/libgstvaapi$GST_VAAPI_MAJOR_VERSION.install:\
644 debian.upstream/libgstvaapi.install.in
645 debian.upstream/libgstvaapi-drm-$GST_VAAPI_MAJOR_VERSION.install:\
646 debian.upstream/libgstvaapi-drm.install.in
647 debian.upstream/libgstvaapi-glx-$GST_VAAPI_MAJOR_VERSION.install:\
648 debian.upstream/libgstvaapi-glx.install.in
649 debian.upstream/libgstvaapi-wayland-$GST_VAAPI_MAJOR_VERSION.install:\
650 debian.upstream/libgstvaapi-wayland.install.in
651 debian.upstream/libgstvaapi-x11-$GST_VAAPI_MAJOR_VERSION.install:\
652 debian.upstream/libgstvaapi-x11.install.in
654 docs/reference/Makefile
655 docs/reference/libs/Makefile
656 docs/reference/libs/libs-docs.xml
657 docs/reference/plugins/Makefile
658 docs/reference/plugins/plugins-docs.xml
661 gst-libs/gst/Makefile
662 gst-libs/gst/codecparsers/Makefile
663 gst-libs/gst/vaapi/Makefile
664 gst-libs/gst/video/Makefile
668 pkgconfig/gstreamer-vaapi-$GST_API_VERSION.pc:\
669 pkgconfig/gstreamer-vaapi.pc.in
670 pkgconfig/gstreamer-vaapi-drm-$GST_API_VERSION.pc:\
671 pkgconfig/gstreamer-vaapi-drm.pc.in
672 pkgconfig/gstreamer-vaapi-glx-$GST_API_VERSION.pc:\
673 pkgconfig/gstreamer-vaapi-glx.pc.in
674 pkgconfig/gstreamer-vaapi-wayland-$GST_API_VERSION.pc:\
675 pkgconfig/gstreamer-vaapi-wayland.pc.in
676 pkgconfig/gstreamer-vaapi-x11-$GST_API_VERSION.pc:\
677 pkgconfig/gstreamer-vaapi-x11.pc.in
684 test $1 -eq 1 && echo yes || echo no
688 AS_IF([test $USE_DRM -eq 1], [VIDEO_OUTPUTS="$VIDEO_OUTPUTS drm"])
689 AS_IF([test $USE_X11 -eq 1], [VIDEO_OUTPUTS="$VIDEO_OUTPUTS x11"])
690 AS_IF([test $USE_GLX -eq 1], [VIDEO_OUTPUTS="$VIDEO_OUTPUTS glx"])
691 AS_IF([test $USE_WAYLAND -eq 1], [VIDEO_OUTPUTS="$VIDEO_OUTPUTS wayland"])
694 echo $PACKAGE configuration summary:
696 echo GStreamer API version ............ : $GST_API_VERSION
697 echo VA-API version ................... : $VA_VERSION_STR
698 echo Video outputs .................... : $VIDEO_OUTPUTS