diff options
author | Seungha Yang <seungha.yang@navercorp.com> | 2019-04-21 16:30:10 +0900 |
---|---|---|
committer | Seungha Yang <seungha.yang@navercorp.com> | 2019-05-03 14:03:18 +0900 |
commit | f3eb1887a25ee1c43360d71a7c43dd94fea96518 (patch) | |
tree | 9660bf7c6b398c1257b8c96e6e250908f6adb0ac /meson.build | |
parent | c4a9252b612861bf70a1b8cd0b2a84eb9f5f386e (diff) | |
download | libsoup-f3eb1887a25ee1c43360d71a7c43dd94fea96518.tar.gz |
meson: Check TLS support only when external glib dependency is available
meson does not allow compile with internal dependency (i.e., fallback dependency)
Diffstat (limited to 'meson.build')
-rw-r--r-- | meson.build | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/meson.build b/meson.build index 120c9c01..0e4a1dcf 100644 --- a/meson.build +++ b/meson.build @@ -68,12 +68,14 @@ endif add_project_arguments(common_flags, language : 'c') glib_required_version = '>= 2.38' -glib_dep = [dependency('glib-2.0', version : glib_required_version, - fallback: ['glib', 'libglib_dep']), - dependency('gobject-2.0', version : glib_required_version, - fallback: ['glib', 'libgobject_dep']), - dependency('gio-2.0', version : glib_required_version, - fallback: ['glib', 'libgio_dep'])] +glib_dep = dependency('glib-2.0', version : glib_required_version, + fallback: ['glib', 'libglib_dep']) +gobject_dep = dependency('gobject-2.0', version : glib_required_version, + fallback: ['glib', 'libgobject_dep']) +gio_dep = dependency('gio-2.0', version : glib_required_version, + fallback: ['glib', 'libgio_dep']) + +glib_deps = [glib_dep, gobject_dep, gio_dep] sqlite_dep = dependency('sqlite3', required: false, fallback: ['sqlite', 'sqlite_dep']) @@ -129,14 +131,18 @@ endif ################### enable_tls_check = get_option('tls_check') if enable_tls_check - check_gio_tls_src = '''#include <gio/gio.h> - int main(void) { - return !g_tls_backend_supports_tls (g_tls_backend_get_default ()); - } - ''' - - assert(cc.compiles(check_gio_tls_src, name : 'GIO has real TLS support', dependencies : glib_dep), - 'libsoup requires glib-networking or glib-openssl for TLS support') + if gio_dep.type_name() == 'internal' + warning('TLS check was enabled but required dependency is internal') + else + check_gio_tls_src = '''#include <gio/gio.h> + int main(void) { + return !g_tls_backend_supports_tls (g_tls_backend_get_default ()); + } + ''' + + assert(cc.compiles(check_gio_tls_src, name : 'GIO has real TLS support', dependencies : glib_deps), + 'libsoup requires glib-networking or glib-openssl for TLS support') + endif endif ################################# |