meson: add checks for version script and dynamic list
authorDylan Baker <dylan@pnwbakers.com>
Sat, 30 Sep 2017 20:15:52 +0000 (13:15 -0700)
committerDylan Baker <dylan@pnwbakers.com>
Mon, 16 Oct 2017 23:32:43 +0000 (16:32 -0700)
These are used by gallium drivers.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
meson.build

index 54230a91ed5f1965dbd829a6581a02078412d858..2f73215ca5248714b2f73fe3f92f7faef2532b83 100644 (file)
@@ -433,14 +433,28 @@ endif
 
 # Check for some linker flags
 ld_args_bsymbolic = []
-if cc.links('int main() { return 0; }', args : '-Wl,-Bsymbolic')
+if cc.links('int main() { return 0; }', args : '-Wl,-Bsymbolic', name : 'Bsymbolic')
   ld_args_bsymbolic += '-Wl,-Bsymbolic'
 endif
 ld_args_gc_sections = []
 if cc.links('static char unused() { return 5; } int main() { return 0; }',
-            args : '-Wl,--gc-sections')
+            args : '-Wl,--gc-sections', name : 'gc-sections')
   ld_args_gc_sections += '-Wl,--gc-sections'
 endif
+with_ld_version_script = false
+if cc.links('int main() { return 0; }',
+            args : '-Wl,--version-script=@0@'.format(
+              join_paths(meson.source_root(), 'build-support/conftest.map')),
+            name : 'version-script')
+  with_ld_version_script = true
+endif
+with_ld_dynamic_list = false
+if cc.links('int main() { return 0; }',
+            args : '-Wl,--dynamic-list=@0@'.format(
+              join_paths(meson.source_root(), 'build-support/conftest.dyn')),
+            name : 'dynamic-list')
+  with_ld_dynamic_list = true
+endif
 
 # check for dl support
 if cc.has_function('dlopen')