gstreamer/ext/gl/meson.build
Tim-Philipp Müller cec90050b0 meson: gl: find libjpeg via pkg-config
This effectively (but optionally) requires libjpeg-turbo which
ships with a .pc file and is what pretty much everyone these days
uses anyway for libjpeg, so shouldn't be a problem hopefully.

https://bugzilla.gnome.org/show_bug.cgi?id=796947
2018-08-16 11:09:51 +01:00

125 lines
3.1 KiB
Meson

# These have to stay in -bad until we can move GstVideoAggregator to -base
# 'gstglbasemixer.c',
# 'gstglmixerbin.c',
# 'gstglmixer.c',
# 'gstglvideomixer.c',
# 'gstglstereomix.c',
opengl_sources = [
'gstopengl.c',
'gstglalpha.c',
'gstgluploadelement.c',
'gstgldownloadelement.c',
'gstglcolorconvertelement.c',
'gstglfilterbin.c',
'gstglsinkbin.c',
'gstglsrcbin.c',
'gstglimagesink.c',
'gstglfiltercube.c',
'gstgleffects.c',
'effects/gstgleffectscurves.c',
'effects/gstgleffectssources.c',
'effects/gstgleffectidentity.c',
'effects/gstgleffectmirror.c',
'effects/gstgleffectsqueeze.c',
'effects/gstgleffectstretch.c',
'effects/gstgleffectfisheye.c',
'effects/gstgleffecttwirl.c',
'effects/gstgleffectbulge.c',
'effects/gstgleffecttunnel.c',
'effects/gstgleffectsquare.c',
'effects/gstgleffectlumatocurve.c',
'effects/gstgleffectrgbtocurve.c',
'effects/gstgleffectsin.c',
'effects/gstgleffectxray.c',
'effects/gstgleffectglow.c',
'effects/gstgleffectblur.c',
'effects/gstgleffectsobel.c',
'effects/gstgleffectlaplacian.c',
'gstglcolorscale.c',
'gstglcolorbalance.c',
'gstglfiltershader.c',
'gstglfilterapp.c',
'gstglviewconvert.c',
'gstglstereosplit.c',
'gstgldeinterlace.c',
'gltestsrc.c',
'gstgltestsrc.c',
'gstglutils.c'
]
if get_option('gl').disabled() or not gstgl_dep.found()
subdir_done()
endif
optional_deps = []
if gl_dep.found() # have desktop GL
# These have to stay in -bad until we can move GstVideoAggregator to -base
# 'gstglmosaic.c',
opengl_sources += [
'gstglfilterglass.c',
]
endif
graphene_dep = dependency('graphene-1.0', version : '>=1.4.0', required : get_option('gl-graphene'))
if graphene_dep.found()
optional_deps += graphene_dep
core_conf.set('HAVE_GRAPHENE', true)
opengl_sources += [
'gstgltransformation.c',
'gstglvideoflip.c',
]
endif
png_dep = dependency('libpng', version : '>=1.0', required : get_option('gl-png'))
jpeg_dep = dependency('libjpeg', required : get_option('gl-jpeg'))
if png_dep.found()
optional_deps += png_dep
core_conf.set('HAVE_PNG', true)
opengl_sources += [
'gstgldifferencematte.c',
]
if jpeg_dep.found()
optional_deps += jpeg_dep
core_conf.set('HAVE_JPEG', true)
opengl_sources += [
'gstgloverlay.c',
]
endif
endif
if glconf.has('GST_GL_HAVE_WINDOW_COCOA')
quartzcore_dep = dependency('QuartzCore', required : false)
if quartzcore_dep.found() # have cocoa
opengl_sources += [
'caopengllayersink.m',
]
optional_deps += quartzcore_dep
endif
endif
if x11_dep.found()
# for XInitThreads()
optional_deps += x11_dep
endif
if bcm_host_dep.found()
optional_deps += bcm_host_dep
endif
if egl_dep.found() and cc.has_header('libdrm/drm_fourcc.h')
optional_deps += allocators_dep
endif
gstopengl = library('gstopengl',
opengl_sources,
c_args : gst_plugins_base_args,
link_args : noseh_link_args,
include_directories : [configinc],
dependencies : [gstgl_dep, video_dep,
gst_base_dep, gst_controller_dep, libm] + optional_deps,
install : true,
install_dir : plugins_install_dir)
pkgconfig.generate(gstopengl, install_dir : plugins_pkgconfig_install_dir)