On Mon, Feb 08, 2010 at 02:35:51PM -0500, Stefan Berger wrote:
> This patch adds build support for libvirt checking for certain contents
> of /usr/include/linux/if_link.h to see whether macvtap support is
> compilable on that system. One can disable macvtap support in libvirt
> via --without-macvtap passed to configure.
>
> Signed-off-by: Stefan Berger <[email protected]>
>
>
> Index: libvirt-macvtap/src/Makefile.am
> ===================================================================
> --- libvirt-macvtap.orig/src/Makefile.am
> +++ libvirt-macvtap/src/Makefile.am
> @@ -55,6 +55,7 @@ UTIL_SOURCES =
> \
> util/ebtables.c util/ebtables.h \
> util/json.c util/json.h \
> util/logging.c util/logging.h \
> + util/macvtap.c util/macvtap.h \
> util/memory.c util/memory.h \
> util/pci.c util/pci.h \
> util/processinfo.c util/processinfo.h \
> @@ -784,12 +785,15 @@ if WITH_LINUX
> USED_SYM_FILES += libvirt_linux.syms
> endif
>
> +USED_SYM_FILES += libvirt_macvtap.syms
> +
> EXTRA_DIST += \
> libvirt_public.syms \
> libvirt_private.syms \
> libvirt_driver_modules.syms \
> libvirt_bridge.syms \
> - libvirt_linux.syms
> + libvirt_linux.syms \
> + libvirt_macvtap.syms
>
> BUILT_SOURCES = libvirt.syms
>
> Index: libvirt-macvtap/src/libvirt_macvtap.syms
> ===================================================================
> --- /dev/null
> +++ libvirt-macvtap/src/libvirt_macvtap.syms
> @@ -0,0 +1,5 @@
> +#
> +
> +# macvtap.h
> +openMacvtapTap;
> +delMacvtapByMACAddress;
> Index: libvirt-macvtap/configure.ac
> ===================================================================
> --- libvirt-macvtap.orig/configure.ac
> +++ libvirt-macvtap/configure.ac
> @@ -1827,6 +1827,25 @@ AC_ARG_WITH([qemu-group],
> AC_DEFINE_UNQUOTED([QEMU_USER], ["$QEMU_USER"], [QEMU user account])
> AC_DEFINE_UNQUOTED([QEMU_GROUP], ["$QEMU_GROUP"], [QEMU group account])
>
> +
> +AC_ARG_WITH([macvtap],
> + AC_HELP_STRING([--with-macvtap],[enable macvtap device
> @<:@default=check@:>@]),
> + [with_macvtap=${withval}],
> + [with_macvtap=check])
> +
> +if test "$with_macvtap" != "no" ; then
> + AC_DEFINE_UNQUOTED([WITH_MACVTAP], 1, [whether macvtap support is
> enabled])
> + AC_TRY_COMPILE([ #include <linux/if_link.h> ],
> + [ int x = MACVLAN_MODE_BRIDGE; ],
> + [ with_macvtap=yes ],
> + [ if test "$with_macvtap" = "yes" ; then
> + AC_MSG_ERROR([Installed linux headers don't show
> support for macvtap device.])
> + fi
> + with_macvtap=no ])
> +fi
> +AM_CONDITIONAL([WITH_MACVTAP], [test "$with_macvtap" = "yes"])
> +
> +
> # Only COPYING.LIB is under version control, yet COPYING
> # is included as part of the distribution tarball.
> # Copy one to the other, but only if this is a srcdir-build.
> @@ -1878,6 +1897,7 @@ AC_MSG_NOTICE([ Remote: $with_remote])
> AC_MSG_NOTICE([ Network: $with_network])
> AC_MSG_NOTICE([Libvirtd: $with_libvirtd])
> AC_MSG_NOTICE([ netcf: $with_netcf])
> +AC_MSG_NOTICE([ macvtap: $with_macvtap])
> AC_MSG_NOTICE([])
> AC_MSG_NOTICE([Storage Drivers])
> AC_MSG_NOTICE([])
ACK
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list