# ifdef WITH_UML
# include "uml/uml_driver.h"
# endif
+# ifdef WITH_VBOX
+# include "vbox/vbox_driver.h"
+# endif
# ifdef WITH_NETWORK
# include "network/bridge_driver.h"
# endif
# ifdef WITH_UML
virDriverLoadModule("uml");
# endif
+# ifdef WITH_VBOX
+ virDriverLoadModule("vbox");
+# endif
#else
# ifdef WITH_NETWORK
networkRegister();
# ifdef WITH_UML
umlRegister();
# endif
+# ifdef WITH_VBOX
+ vboxRegister();
+# endif
#endif
}
vbox+ssh://user@example.com/session (remote access, SSH tunnelled)
</pre>
+ <p>
+ <strong>NOTE: as of libvirt 1.0.6, the VirtualBox driver will always
+ run inside the libvirtd daemon, instead of being built-in to the
+ libvirt.so library directly. This change was required due to the
+ fact that VirtualBox code is LGPLv2-only licensed, which is not
+ compatible with the libvirt.so license of LGPLv2-or-later. The
+ daemon will be auto-started when the first connection to VirtualBox
+ is requested. This change also means that it will not be possible
+ to use VirtualBox URIs on the Windows platform, until additional
+ work is completed to get the libvirtd daemon working there.</strong>
+ </p>
+
<h2><a name="xmlconfig">Example domain XML config</a></h2>
<pre>
endif
if WITH_VBOX
+noinst_LTLIBRARIES += libvirt_driver_vbox_impl.la
+libvirt_driver_vbox_la_SOURCES =
+libvirt_driver_vbox_la_LIBADD = libvirt_driver_vbox_impl.la
+if WITH_DRIVER_MODULES
+mod_LTLIBRARIES += libvirt_driver_vbox.la
+libvirt_driver_vbox_la_LIBADD += ../gnulib/lib/libgnu.la
+libvirt_driver_vbox_la_LDFLAGS = -module -avoid-version
+else
noinst_LTLIBRARIES += libvirt_driver_vbox.la
-libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
-libvirt_driver_vbox_la_CFLAGS = \
- -I$(top_srcdir)/src/conf $(AM_CFLAGS)
-libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
-libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
+# GPLv2-only license requries that it be linked into
+# libvirtd and *not* libvirt.so
+#libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
+endif
+
+libvirt_driver_vbox_impl_la_CFLAGS = \
+ -I$(top_srcdir)/src/conf \
+ $(AM_CFLAGS)
+libvirt_driver_vbox_impl_la_LDFLAGS = $(AM_LDFLAGS)
+libvirt_driver_vbox_impl_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
+libvirt_driver_vbox_impl_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif
if WITH_XENAPI
#ifdef WITH_PHYP
# include "phyp/phyp_driver.h"
#endif
-#ifdef WITH_VBOX
-# include "vbox/vbox_driver.h"
-#endif
#ifdef WITH_ESX
# include "esx/esx_driver.h"
#endif
if (phypRegister() == -1)
goto error;
#endif
-#ifdef WITH_VBOX
- if (vboxRegister() == -1)
- goto error;
-#endif
#ifdef WITH_ESX
if (esxRegister() == -1)
goto error;