diff options
author | Zebediah Figura <z.figura12@gmail.com> | 2021-03-24 14:20:18 -0500 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2022-09-13 15:48:52 +0000 |
commit | c4681ac428fa4b63a2c9ce18bb3da4cddc14e439 (patch) | |
tree | 1599b315cf89202ef8adca46976306b00ca7af0c /subprojects/gst-editing-services | |
parent | 9bb560e7ee9d39480302fe62efdcd77592191df6 (diff) |
meson: Build with -Wl,-z,nodelete to prevent unloading of dynamic libraries and plugins
GLib made the unfortunate decision to prevent libgobject from ever being
unloaded, which means that now any library which registers a static type
can't ever be unloaded either (and any library that depends on those,
ad nauseam).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/778>
Diffstat (limited to 'subprojects/gst-editing-services')
-rw-r--r-- | subprojects/gst-editing-services/meson.build | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/subprojects/gst-editing-services/meson.build b/subprojects/gst-editing-services/meson.build index e45541c812..b035dacb90 100644 --- a/subprojects/gst-editing-services/meson.build +++ b/subprojects/gst-editing-services/meson.build @@ -67,6 +67,12 @@ if cc.has_link_argument('-Wl,-Bsymbolic-functions') add_project_link_arguments('-Wl,-Bsymbolic-functions', language : 'c') endif +# glib doesn't support unloading, which means that unloading and reloading +# any library that registers static types will fail +if cc.has_link_argument('-Wl,-z,nodelete') + add_project_link_arguments('-Wl,-z,nodelete', language: 'c') +endif + # Symbol visibility if cc.get_id() == 'msvc' export_define = '__declspec(dllexport) extern' |