[template-glib] build: check if linker supports version scripts
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [template-glib] build: check if linker supports version scripts
- Date: Sun, 3 Sep 2017 21:50:19 +0000 (UTC)
commit d98e6781541663658318585e421e5d23997db04a
Author: Christian Hergert <chergert redhat com>
Date: Sun Sep 3 14:49:12 2017 -0700
build: check if linker supports version scripts
meson.build | 6 ++++++
src/meson.build | 7 ++++++-
2 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/meson.build b/meson.build
index 23c169b..4c934e1 100644
--- a/meson.build
+++ b/meson.build
@@ -82,6 +82,12 @@ add_project_arguments(
language: 'c'
)
+# Check if we can use version scripts for ABI exports
+ld_supports_version_script = cc.links('''
+ int main (void) { return 0; }
+''', args: '-Wl,--version-script,' + join_paths(meson.source_root(), 'src/template-glib.map'))
+message('Linker supports --version-script: @0@'.format(ld_supports_version_script))
+
# Setup various paths that subdirectory meson.build files need
package_subdir = get_option('package_subdir')
libdir = join_paths(get_option('libdir'), package_subdir)
diff --git a/src/meson.build b/src/meson.build
index 3712539..2cf452c 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -140,12 +140,17 @@ if libdir == '' or includedir == ''
error('You must set pkglibdir and pkgincludedir when using as a subproject')
endif
+libtemplate_glib_link_args = []
+if ld_supports_version_script
+libtemplate_glib_link_args += [ '-Wl,--version-script,' + join_paths(meson.current_source_dir(),
'template-glib.map') ]
+endif
+
libtemplate_glib = library(
'template_glib-' + apiversion,
libtemplate_glib_sources,
link_depends: 'template-glib.map',
- link_args: [ '-Wl,--version-script,' + join_paths(meson.current_source_dir(), 'template-glib.map') ],
+ link_args: libtemplate_glib_link_args,
dependencies: libtemplate_glib_deps,
soversion: soversion,
version: libversion,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]