diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2023-03-31 20:17:56 +0200 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2023-03-31 20:44:14 +0200 |
commit | 004f48f4fc8adfccad51e2a7f4608c7fe3c28c7c (patch) | |
tree | 0dd8044e428b01b6576747a6fdc065cdd870ce4d | |
parent | 7fec23ed5e47992ae99c317b07733350280a3b84 (diff) | |
download | glib-004f48f4fc8adfccad51e2a7f4608c7fe3c28c7c.tar.gz |
build/gmodule-2.0.pc: Move compiler flags from Libs to Cflags
Previously, `-Wl,--export-dynamic` was in `Libs` key of `gmodule-2.0.pc`,
even though `-Wl` is a compiler flag, rather than a linker one.
This caused issues with API reference builds in evolution-data-server,
which passes the output of `pkg-config --libs` through `--ldflags`
argument of `gtkdoc-scan`, which are forwarded unchanged to `ld`:
ld: unrecognized option '-Wl,--export-dynamic'
Let’s move the flag to `Cflags` so that the compiler can deal with it.
https://gitlab.gnome.org/GNOME/evolution-data-server/-/issues/463
-rw-r--r-- | gio/tests/meson.build | 2 | ||||
-rw-r--r-- | gmodule/meson.build | 6 | ||||
-rw-r--r-- | meson.build | 10 |
3 files changed, 10 insertions, 8 deletions
diff --git a/gio/tests/meson.build b/gio/tests/meson.build index b4a64926e..27de852be 100644 --- a/gio/tests/meson.build +++ b/gio/tests/meson.build @@ -767,7 +767,7 @@ if not meson.is_cross_build() resource_plugin += shared_module('resourceplugin', sources: ['resourceplugin.c', plugin_resources_c], - link_args : export_dynamic_ldflags, + c_args : export_dynamic_cflags, dependencies : common_gio_tests_deps, install_dir : installed_tests_execdir, install_tag : 'tests', diff --git a/gmodule/meson.build b/gmodule/meson.build index 4b0778e70..237992fcc 100644 --- a/gmodule/meson.build +++ b/gmodule/meson.build @@ -115,22 +115,24 @@ pkg.generate(libgmodule, description : 'Dynamic module loader for GLib', ) -pkg.generate(libraries : [libgmodule, export_dynamic_ldflags], +pkg.generate(libraries : [libgmodule], requires : ['glib-2.0'], version : glib_version, variables : [supported_var], install_dir : glib_pkgconfigreldir, filebase : 'gmodule-export-2.0', + extra_cflags : export_dynamic_cflags, name : 'GModule', description : 'Dynamic module loader for GLib', ) -pkg.generate(libraries : [libgmodule, export_dynamic_ldflags], +pkg.generate(libraries : [libgmodule], requires : ['glib-2.0'], version : glib_version, variables : [supported_var], install_dir : glib_pkgconfigreldir, filebase : 'gmodule-2.0', + extra_cflags : export_dynamic_cflags, name : 'GModule', description : 'Dynamic module loader for GLib', ) diff --git a/meson.build b/meson.build index 3576c5e6f..22557b27c 100644 --- a/meson.build +++ b/meson.build @@ -2304,15 +2304,15 @@ if host_system == 'windows' # Autotools explicitly removed --Wl,--export-all-symbols from windows builds, # with no explanation. Do the same here for now but this could be revisited if # if causes issues. - export_dynamic_ldflags = [] + export_dynamic_cflags = [] elif host_system == 'cygwin' - export_dynamic_ldflags = ['-Wl,--export-all-symbols'] + export_dynamic_cflags = ['-Wl,--export-all-symbols'] elif host_system in ['darwin', 'ios'] - export_dynamic_ldflags = [] + export_dynamic_cflags = [] elif host_system == 'sunos' - export_dynamic_ldflags = [] + export_dynamic_cflags = [] else - export_dynamic_ldflags = ['-Wl,--export-dynamic'] + export_dynamic_cflags = ['-Wl,--export-dynamic'] endif win32_cflags = [] |