From 3eb4e0049d9901841259a49243bbede9066bdfcb Mon Sep 17 00:00:00 2001 From: Pavel Hrdina Date: Wed, 24 Jun 2020 13:25:38 +0200 Subject: [PATCH] meson: add dbus build dependency Convert #if VAL into #ifdef VAL in order to make meson more readable and because it's not necessary to have both defines existing. Signed-off-by: Pavel Hrdina Reviewed-by: Peter Krempa Reviewed-by: Neal Gompa --- configure.ac | 3 --- m4/virt-dbus.m4 | 41 ----------------------------------------- meson.build | 17 +++++++++++++++++ meson_options.txt | 1 + 4 files changed, 18 insertions(+), 44 deletions(-) delete mode 100644 m4/virt-dbus.m4 diff --git a/configure.ac b/configure.ac index f49c9625cd..c98c9c46d1 100644 --- a/configure.ac +++ b/configure.ac @@ -114,7 +114,6 @@ fi # Check for compiler and library settings. -LIBVIRT_ARG_DBUS LIBVIRT_ARG_FIREWALLD LIBVIRT_ARG_FIREWALLD_ZONE LIBVIRT_ARG_FUSE @@ -142,7 +141,6 @@ LIBVIRT_ARG_VIRTUALPORT LIBVIRT_ARG_WIRESHARK LIBVIRT_ARG_YAJL -LIBVIRT_CHECK_DBUS LIBVIRT_CHECK_DEVMAPPER LIBVIRT_CHECK_DLOPEN LIBVIRT_CHECK_FIREWALLD @@ -461,7 +459,6 @@ LIBVIRT_RESULT_DRIVER_MODULES AC_MSG_NOTICE([]) AC_MSG_NOTICE([Libraries]) AC_MSG_NOTICE([]) -LIBVIRT_RESULT_DBUS LIBVIRT_RESULT_DLOPEN LIBVIRT_RESULT_FIREWALLD LIBVIRT_RESULT_FIREWALLD_ZONE diff --git a/m4/virt-dbus.m4 b/m4/virt-dbus.m4 deleted file mode 100644 index f5af1a8022..0000000000 --- a/m4/virt-dbus.m4 +++ /dev/null @@ -1,41 +0,0 @@ -dnl The libdbus.so library -dnl -dnl Copyright (C) 2012-2014 Red Hat, Inc. -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Lesser General Public -dnl License as published by the Free Software Foundation; either -dnl version 2.1 of the License, or (at your option) any later version. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Lesser General Public License for more details. -dnl -dnl You should have received a copy of the GNU Lesser General Public -dnl License along with this library. If not, see -dnl . -dnl - -AC_DEFUN([LIBVIRT_ARG_DBUS],[ - LIBVIRT_ARG_WITH_FEATURE([DBUS], [dbus-1], [check], [1.0.0]) -]) - -AC_DEFUN([LIBVIRT_CHECK_DBUS],[ - LIBVIRT_CHECK_PKG([DBUS], [dbus-1], [1.0.0]) - - if test "$with_dbus" = "yes" ; then - old_CFLAGS="$CFLAGS" - old_LIBS="$LIBS" - CFLAGS="$CFLAGS $DBUS_CFLAGS" - LIBS="$LIBS $DBUS_LIBS" - AC_CHECK_FUNCS([dbus_watch_get_unix_fd]) - AC_CHECK_TYPES([DBusBasicValue], [], [], [[#include ]]) - CFLAGS="$old_CFLAGS" - LIBS="$old_LIBS" - fi -]) - -AC_DEFUN([LIBVIRT_RESULT_DBUS],[ - LIBVIRT_RESULT_LIB([DBUS]) -]) diff --git a/meson.build b/meson.build index bea478651b..68b6f1baf9 100644 --- a/meson.build +++ b/meson.build @@ -1011,6 +1011,22 @@ if curl_dep.found() conf.set('WITH_CURL', 1) endif +dbus_version = '1.0.0' +dbus_dep = dependency('dbus-1', version: '>=' + dbus_version, required: get_option('dbus')) +if dbus_dep.found() + conf.set('WITH_DBUS', 1) + + function = 'dbus_watch_get_unix_fd' + if cc.has_function(function, dependencies: dbus_dep) + conf.set('HAVE_@0@'.format(function.to_upper()), 1) + endif + + type = 'DBusBasicValue' + if cc.has_type(type, dependencies: dbus_dep, prefix: '#include ') + conf.set('HAVE_@0@'.format(type.to_upper()), 1) + endif +endif + # readline 7.0 is the first version which includes pkg-config support readline_version = '7.0' readline_dep = dependency('readline', version: '>=' + readline_version, required: false) @@ -1128,6 +1144,7 @@ libs_summary = { 'blkid': blkid_dep.found(), 'capng': capng_dep.found(), 'curl': curl_dep.found(), + 'dbus': dbus_dep.found(), 'readline': readline_dep.found(), } summary(libs_summary, section: 'Libraries', bool_yn: true) diff --git a/meson_options.txt b/meson_options.txt index 8bf920343a..247d62dccb 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -18,6 +18,7 @@ option('bash_completion_dir', type: 'string', value: '', description: 'directory option('blkid', type: 'feature', value: 'auto', description: 'blkid support') option('capng', type: 'feature', value: 'auto', description: 'cap-ng support') option('curl', type: 'feature', value: 'auto', description: 'curl support') +option('dbus', type: 'feature', value: 'auto', description: 'dbus-1 support') option('readline', type: 'feature', value: 'auto', description: 'readline support')