diff --git a/subprojects/gstreamer/gst/meson.build b/subprojects/gstreamer/gst/meson.build index 03f4996731..7ed2a35702 100644 --- a/subprojects/gstreamer/gst/meson.build +++ b/subprojects/gstreamer/gst/meson.build @@ -272,7 +272,7 @@ libgst = library('gstreamer-1.0', gst_sources, link_with : printf_lib, install : true, dependencies : [gobject_dep, gmodule_dep, glib_dep, mathlib, dl_dep, - backtrace_deps, platform_deps, extra_deps], + backtrace_deps, platform_deps, network_deps, extra_deps], ) gst_compile_args = [] diff --git a/subprojects/gstreamer/libs/gst/net/meson.build b/subprojects/gstreamer/libs/gst/net/meson.build index 17c63c8e1a..f4937d60f0 100644 --- a/subprojects/gstreamer/libs/gst/net/meson.build +++ b/subprojects/gstreamer/libs/gst/net/meson.build @@ -32,7 +32,7 @@ gst_net = library('gstnet-@0@'.format(apiversion), soversion : soversion, darwin_versions : osxversion, install : true, - dependencies : [gio_dep, gst_base_dep, dl_dep], + dependencies : [gio_dep, gst_base_dep, dl_dep, network_deps], ) library_def = {'lib': gst_net} diff --git a/subprojects/gstreamer/meson.build b/subprojects/gstreamer/meson.build index 1ad53bdfff..c69c35eeae 100644 --- a/subprojects/gstreamer/meson.build +++ b/subprojects/gstreamer/meson.build @@ -573,6 +573,21 @@ mathlib = cc.find_library('m', required : false) # Also provides clock_gettime in glibc < 2.17 rt_lib = cc.find_library('rt', required : false) +# +# Solaris and Illumos distros split a lot of networking-related code +# into '-lsocket -lnsl'. Anything that calls socketpair(), getifaddr(), +# etc. probably needs to include network_deps +# +socket_lib = cc.find_library('socket', required: false) +nsl_lib = cc.find_library('nsl', required: false) +network_deps = [] +if socket_lib.found() + network_deps += socket_lib +endif +if nsl_lib.found() + network_deps += nsl_lib +endif + gir = find_program('g-ir-scanner', required : get_option('introspection')) gnome = import('gnome') diff --git a/subprojects/gstreamer/tests/check/meson.build b/subprojects/gstreamer/tests/check/meson.build index 65402791aa..7d68212c6f 100644 --- a/subprojects/gstreamer/tests/check/meson.build +++ b/subprojects/gstreamer/tests/check/meson.build @@ -136,7 +136,7 @@ if get_option('check').disabled() endif endif -gst_deps = [gst_dep, gst_base_dep, gst_check_dep, gst_net_dep, gst_controller_dep, gio_dep, gmodule_dep] +gst_deps = [gst_dep, gst_base_dep, gst_check_dep, gst_net_dep, gst_controller_dep, gio_dep, gmodule_dep, network_deps] foreach t : core_tests fname = t[0] diff --git a/subprojects/gstreamer/tests/misc/meson.build b/subprojects/gstreamer/tests/misc/meson.build index ca9b5fa084..82140436d5 100644 --- a/subprojects/gstreamer/tests/misc/meson.build +++ b/subprojects/gstreamer/tests/misc/meson.build @@ -1,3 +1,3 @@ executable('netclock-replay', 'netclock-replay.c', include_directories: libsinc, - dependencies : [gio_dep, gst_dep]) + dependencies : [gio_dep, gst_dep, network_deps])