mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-04 23:46:43 +00:00
dd17beb681
Allow a project to use gstreamer-full as a static library and link to create a binary without dependencies. Introduce the option 'gst-full-target-type' to select the build type, dynamic(default) or static. In gstreamer-full/static build configuration gstreamer (gst.c) needs the symbol gst_init_static_plugins which is defined in gstreamer-full. All the tests and examples are linking with gstreamer but the symbol gst_init_static_plugins is only defined in the gstreamer-full library. gstreamer-full can not be built first as it needs to know what plugins will be built. One option would be to build all the examples and tests after gstreamer-full as the tools. Disable tools build in subprojects too as it will be built at the end of build process. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4128>
43 lines
1,021 B
Meson
43 lines
1,021 B
Meson
multifile_sources = [
|
|
'gstmultifilesink.c',
|
|
'gstmultifilesrc.c',
|
|
'gstmultifile.c',
|
|
'gstsplitfilesrc.c',
|
|
'gstsplitmuxpartreader.c',
|
|
'gstsplitmuxsink.c',
|
|
'gstsplitmuxsrc.c',
|
|
'gstsplitutils.c',
|
|
'patternspec.c',
|
|
'gstimagesequencesrc.c',
|
|
]
|
|
|
|
gstmultifile = library('gstmultifile',
|
|
multifile_sources,
|
|
c_args : gst_plugins_good_args,
|
|
include_directories : [configinc, libsinc],
|
|
dependencies : [gstvideo_dep, gstbase_dep,
|
|
gstpbutils_dep, gio_dep],
|
|
install : true,
|
|
install_dir : plugins_install_dir,
|
|
)
|
|
plugins += [gstmultifile]
|
|
|
|
if get_option('tests').disabled() or static_build
|
|
subdir_done()
|
|
endif
|
|
|
|
test_splitmuxpartreader_sources = [
|
|
'test-splitmuxpartreader.c',
|
|
'gstsplitmuxpartreader.c',
|
|
'gstsplitmuxsrc.c',
|
|
'gstsplitutils.c',
|
|
'patternspec.c',
|
|
]
|
|
|
|
executable('test-splitmuxpartreader',
|
|
test_splitmuxpartreader_sources,
|
|
c_args : gst_plugins_good_args,
|
|
include_directories : [configinc, libsinc],
|
|
dependencies : [gsttag_dep, gstbase_dep],
|
|
install : false,
|
|
)
|