mirror of https://gitee.com/openkylin/libvirt.git
build: probe for glib-2 library in configure
Prepare for linking with glib by probing for it at configure time. Per supported platforms target, the min glib versions on relevant distros are: RHEL-8: 2.56.1 RHEL-7: 2.50.3 Debian (Buster): 2.58.3 Debian (Stretch): 2.50.3 OpenBSD (Ports): 2.58.3 FreeBSD (Ports): 2.56.3 OpenSUSE Leap 15: 2.54.3 SLE12-SP2: 2.48.2 Ubuntu (Xenial): 2.48.0 macOS (Homebrew): 2.56.0 This suggests that a minimum glib of 2.48 is a reasonable target. This aligns with the minimum version required by qemu too. We must disable the bad-function-cast warning as various GLib APIs and macros will trigger this. Reviewed-by: Ján Tomko <jtomko@redhat.com> Reviewed-by: Pavel Hrdina <phrdina@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
36138eaecf
commit
58e7c9bc05
|
@ -13,6 +13,7 @@ addons:
|
|||
- rpcgen
|
||||
- xz
|
||||
- yajl
|
||||
- glib
|
||||
|
||||
matrix:
|
||||
include:
|
||||
|
|
|
@ -311,6 +311,7 @@ LIBVIRT_CHECK_DLOPEN
|
|||
LIBVIRT_CHECK_FIREWALLD
|
||||
LIBVIRT_CHECK_FIREWALLD_ZONE
|
||||
LIBVIRT_CHECK_FUSE
|
||||
LIBVIRT_CHECK_GLIB
|
||||
LIBVIRT_CHECK_GLUSTER
|
||||
LIBVIRT_CHECK_GNUTLS
|
||||
LIBVIRT_CHECK_HAL
|
||||
|
@ -995,6 +996,7 @@ LIBVIRT_RESULT_DLOPEN
|
|||
LIBVIRT_RESULT_FIREWALLD
|
||||
LIBVIRT_RESULT_FIREWALLD_ZONE
|
||||
LIBVIRT_RESULT_FUSE
|
||||
LIBVIRT_RESULT_GLIB
|
||||
LIBVIRT_RESULT_GLUSTER
|
||||
LIBVIRT_RESULT_GNUTLS
|
||||
LIBVIRT_RESULT_HAL
|
||||
|
|
|
@ -273,6 +273,7 @@ BuildRequires: systemd-units
|
|||
%if %{with_libxl}
|
||||
BuildRequires: xen-devel
|
||||
%endif
|
||||
BuildRequires: glib2-devel >= 2.48
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: libxslt
|
||||
BuildRequires: readline-devel
|
||||
|
|
|
@ -67,6 +67,8 @@ AC_DEFUN([LIBVIRT_COMPILE_WARNINGS],[
|
|||
# > to handle the code effectively.
|
||||
# Source: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
|
||||
dontwarn="$dontwarn -Wdisabled-optimization"
|
||||
# Various valid glib APIs/macros trigger this warning
|
||||
dontwarn="$dontwarn -Wbad-function-cast"
|
||||
|
||||
# Broken in 6.0 and later
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69602
|
||||
|
|
|
@ -0,0 +1,36 @@
|
|||
dnl The glib.so library
|
||||
dnl
|
||||
dnl Copyright (C) 2016 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 <http://www.gnu.org/licenses/>.
|
||||
dnl
|
||||
|
||||
AC_DEFUN([LIBVIRT_ARG_GLIB], [
|
||||
LIBVIRT_ARG_WITH([GLIB], [glib-2.0 location], [check])
|
||||
])
|
||||
|
||||
AC_DEFUN([LIBVIRT_CHECK_GLIB],[
|
||||
GLIB_REQUIRED=2.48.0
|
||||
|
||||
LIBVIRT_CHECK_PKG([GLIB], [glib-2.0], [$GLIB_REQUIRED])
|
||||
|
||||
if test "$with_glib" = "no" ; then
|
||||
AC_MSG_ERROR([glib-2.0 >= $GLIB_REQUIRED is required for libvirt])
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN([LIBVIRT_RESULT_GLIB], [
|
||||
LIBVIRT_RESULT_LIB([GLIB])
|
||||
])
|
|
@ -52,6 +52,8 @@ BuildRequires: mingw32-gcc
|
|||
BuildRequires: mingw64-gcc
|
||||
BuildRequires: mingw32-binutils
|
||||
BuildRequires: mingw64-binutils
|
||||
BuildRequires: mingw32-glib2 >= 2.48
|
||||
BuildRequires: mingw64-glib2 >= 2.48
|
||||
BuildRequires: mingw32-libgpg-error
|
||||
BuildRequires: mingw64-libgpg-error
|
||||
BuildRequires: mingw32-libgcrypt
|
||||
|
|
Loading…
Reference in New Issue