summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2023-03-31 20:17:56 +0200
committerJan Tojnar <jtojnar@gmail.com>2023-03-31 20:44:14 +0200
commit004f48f4fc8adfccad51e2a7f4608c7fe3c28c7c (patch)
tree0dd8044e428b01b6576747a6fdc065cdd870ce4d
parent7fec23ed5e47992ae99c317b07733350280a3b84 (diff)
downloadglib-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.build2
-rw-r--r--gmodule/meson.build6
-rw-r--r--meson.build10
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 = []