diff --git a/configure.ac b/configure.ac index a5b3499476..ac155106f6 100644 --- a/configure.ac +++ b/configure.ac @@ -109,13 +109,11 @@ fi LIBVIRT_ARG_NSS LIBVIRT_ARG_PM_UTILS -LIBVIRT_ARG_VIRTUALPORT LIBVIRT_ARG_WIRESHARK LIBVIRT_ARG_YAJL LIBVIRT_CHECK_NWFILTER LIBVIRT_CHECK_PM_UTILS -LIBVIRT_CHECK_VIRTUALPORT LIBVIRT_CHECK_WIRESHARK LIBVIRT_CHECK_XDR LIBVIRT_CHECK_YAJL @@ -397,7 +395,6 @@ LIBVIRT_RESULT_LIBXL LIBVIRT_RESULT_NSS LIBVIRT_RESULT_PM_UTILS LIBVIRT_RESULT_RBD -LIBVIRT_RESULT_VIRTUALPORT LIBVIRT_RESULT_XDR LIBVIRT_RESULT_YAJL AC_MSG_NOTICE([]) diff --git a/m4/virt-virtualport.m4 b/m4/virt-virtualport.m4 deleted file mode 100644 index b758efc3c4..0000000000 --- a/m4/virt-virtualport.m4 +++ /dev/null @@ -1,65 +0,0 @@ -dnl The virtualport support check -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 . -dnl - -AC_DEFUN([LIBVIRT_ARG_VIRTUALPORT], [ - LIBVIRT_ARG_WITH([VIRTUALPORT], [enable virtual port support], [check]) -]) - -AC_DEFUN([LIBVIRT_CHECK_VIRTUALPORT],[ - AC_REQUIRE([LIBVIRT_CHECK_MACVTAP]) - - dnl Warn the user and error out if they requested virtualport support - dnl with configure options, but the required macvtap support isn't available - - if test "$with_virtualport" = "yes"; then - if test "$with_macvtap" = "no"; then - AC_MSG_ERROR([--with-virtualport requires --with-macvtap]) - fi - fi - - dnl virtualport checks - - if test "$with_macvtap" != "yes"; then - with_virtualport=no - fi - if test "$with_virtualport" != "no"; then - AC_MSG_CHECKING([whether to compile with virtual port support]) - AC_TRY_COMPILE([ #include - #include ], - [ int x = IFLA_PORT_MAX; ], - [ with_virtualport=yes ], - [ if test "$with_virtualport" = "yes" ; then - AC_MSG_ERROR([Installed linux headers don't show support for virtual port support.]) - fi - with_virtualport=no ]) - if test "$with_virtualport" = "yes"; then - val=1 - else - val=0 - fi - AC_DEFINE_UNQUOTED([WITH_VIRTUALPORT], $val, - [whether vsi vepa support is enabled]) - AC_MSG_RESULT([$with_virtualport]) - fi - AM_CONDITIONAL([WITH_VIRTUALPORT], [test "$with_virtualport" = "yes"]) -]) - -AC_DEFUN([LIBVIRT_RESULT_VIRTUALPORT],[ - LIBVIRT_RESULT_LIB([VIRTUALPORT]) -]) diff --git a/meson.build b/meson.build index a03a8a269c..7eddaf554f 100644 --- a/meson.build +++ b/meson.build @@ -1393,6 +1393,14 @@ if util_dep.found() add_project_link_arguments('-lutil', language: 'c') endif +if not get_option('virtualport').disabled() + if cc.has_header_symbol('linux/if_link.h', 'IFLA_PORT_MAX') + conf.set('WITH_VIRTUALPORT', 1) + elif get_option('virtualport').enabled() + error('Installed linux headers don\'t show support for virtual port support.') + endif +endif + # generic build dependencies checks @@ -1447,6 +1455,10 @@ if udev_dep.found() and not pciaccess_dep.found() error('You must install the pciaccess module to build with udev') endif +if conf.has('WITH_VIRTUALPORT') and not conf.has('WITH_MACVTAP') + error('macvtap is required for virtualport support') +endif + # define top include directory @@ -1503,6 +1515,7 @@ libs_summary = { 'sasl': sasl_dep.found(), 'selinux': selinux_dep.found(), 'udev': udev_dep.found(), + 'virtualport': conf.has('WITH_VIRTUALPORT'), } summary(libs_summary, section: 'Libraries', bool_yn: true) diff --git a/meson_options.txt b/meson_options.txt index fa818accec..44ece31590 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -41,6 +41,7 @@ option('sasl', type: 'feature', value: 'auto', description: 'sasl supprt') option('selinux', type: 'feature', value: 'auto', description: 'selinux support') option('selinux_mount', type: 'string', value: '', description: 'set SELinux mount point') option('udev', type: 'feature', value: 'auto', description: 'udev support') +option('virtualport', type: 'feature', value: 'auto', description: 'enable virtual port support') # build driver options