From 16e12ad4635ddca4400c6c4d709d908487276656 Mon Sep 17 00:00:00 2001 From: Matthieu Gautier Date: Wed, 13 Dec 2017 16:43:08 +0100 Subject: [PATCH] Stop workaround xapian-core.pc `xapian-core.pc` is now correct stop workaround it adding extra link args. The workaround is broken with meson 0.44.0 and static compilation. However, libmicrohttpd is using `librt` if present but doesn't declare it in its `libmicrohttpd.pc` file so we must add it manually if we found it. --- meson.build | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/meson.build b/meson.build index 9ffb714..bc697e2 100644 --- a/meson.build +++ b/meson.build @@ -15,22 +15,14 @@ kiwixlib_dep = dependency('kiwix', version:'>=1.0.0', static:static_linkage) microhttpd_dep = dependency('libmicrohttpd', static:static_linkage) z_dep = dependency('zlib', static:static_linkage) -# This is a temporary workaround until xapian fix it's xapian-core.pc -# For a correct dependency checking we should test if uuid is really installed -# but for a workaround, we assume that in xapian is installed, uuid also. -if meson.is_cross_build() and host_machine.system() == 'windows' - # xapian doesn't use uuid on windows. - uuid_dep = declare_dependency() -else - xapian_dep = dependency('xapian-core', required : false) - if xapian_dep.found() - uuid_dep = declare_dependency(link_args:['-luuid', '-lrt']) - else - uuid_dep = declare_dependency() - endif -endif +all_deps = [thread_dep, kiwixlib_dep, microhttpd_dep, z_dep] -all_deps = [thread_dep, kiwixlib_dep, microhttpd_dep, z_dep, uuid_dep] +if static_linkage + librt = compiler.find_library('rt', required:false) + if librt.found() + all_deps += librt + endif +endif #subdir('include') subdir('static')