mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
b2f9808722
https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller <tim@centricular.com> Mathieu Duponchelle <mathieu.duponchelle@opencreed.com> Jussi Pakkanen <jpakkane@gmail.com> (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems.
96 lines
2.3 KiB
Meson
96 lines
2.3 KiB
Meson
gst_base_sources = [
|
|
'gstadapter.c',
|
|
'gstbaseparse.c',
|
|
'gstbasesink.c',
|
|
'gstbasesrc.c',
|
|
'gstbasetransform.c',
|
|
'gstbitreader.c',
|
|
'gstbytereader.c',
|
|
'gstbytewriter.c',
|
|
'gstcollectpads.c',
|
|
'gstdataqueue.c',
|
|
'gstflowcombiner.c',
|
|
'gstpushsrc.c',
|
|
'gstqueuearray.c',
|
|
'gsttypefindhelper.c',
|
|
]
|
|
|
|
gst_base_headers = [
|
|
'base.h',
|
|
'gstadapter.h',
|
|
'gstbaseparse.h',
|
|
'gstbasesink.h',
|
|
'gstbasesrc.h',
|
|
'gstbasetransform.h',
|
|
'gstbitreader.h',
|
|
'gstbytereader.h',
|
|
'gstbytewriter.h',
|
|
'gstcollectpads.h',
|
|
'gstdataqueue.h',
|
|
'gstflowcombiner.h',
|
|
'gstpushsrc.h',
|
|
'gstqueuearray.h',
|
|
'gsttypefindhelper.h',
|
|
]
|
|
|
|
if libtype != 'shared'
|
|
gst_base_static = static_library('gstbase-@0@'.format(apiversion),
|
|
gst_base_sources,
|
|
c_args : gst_c_args,
|
|
install : true,
|
|
include_directories : [configinc, libsinc],
|
|
dependencies : [gobject_dep, glib_dep, gst_dep],
|
|
)
|
|
gst_base = gst_base_static
|
|
endif
|
|
|
|
if libtype != 'static'
|
|
gst_base_shared = shared_library('gstbase-@0@'.format(apiversion),
|
|
gst_base_sources,
|
|
c_args : gst_c_args,
|
|
version : libversion,
|
|
soversion : soversion,
|
|
install : true,
|
|
include_directories : [configinc, libsinc],
|
|
dependencies : [gobject_dep, glib_dep, gst_dep],
|
|
vs_module_defs: vs_module_defs_dir + 'libgstbase.def',
|
|
)
|
|
gst_base = gst_base_shared
|
|
if build_gir
|
|
gnome.generate_gir(gst_base_shared,
|
|
sources : gst_base_sources + gst_base_headers,
|
|
namespace : 'GstBase',
|
|
nsversion : apiversion,
|
|
identifier_prefix : 'Gst',
|
|
symbol_prefix : 'gst',
|
|
export_packages : 'gstreamer-base-1.0',
|
|
link_with : libgst_shared,
|
|
include_directories : [configinc, libsinc, privinc],
|
|
includes : ['GLib-2.0', 'GObject-2.0', 'GModule-2.0', 'Gst-1.0'],
|
|
install : true,
|
|
extra_args : gir_init_section,
|
|
)
|
|
endif
|
|
endif
|
|
|
|
gst_base_dep = declare_dependency(link_with : gst_base,
|
|
include_directories : [libsinc],
|
|
dependencies : [gst_dep])
|
|
|
|
install_headers('base.h',
|
|
'gstadapter.h',
|
|
'gstbaseparse.h',
|
|
'gstbasesink.h',
|
|
'gstbasesrc.h',
|
|
'gstbasetransform.h',
|
|
'gstbitreader.h',
|
|
'gstbytereader.h',
|
|
'gstbytewriter.h',
|
|
'gstcollectpads.h',
|
|
'gstdataqueue.h',
|
|
'gstflowcombiner.h',
|
|
'gstpushsrc.h',
|
|
'gstqueuearray.h',
|
|
'gsttypefindhelper.h',
|
|
subdir : 'gstreamer-1.0/gst/base',
|
|
)
|