summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-04-10 15:20:42 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2017-04-23 21:47:27 -0400
commite0bec52f2707c3dff041755972e3c4e8bdcf0dd3 (patch)
treedb00aac20c35fa92ec7ececfe233a43af6ebd4e5
parent37ab1a25ec6af5fd16568fabe415b20f03cae1c2 (diff)
meson: add test-libudev-sym
This is slightly complicated by the fact that files('libudev.h') cannot be used as an argument in custom_target command (string is required). This restriction should be lifted in future versions of mesons, so this could be simplified.
-rw-r--r--meson.build11
-rw-r--r--src/libudev/meson.build6
-rw-r--r--src/test/meson.build7
3 files changed, 21 insertions, 3 deletions
diff --git a/meson.build b/meson.build
index 83231c91fe..154f380223 100644
--- a/meson.build
+++ b/meson.build
@@ -1948,6 +1948,17 @@ test_libsystemd_sym = executable(
test('test-libsystemd-sym',
test_libsystemd_sym)
+test_libudev_sym = executable(
+ 'test-libudev-sym',
+ test_libudev_sym_c,
+ include_directories : includes,
+ c_args : ['-Wno-deprecated-declarations'],
+ link_args : ['src/libudev/libudev.so.1.6.6'],
+ install : install_tests,
+ install_dir : testsdir)
+test('test-libudev-sym',
+ test_libudev_sym)
+
############################################################
make_directive_index_py = find_program('tools/make-directive-index.py')
diff --git a/src/libudev/meson.build b/src/libudev/meson.build
index e303ee8518..9fc3a3c742 100644
--- a/src/libudev/meson.build
+++ b/src/libudev/meson.build
@@ -17,15 +17,14 @@ libudev_sources = '''
############################################################
libudev_sym = 'libudev.sym'
-
-version_script_arg = '@0@/@1@'.format(meson.current_source_dir(), libudev_sym)
+libudev_sym_path = '@0@/@1@'.format(meson.current_source_dir(), libudev_sym)
libudev = shared_library(
'udev',
libudev_sources,
version : '1.6.6',
include_directories : includes,
link_args : ['-shared',
- '-Wl,--version-script=' + version_script_arg],
+ '-Wl,--version-script=' + libudev_sym_path],
link_with : [libbasic,
libsystemd],
link_depends : libudev_sym,
@@ -40,6 +39,7 @@ libudev_internal = static_library(
libsystemd])
install_headers('libudev.h')
+libudev_h_path = '@0@/libudev.h'.format(meson.current_source_dir())
libudev_pc = configure_file(
input : 'libudev.pc.in',
diff --git a/src/test/meson.build b/src/test/meson.build
index 32affa83e3..568378e381 100644
--- a/src/test/meson.build
+++ b/src/test/meson.build
@@ -28,6 +28,13 @@ test_libsystemd_sym_c = custom_target(
command : [generate_sym_test_py, libsystemd_sym_path] + systemd_headers,
capture : true)
+test_libudev_sym_c = custom_target(
+ 'test-libudev-sym.c',
+ input : [libudev_sym_path, libudev_h_path],
+ output : 'test-libudev-sym.c',
+ command : [generate_sym_test_py, '@INPUT0@', '@INPUT1@'],
+ capture : true)
+
############################################################
tests += [