gstreamer/gst-libs/gst/vaapi/Makefile.am
Víctor Manuel Jáquez Leal 7e05160aaa libs: egl: utils: use eglGetPlatformDisplay()
eglGetDisplay() is currently broken in Mesa for Wayland.  Also using
eglGetDisplay() is rather fragile, and it is recommended to use
eglGetPlatformDisplay() when possible.

In order to do that, this patch uses the helper in GstGL. If
gstreamer-vaapi is not compiled with GstGL support, eglGetDisplay()
will be used.

https://bugzilla.gnome.org/show_bug.cgi?id=790493
2018-01-12 20:19:59 +01:00

556 lines
13 KiB
Makefile

noinst_LTLIBRARIES = libgstvaapi.la
if USE_DRM
noinst_LTLIBRARIES += libgstvaapi-drm.la
endif
if USE_X11
noinst_LTLIBRARIES += libgstvaapi-x11.la
endif
if USE_GLX
noinst_LTLIBRARIES += libgstvaapi-glx.la
endif
if USE_EGL
noinst_LTLIBRARIES += libgstvaapi-egl.la
endif
if USE_WAYLAND
noinst_LTLIBRARIES += libgstvaapi-wayland.la
endif
libgstvaapi_cflags = \
-DIN_LIBGSTVAAPI_CORE \
-DGST_USE_UNSTABLE_API \
-I$(top_srcdir)/gst-libs \
-I$(top_builddir)/gst-libs \
$(GST_BASE_CFLAGS) \
$(GST_BASEVIDEO_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(GST_CFLAGS) \
$(GST_CODEC_PARSERS_CFLAGS) \
$(LIBVA_CFLAGS) \
$(NULL)
libgstvaapi_libs = \
$(GST_BASE_LIBS) \
$(GST_BASEVIDEO_LIBS) \
$(GST_LIBS) \
$(GST_VIDEO_LIBS) \
$(GST_CODEC_PARSERS_LIBS) \
$(LIBVA_LIBS) \
$(top_builddir)/gst-libs/gst/base/libgstvaapi-baseutils.la \
$(NULL)
libgstvaapi_source_c = \
gstvaapibufferproxy.c \
gstvaapicodec_objects.c \
gstvaapicontext.c \
gstvaapicontext_overlay.c \
gstvaapidecoder.c \
gstvaapidecoder_dpb.c \
gstvaapidecoder_h264.c \
gstvaapidecoder_mpeg2.c \
gstvaapidecoder_mpeg4.c \
gstvaapidecoder_objects.c \
gstvaapidecoder_unit.c \
gstvaapidecoder_vc1.c \
gstvaapidisplay.c \
gstvaapifilter.c \
gstvaapiimage.c \
gstvaapiimagepool.c \
gstvaapiminiobject.c \
gstvaapiobject.c \
gstvaapiparser_frame.c \
gstvaapipixmap.c \
gstvaapiprofile.c \
gstvaapisubpicture.c \
gstvaapisurface.c \
gstvaapisurface_drm.c \
gstvaapisurfacepool.c \
gstvaapisurfaceproxy.c \
gstvaapitexture.c \
gstvaapitexturemap.c \
gstvaapiutils.c \
gstvaapiutils_core.c \
gstvaapiutils_h264.c \
gstvaapiutils_h265.c \
gstvaapiutils_h26x.c \
gstvaapiutils_mpeg2.c \
gstvaapivalue.c \
gstvaapivideopool.c \
gstvaapiwindow.c \
video-format.c \
$(NULL)
libgstvaapi_source_h = \
gstvaapibufferproxy.h \
gstvaapidecoder.h \
gstvaapidecoder_h264.h \
gstvaapidecoder_h265.h \
gstvaapidecoder_mpeg2.h \
gstvaapidecoder_mpeg4.h \
gstvaapidecoder_vc1.h \
gstvaapidisplay.h \
gstvaapifilter.h \
gstvaapiimage.h \
gstvaapiimagepool.h \
gstvaapiobject.h \
gstvaapipixmap.h \
gstvaapiprofile.h \
gstvaapisubpicture.h \
gstvaapisurface.h \
gstvaapisurface_drm.h \
gstvaapisurfacepool.h \
gstvaapisurfaceproxy.h \
gstvaapitexture.h \
gstvaapitexturemap.h \
gstvaapitypes.h \
gstvaapiutils_h264.h \
gstvaapiutils_h265.h \
gstvaapiutils_mpeg2.h \
gstvaapivalue.h \
gstvaapivideopool.h \
gstvaapiwindow.h \
video-format.h \
$(NULL)
libgstvaapi_source_priv_h = \
gstvaapibufferproxy_priv.h \
gstvaapicodec_objects.h \
gstvaapicompat.h \
gstvaapicontext.h \
gstvaapicontext_overlay.h \
gstvaapidebug.h \
gstvaapidecoder_dpb.h \
gstvaapidecoder_objects.h \
gstvaapidecoder_priv.h \
gstvaapidecoder_unit.h \
gstvaapidisplay_priv.h \
gstvaapiimage_priv.h \
gstvaapiminiobject.h \
gstvaapiobject_priv.h \
gstvaapiparser_frame.h \
gstvaapipixmap_priv.h \
gstvaapisurface_priv.h \
gstvaapisurfaceproxy_priv.h \
gstvaapitexture_priv.h \
gstvaapiutils.h \
gstvaapiutils_core.h \
gstvaapiutils_h264_priv.h \
gstvaapiutils_h265_priv.h \
gstvaapiutils_h26x_priv.h \
gstvaapiutils_mpeg2_priv.h \
gstvaapivideopool_priv.h \
gstvaapiwindow_priv.h \
gstvaapiworkarounds.h \
sysdeps.h \
$(NULL)
libgstvaapi_jpegdec_source_c = gstvaapidecoder_jpeg.c
libgstvaapi_jpegdec_source_h = gstvaapidecoder_jpeg.h
if USE_JPEG_DECODER
libgstvaapi_source_c += $(libgstvaapi_jpegdec_source_c)
libgstvaapi_source_h += $(libgstvaapi_jpegdec_source_h)
endif
libgstvaapi_vp8dec_source_c = gstvaapidecoder_vp8.c
libgstvaapi_vp8dec_source_h = gstvaapidecoder_vp8.h
if USE_VP8_DECODER
libgstvaapi_source_c += $(libgstvaapi_vp8dec_source_c)
libgstvaapi_source_h += $(libgstvaapi_vp8dec_source_h)
endif
libgstvaapi_hevcdec_source_c = gstvaapidecoder_h265.c
libgstvaapi_hevcdec_source_h = gstvaapidecoder_h265.h
if USE_H265_DECODER
libgstvaapi_source_c += $(libgstvaapi_hevcdec_source_c)
libgstvaapi_source_h += $(libgstvaapi_hevcdec_source_h)
endif
libgstvaapi_vp9dec_source_c = gstvaapidecoder_vp9.c
libgstvaapi_vp9dec_source_h = gstvaapidecoder_vp9.h
if USE_VP9_DECODER
libgstvaapi_source_c += $(libgstvaapi_vp9dec_source_c)
libgstvaapi_source_h += $(libgstvaapi_vp9dec_source_h)
endif
libgstvaapi_enc_source_c = \
gstvaapicodedbuffer.c \
gstvaapicodedbufferpool.c \
gstvaapicodedbufferproxy.c \
gstvaapiencoder.c \
gstvaapiencoder_h264.c \
gstvaapiencoder_mpeg2.c \
gstvaapiencoder_objects.c \
$(NULL)
libgstvaapi_enc_source_h = \
gstvaapicodedbuffer.h \
gstvaapicodedbufferpool.h \
gstvaapicodedbufferproxy.h \
gstvaapiencoder.h \
gstvaapiencoder_h264.h \
gstvaapiencoder_mpeg2.h \
$(NULL)
libgstvaapi_enc_source_priv_h = \
gstvaapicodedbuffer_priv.h \
gstvaapicodedbufferproxy_priv.h \
gstvaapiencoder_mpeg2_priv.h \
gstvaapiencoder_objects.h \
gstvaapiencoder_priv.h \
$(NULL)
if USE_ENCODERS
libgstvaapi_source_c += $(libgstvaapi_enc_source_c)
libgstvaapi_source_h += $(libgstvaapi_enc_source_h)
libgstvaapi_source_priv_h += $(libgstvaapi_enc_source_priv_h)
endif
libgstvaapi_jpegenc_source_c = gstvaapiencoder_jpeg.c
libgstvaapi_jpegenc_source_h = gstvaapiencoder_jpeg.h
if USE_JPEG_ENCODER
libgstvaapi_source_c += $(libgstvaapi_jpegenc_source_c)
libgstvaapi_source_h += $(libgstvaapi_jpegenc_source_h)
endif
libgstvaapi_vp8enc_source_c = gstvaapiencoder_vp8.c
libgstvaapi_vp8enc_source_h = gstvaapiencoder_vp8.h
if USE_VP8_ENCODER
libgstvaapi_source_c += $(libgstvaapi_vp8enc_source_c)
libgstvaapi_source_h += $(libgstvaapi_vp8enc_source_h)
endif
libgstvaapi_h265enc_source_c = gstvaapiencoder_h265.c
libgstvaapi_h265enc_source_h = gstvaapiencoder_h265.h
if USE_H265_ENCODER
libgstvaapi_source_c += $(libgstvaapi_h265enc_source_c)
libgstvaapi_source_h += $(libgstvaapi_h265enc_source_h)
endif
libgstvaapi_vp9enc_source_c = gstvaapiencoder_vp9.c
libgstvaapi_vp9enc_source_h = gstvaapiencoder_vp9.h
if USE_VP9_ENCODER
libgstvaapi_source_c += $(libgstvaapi_vp9enc_source_c)
libgstvaapi_source_h += $(libgstvaapi_vp9enc_source_h)
endif
libgstvaapi_h264feienc_source_c = \
gstvaapifeiutils_h264.c \
gstvaapifei_objects.c \
gstvaapifeienc_h264.c \
gstvaapifeipak_h264.c \
gstvaapiencoder_h264_fei.c \
$(NULL)
libgstvaapi_h264feienc_source_h = \
gstvaapifeiutils_h264.h \
gstvaapifei_objects.h \
gstvaapifeienc_h264.h \
gstvaapifeipak_h264.h \
gstvaapiencoder_h264_fei.h \
$(NULL)
libgstvaapi_h264feienc_source_priv_h = \
gstvaapifei_objects_priv.h \
$(NULL)
if USE_H264_FEI_ENCODER
libgstvaapi_source_c += $(libgstvaapi_h264feienc_source_c)
libgstvaapi_source_h += $(libgstvaapi_h264feienc_source_h)
libgstvaapi_source_priv_h += $(libgstvaapi_h264feienc_source_priv_h)
endif
libgstvaapi_drm_source_c = \
gstvaapidisplay_drm.c \
gstvaapiwindow_drm.c \
$(NULL)
libgstvaapi_drm_source_h = \
gstvaapidisplay_drm.h \
gstvaapiwindow_drm.h \
$(NULL)
libgstvaapi_drm_source_priv_h = \
gstvaapicompat.h \
gstvaapidisplay_drm_priv.h \
$(NULL)
libgstvaapi_x11_source_c = \
gstvaapidisplay_x11.c \
gstvaapipixmap_x11.c \
gstvaapiutils_x11.c \
gstvaapiwindow_x11.c \
$(NULL)
libgstvaapi_x11_source_h = \
gstvaapidisplay_x11.h \
gstvaapipixmap_x11.h \
gstvaapiwindow_x11.h \
$(NULL)
libgstvaapi_x11_source_priv_h = \
gstvaapicompat.h \
gstvaapidisplay_x11_priv.h \
gstvaapiutils_x11.h \
gstvaapiwindow_x11_priv.h \
$(NULL)
libgstvaapi_glx_source_c = \
gstvaapidisplay_glx.c \
gstvaapitexture_glx.c \
gstvaapiutils_glx.c \
gstvaapiwindow_glx.c \
$(NULL)
libgstvaapi_glx_source_h = \
gstvaapidisplay_glx.h \
gstvaapitexture.h \
gstvaapitexture_glx.h \
gstvaapiwindow_glx.h \
$(NULL)
libgstvaapi_glx_source_priv_h = \
gstvaapicompat.h \
gstvaapidisplay_glx_priv.h \
gstvaapiutils.h \
gstvaapiutils_glx.h \
$(NULL)
libgstvaapi_egl_source_c = \
gstvaapidisplay_egl.c \
gstvaapisurface_egl.c \
gstvaapitexture_egl.c \
gstvaapiutils_egl.c \
gstvaapiwindow_egl.c \
$(NULL)
libgstvaapi_egl_source_h = \
gstvaapidisplay_egl.h \
gstvaapisurface_egl.h \
gstvaapitexture_egl.h \
gstvaapiwindow_egl.h \
$(NULL)
libgstvaapi_egl_source_priv_h = \
egl_compat.h \
egl_vtable.h \
gstvaapidisplay_egl_priv.h \
gstvaapiutils_egl.h \
ogl_compat.h \
$(NULL)
libgstvaapi_wayland_source_c = \
gstvaapidisplay_wayland.c \
gstvaapiwindow_wayland.c \
$(NULL)
libgstvaapi_wayland_source_h = \
gstvaapidisplay_wayland.h \
gstvaapiwindow_wayland.h \
$(NULL)
libgstvaapi_wayland_source_priv_h = \
gstvaapicompat.h \
gstvaapidisplay_wayland_priv.h \
$(NULL)
libgstvaapi_la_SOURCES = \
$(libgstvaapi_source_c) \
$(libgstvaapi_source_priv_h) \
$(libgstvaapi_source_h) \
$(NULL)
libgstvaapi_la_CFLAGS = \
$(libgstvaapi_cflags) \
$(NULL)
libgstvaapi_la_LIBADD = \
$(libgstvaapi_libs) \
$(NULL)
libgstvaapi_la_LDFLAGS = \
$(GST_ALL_LDFLAGS) \
$(NULL)
libgstvaapi_drm_la_SOURCES = \
$(libgstvaapi_drm_source_c) \
$(libgstvaapi_drm_source_priv_h) \
$(libgstvaapi_drm_source_h) \
$(NULL)
libgstvaapi_drm_la_CFLAGS = \
-DGST_USE_UNSTABLE_API \
-I$(top_srcdir)/gst-libs \
$(GLIB_CFLAGS) \
$(GST_BASE_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(UDEV_CFLAGS) \
$(DRM_CFLAGS) \
$(LIBVA_DRM_CFLAGS) \
$(NULL)
libgstvaapi_drm_la_LIBADD = \
$(GLIB_LIBS) \
$(GST_LIBS) \
$(UDEV_LIBS) \
$(DRM_LIBS) \
$(LIBVA_DRM_LIBS) \
$(NULL)
libgstvaapi_drm_la_LDFLAGS = \
$(GST_ALL_LDFLAGS) \
$(NULL)
libgstvaapi_x11_la_SOURCES = \
$(libgstvaapi_x11_source_c) \
$(libgstvaapi_x11_source_priv_h) \
$(libgstvaapi_x11_source_h) \
$(NULL)
libgstvaapi_x11_la_CFLAGS = \
-DGST_USE_UNSTABLE_API \
-I$(top_srcdir)/gst-libs \
$(GLIB_CFLAGS) \
$(GST_BASE_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(X11_CFLAGS) \
$(XRANDR_CFLAGS) \
$(XRENDER_CFLAGS) \
$(LIBVA_X11_CFLAGS) \
$(NULL)
libgstvaapi_x11_la_LIBADD = \
$(GLIB_LIBS) \
$(GST_LIBS) \
$(X11_LIBS) \
$(XRANDR_LIBS) \
$(XRENDER_LIBS) \
$(LIBVA_X11_LIBS) \
$(NULL)
libgstvaapi_x11_la_LDFLAGS = \
$(GST_ALL_LDFLAGS) \
$(NULL)
libgstvaapi_glx_la_SOURCES = \
$(libgstvaapi_glx_source_c) \
$(libgstvaapi_glx_source_priv_h) \
$(libgstvaapi_glx_source_h) \
$(NULL)
libgstvaapi_glx_la_CFLAGS = \
-DGST_USE_UNSTABLE_API \
-I$(top_srcdir)/gst-libs \
$(GLIB_CFLAGS) \
$(GST_BASE_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(GL_CFLAGS) \
$(LIBVA_X11_CFLAGS) \
$(NULL)
libgstvaapi_glx_la_LIBADD = \
$(GLIB_LIBS) \
$(GST_LIBS) \
$(GST_BASE_LIBS) \
$(GST_VIDEO_LIBS) \
$(X11_LIBS) \
$(GL_LIBS) \
$(LIBVA_X11_LIBS) \
$(DLOPEN_LIBS) \
$(NULL)
libgstvaapi_glx_la_LDFLAGS = \
$(GST_ALL_LDFLAGS) \
$(NULL)
libgstvaapi_egl_la_SOURCES = \
$(libgstvaapi_egl_source_c) \
$(libgstvaapi_egl_source_priv_h) \
$(libgstvaapi_egl_source_h) \
$(NULL)
libgstvaapi_egl_la_CFLAGS = \
-DGST_USE_UNSTABLE_API \
-I$(top_srcdir)/gst-libs \
$(GLIB_CFLAGS) \
$(GMODULE_CFLAGS) \
$(GST_BASE_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(GST_GL_CFLAGS) \
$(LIBVA_CFLAGS) \
$(LIBVA_WAYLAND_CFLAGS) \
$(EGL_CFLAGS) \
$(NULL)
libgstvaapi_egl_la_LIBADD = \
$(GLIB_LIBS) \
$(GMODULE_LIBS) \
$(GST_LIBS) \
$(GST_BASE_LIBS) \
$(GST_VIDEO_LIBS) \
$(GST_GL_LIBS) \
$(EGL_LIBS) \
$(NULL)
libgstvaapi_egl_la_LDFLAGS = \
$(GST_ALL_LDFLAGS) \
$(NULL)
libgstvaapi_wayland_la_SOURCES = \
$(libgstvaapi_wayland_source_c) \
$(libgstvaapi_wayland_source_priv_h) \
$(libgstvaapi_wayland_source_h) \
$(NULL)
libgstvaapi_wayland_la_CFLAGS = \
-DGST_USE_UNSTABLE_API \
-I$(top_srcdir)/gst-libs \
$(GLIB_CFLAGS) \
$(GST_BASE_CFLAGS) \
$(GST_VIDEO_CFLAGS) \
$(WAYLAND_CFLAGS) \
$(LIBVA_WAYLAND_CFLAGS) \
$(NULL)
libgstvaapi_wayland_la_LIBADD = \
$(GLIB_LIBS) \
$(GST_LIBS) \
$(GST_VIDEO_LIBS) \
$(WAYLAND_LIBS) \
$(LIBVA_WAYLAND_LIBS) \
$(NULL)
libgstvaapi_wayland_la_LDFLAGS = \
$(GST_ALL_LDFLAGS) \
$(NULL)
EXTRA_DIST = \
$(libgstvaapi_enc_source_c) \
$(libgstvaapi_enc_source_h) \
$(libgstvaapi_enc_source_priv_h) \
$(libgstvaapi_jpegdec_source_c) \
$(libgstvaapi_jpegdec_source_h) \
$(libgstvaapi_vp8dec_source_c) \
$(libgstvaapi_vp8dec_source_h) \
$(libgstvaapi_hevcdec_source_c) \
$(libgstvaapi_hevcdec_source_h) \
$(libgstvaapi_hevcdec_source_priv_h) \
$(libgstvaapi_vp9dec_source_c) \
$(libgstvaapi_vp9dec_source_h) \
$(libgstvaapi_jpegenc_source_h) \
$(libgstvaapi_jpegenc_source_c) \
$(libgstvaapi_vp8enc_source_h) \
$(libgstvaapi_vp8enc_source_c) \
$(libgstvaapi_h265enc_source_h) \
$(libgstvaapi_h265enc_source_c) \
$(libgstvaapi_vp9enc_source_h) \
$(libgstvaapi_vp9enc_source_c) \
$(libgstvaapi_egl_source_c) \
$(libgstvaapi_egl_source_h) \
$(libgstvaapi_egl_source_priv_h) \
$(libgstvaapi_h264feienc_source_h) \
$(libgstvaapi_h264feienc_source_c) \
$(libgstvaapi_h264feienc_source_priv_h) \
$(NULL)
-include $(top_srcdir)/git.mk