[libvirt] [PATCH 1/2] configure: Move Virtuozzo checks to a specific module

Eventually, every driver will be moved to a special module. But for today the winner is Virtuozzo driver. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> --- configure.ac | 24 ++---------------------- m4/virt-driver-vz.m4 | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 22 deletions(-) create mode 100644 m4/virt-driver-vz.m4 diff --git a/configure.ac b/configure.ac index 6533b88..71c3bb6 100644 --- a/configure.ac +++ b/configure.ac @@ -562,10 +562,6 @@ AC_ARG_WITH([hyperv], [AS_HELP_STRING([--with-hyperv], [add Hyper-V support @<:@default=check@:>@])]) m4_divert_text([DEFAULTS], [with_hyperv=check]) -AC_ARG_WITH([vz], - [AS_HELP_STRING([--with-vz], - [add Virtuozzo support @<:@default=check@:>@])]) -m4_divert_text([DEFAULTS], [with_vz=check]) AC_ARG_WITH([test], [AS_HELP_STRING([--with-test], [add test driver support @<:@default=yes@:>@])]) @@ -1081,23 +1077,7 @@ dnl dnl Checks for the Parallels driver dnl - -if test "$with_vz" = "yes" || - test "$with_vz" = "check"; then - PKG_CHECK_MODULES([PARALLELS_SDK], [parallels-sdk], - [PARALLELS_SDK_FOUND=yes], [PARALLELS_SDK_FOUND=no]) - - if test "$with_vz" = "yes" && test "$PARALLELS_SDK_FOUND" = "no"; then - AC_MSG_ERROR([Parallels Virtualization SDK is needed to build the Parallels driver.]) - fi - - with_vz=$PARALLELS_SDK_FOUND - if test "$with_vz" = "yes"; then - AC_DEFINE_UNQUOTED([WITH_VZ], 1, - [whether vz driver is enabled]) - fi -fi -AM_CONDITIONAL([WITH_VZ], [test "$with_vz" = "yes"]) +LIBVIRT_DRIVER_CHECK_VZ dnl dnl Checks for bhyve driver @@ -2833,7 +2813,7 @@ AC_MSG_NOTICE([ LXC: $with_lxc]) AC_MSG_NOTICE([ PHYP: $with_phyp]) AC_MSG_NOTICE([ ESX: $with_esx]) AC_MSG_NOTICE([ Hyper-V: $with_hyperv]) -AC_MSG_NOTICE([ vz: $with_vz]) +LIBVIRT_DRIVER_RESULT_VZ LIBVIRT_DRIVER_RESULT_BHYVE AC_MSG_NOTICE([ Test: $with_test]) AC_MSG_NOTICE([ Remote: $with_remote]) diff --git a/m4/virt-driver-vz.m4 b/m4/virt-driver-vz.m4 new file mode 100644 index 0000000..704976e --- /dev/null +++ b/m4/virt-driver-vz.m4 @@ -0,0 +1,46 @@ +dnl The Virtuozzo driver +dnl +dnl Copyright (C) 2005-2015 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_DRIVER_CHECK_VZ],[ + AC_ARG_WITH([vz], + [AS_HELP_STRING([--with-vz], + [add Virtuozzo support @<:@default=check@:>@])]) + m4_divert_text([DEFAULTS], [with_vz=check]) + + if test "$with_vz" = "yes" || + test "$with_vz" = "check"; then + PKG_CHECK_MODULES([PARALLELS_SDK], [parallels-sdk], + [PARALLELS_SDK_FOUND=yes], [PARALLELS_SDK_FOUND=no]) + + if test "$with_vz" = "yes" && test "$PARALLELS_SDK_FOUND" = "no"; then + AC_MSG_ERROR([Parallels Virtualization SDK is needed to build the Virtuozzo driver.]) + fi + + with_vz=$PARALLELS_SDK_FOUND + if test "$with_vz" = "yes"; then + AC_DEFINE_UNQUOTED([WITH_VZ], 1, + [whether vz driver is enabled]) + fi + fi + AM_CONDITIONAL([WITH_VZ], [test "$with_vz" = "yes"]) +]) + +AC_DEFUN([LIBVIRT_DRIVER_RESULT_VZ],[ + AC_MSG_NOTICE([ vz: $with_vz]) +]) -- 2.3.6

With the latest patch to the vz driver (7d73ca06cefe) I was getting some compilation errors. It turned out, my installation of the parallels SDK was not as fresh as it could be. Parallels installed in my system were missing the PRL_USE_VNET_NAME_FOR_BRIDGE_NAME symbol which simply was not introduced at the time I was installing the SDK. The symbol was introduced in 86e62a5d which was then part of the 7.0.22 release. Require that version at least therefore. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> --- configure.ac | 1 + m4/virt-driver-vz.m4 | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 71c3bb6..a7f38e8 100644 --- a/configure.ac +++ b/configure.ac @@ -123,6 +123,7 @@ PARTED_REQUIRED="1.8.0" DEVMAPPER_REQUIRED=1.0.0 LIBPCAP_REQUIRED="1.0.0" LIBNL_REQUIRED="1.1" +PARALLELS_SDK_REQUIRED="7.0.22" dnl Checks for C compiler. AC_PROG_CC diff --git a/m4/virt-driver-vz.m4 b/m4/virt-driver-vz.m4 index 704976e..67001dc 100644 --- a/m4/virt-driver-vz.m4 +++ b/m4/virt-driver-vz.m4 @@ -25,7 +25,7 @@ AC_DEFUN([LIBVIRT_DRIVER_CHECK_VZ],[ if test "$with_vz" = "yes" || test "$with_vz" = "check"; then - PKG_CHECK_MODULES([PARALLELS_SDK], [parallels-sdk], + PKG_CHECK_MODULES([PARALLELS_SDK], [parallels-sdk >= $PARALLELS_SDK_REQUIRED], [PARALLELS_SDK_FOUND=yes], [PARALLELS_SDK_FOUND=no]) if test "$with_vz" = "yes" && test "$PARALLELS_SDK_FOUND" = "no"; then -- 2.3.6

On 07/10/2015 05:32 PM, Michal Privoznik wrote:
Eventually, every driver will be moved to a special module. But for today the winner is Virtuozzo driver.
Thanks, Michal, ACKed and pushed.
Signed-off-by: Michal Privoznik <mprivozn@redhat.com> --- configure.ac | 24 ++---------------------- m4/virt-driver-vz.m4 | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 22 deletions(-) create mode 100644 m4/virt-driver-vz.m4
diff --git a/configure.ac b/configure.ac index 6533b88..71c3bb6 100644 --- a/configure.ac +++ b/configure.ac @@ -562,10 +562,6 @@ AC_ARG_WITH([hyperv], [AS_HELP_STRING([--with-hyperv], [add Hyper-V support @<:@default=check@:>@])]) m4_divert_text([DEFAULTS], [with_hyperv=check]) -AC_ARG_WITH([vz], - [AS_HELP_STRING([--with-vz], - [add Virtuozzo support @<:@default=check@:>@])]) -m4_divert_text([DEFAULTS], [with_vz=check]) AC_ARG_WITH([test], [AS_HELP_STRING([--with-test], [add test driver support @<:@default=yes@:>@])]) @@ -1081,23 +1077,7 @@ dnl dnl Checks for the Parallels driver dnl
- -if test "$with_vz" = "yes" || - test "$with_vz" = "check"; then - PKG_CHECK_MODULES([PARALLELS_SDK], [parallels-sdk], - [PARALLELS_SDK_FOUND=yes], [PARALLELS_SDK_FOUND=no]) - - if test "$with_vz" = "yes" && test "$PARALLELS_SDK_FOUND" = "no"; then - AC_MSG_ERROR([Parallels Virtualization SDK is needed to build the Parallels driver.]) - fi - - with_vz=$PARALLELS_SDK_FOUND - if test "$with_vz" = "yes"; then - AC_DEFINE_UNQUOTED([WITH_VZ], 1, - [whether vz driver is enabled]) - fi -fi -AM_CONDITIONAL([WITH_VZ], [test "$with_vz" = "yes"]) +LIBVIRT_DRIVER_CHECK_VZ
dnl dnl Checks for bhyve driver @@ -2833,7 +2813,7 @@ AC_MSG_NOTICE([ LXC: $with_lxc]) AC_MSG_NOTICE([ PHYP: $with_phyp]) AC_MSG_NOTICE([ ESX: $with_esx]) AC_MSG_NOTICE([ Hyper-V: $with_hyperv]) -AC_MSG_NOTICE([ vz: $with_vz]) +LIBVIRT_DRIVER_RESULT_VZ LIBVIRT_DRIVER_RESULT_BHYVE AC_MSG_NOTICE([ Test: $with_test]) AC_MSG_NOTICE([ Remote: $with_remote]) diff --git a/m4/virt-driver-vz.m4 b/m4/virt-driver-vz.m4 new file mode 100644 index 0000000..704976e --- /dev/null +++ b/m4/virt-driver-vz.m4 @@ -0,0 +1,46 @@ +dnl The Virtuozzo driver +dnl +dnl Copyright (C) 2005-2015 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_DRIVER_CHECK_VZ],[ + AC_ARG_WITH([vz], + [AS_HELP_STRING([--with-vz], + [add Virtuozzo support @<:@default=check@:>@])]) + m4_divert_text([DEFAULTS], [with_vz=check]) + + if test "$with_vz" = "yes" || + test "$with_vz" = "check"; then + PKG_CHECK_MODULES([PARALLELS_SDK], [parallels-sdk], + [PARALLELS_SDK_FOUND=yes], [PARALLELS_SDK_FOUND=no]) + + if test "$with_vz" = "yes" && test "$PARALLELS_SDK_FOUND" = "no"; then + AC_MSG_ERROR([Parallels Virtualization SDK is needed to build the Virtuozzo driver.]) + fi + + with_vz=$PARALLELS_SDK_FOUND + if test "$with_vz" = "yes"; then + AC_DEFINE_UNQUOTED([WITH_VZ], 1, + [whether vz driver is enabled]) + fi + fi + AM_CONDITIONAL([WITH_VZ], [test "$with_vz" = "yes"]) +]) + +AC_DEFUN([LIBVIRT_DRIVER_RESULT_VZ],[ + AC_MSG_NOTICE([ vz: $with_vz]) +])
participants (2)
-
Dmitry Guryanov
-
Michal Privoznik