Placeholder options for enabling each driver, which will
be fleshed out in later commits.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
meson_options.txt | 23 +++++++++++++++++++++++
src/bhyve/meson.build | 5 +++++
src/esx/meson.build | 2 ++
src/hyperv/meson.build | 2 ++
src/interface/meson.build | 5 +++++
src/libxl/meson.build | 5 +++++
src/lxc/meson.build | 5 +++++
src/meson.build | 25 +++++++++++++++++++++++++
src/network/meson.build | 5 +++++
src/node_device/meson.build | 5 +++++
src/nwfilter/meson.build | 5 +++++
src/openvz/meson.build | 2 ++
src/phyp/meson.build | 2 ++
src/qemu/meson.build | 5 +++++
src/remote/meson.build | 6 ++++++
src/secret/meson.build | 5 +++++
src/storage/meson.build | 5 +++++
src/test/meson.build | 2 ++
src/vbox/meson.build | 2 ++
src/vmware/meson.build | 2 ++
src/vz/meson.build | 5 +++++
21 files changed, 123 insertions(+)
create mode 100644 meson_options.txt
create mode 100644 src/bhyve/meson.build
create mode 100644 src/esx/meson.build
create mode 100644 src/hyperv/meson.build
create mode 100644 src/interface/meson.build
create mode 100644 src/libxl/meson.build
create mode 100644 src/lxc/meson.build
create mode 100644 src/network/meson.build
create mode 100644 src/node_device/meson.build
create mode 100644 src/nwfilter/meson.build
create mode 100644 src/openvz/meson.build
create mode 100644 src/phyp/meson.build
create mode 100644 src/qemu/meson.build
create mode 100644 src/remote/meson.build
create mode 100644 src/secret/meson.build
create mode 100644 src/storage/meson.build
create mode 100644 src/test/meson.build
create mode 100644 src/vbox/meson.build
create mode 100644 src/vmware/meson.build
create mode 100644 src/vz/meson.build
diff --git a/meson_options.txt b/meson_options.txt
new file mode 100644
index 0000000000..4667fa6580
--- /dev/null
+++ b/meson_options.txt
@@ -0,0 +1,23 @@
+
+option('with-driver-remote', type: 'boolean', value: true, description:
'Enable remote driver')
+option('with-remote-daemon', type: 'boolean', value: true, description:
'Enable remote daemon')
+
+option('with-driver-bhyve', type: 'boolean', value: true, description:
'Enable bhyve driver')
+option('with-driver-esx', type: 'boolean', value: true, description:
'Enable esx driver')
+option('with-driver-hyperv', type: 'boolean', value: true, description:
'Enable hyperv driver')
+option('with-driver-libxl', type: 'boolean', value: true, description:
'Enable libxl driver')
+option('with-driver-lxc', type: 'boolean', value: true, description:
'Enable lxc driver')
+option('with-driver-openvz', type: 'boolean', value: true, description:
'Enable openvz driver')
+option('with-driver-phyp', type: 'boolean', value: true, description:
'Enable phyp driver')
+option('with-driver-qemu', type: 'boolean', value: true, description:
'Enable qemu driver')
+option('with-driver-test', type: 'boolean', value: true, description:
'Enable test driver')
+option('with-driver-vbox', type: 'boolean', value: true, description:
'Enable vbox driver')
+option('with-driver-vz', type: 'boolean', value: true, description:
'Enable vz driver')
+option('with-driver-vmware', type: 'boolean', value: true, description:
'Enable vmware driver')
+
+option('with-driver-interface', type: 'boolean', value: true,
description: 'Enable interface driver')
+option('with-driver-network', type: 'boolean', value: true, description:
'Enable network driver')
+option('with-driver-nodedev', type: 'boolean', value: true, description:
'Enable nodedev driver')
+option('with-driver-nwfilter', type: 'boolean', value: true, description:
'Enable nwfilter driver')
+option('with-driver-secret', type: 'boolean', value: true, description:
'Enable secret driver')
+option('with-driver-storage', type: 'boolean', value: true, description:
'Enable storage driver')
diff --git a/src/bhyve/meson.build b/src/bhyve/meson.build
new file mode 100644
index 0000000000..1c2d41050b
--- /dev/null
+++ b/src/bhyve/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_bhyve = get_option('with-driver-bhyve')
+if not with_remote_daemon or host_machine.system() != 'freebsd'
+ with_driver_bhyve = false
+endif
diff --git a/src/esx/meson.build b/src/esx/meson.build
new file mode 100644
index 0000000000..e9b379d1bb
--- /dev/null
+++ b/src/esx/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_esx = get_option('with-driver-esx')
diff --git a/src/hyperv/meson.build b/src/hyperv/meson.build
new file mode 100644
index 0000000000..ebaed11cf3
--- /dev/null
+++ b/src/hyperv/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_hyperv = get_option('with-driver-hyperv')
diff --git a/src/interface/meson.build b/src/interface/meson.build
new file mode 100644
index 0000000000..ca8bcc83c2
--- /dev/null
+++ b/src/interface/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_interface = get_option('with-driver-interface')
+if not with_remote_daemon
+ with_driver_interface = false
+endif
diff --git a/src/libxl/meson.build b/src/libxl/meson.build
new file mode 100644
index 0000000000..52093656f9
--- /dev/null
+++ b/src/libxl/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_libxl = get_option('with-driver-libxl')
+if not with_remote_daemon or host_machine.system() != 'linux'
+ with_driver_libxl = false
+endif
diff --git a/src/lxc/meson.build b/src/lxc/meson.build
new file mode 100644
index 0000000000..37a2558623
--- /dev/null
+++ b/src/lxc/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_lxc = get_option('with-driver-lxc')
+if not with_remote_daemon or host_machine.system() != 'linux'
+ with_driver_lxc = false
+endif
diff --git a/src/meson.build b/src/meson.build
index a86d3a6980..71b42baf22 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -23,3 +23,28 @@ libvirt_lxc_dep = declare_dependency(
dependencies: libvirt_lxc,
include_directories: [public_inc_dir]
)
+
+# General
+subdir('remote')
+
+# Primary virt drivers
+subdir('bhyve')
+subdir('esx')
+subdir('hyperv')
+subdir('libxl')
+subdir('lxc')
+subdir('openvz')
+subdir('phyp')
+subdir('qemu')
+subdir('test')
+subdir('vbox')
+subdir('vz')
+subdir('vmware')
+
+# Secondary drivers
+subdir('interface')
+subdir('network')
+subdir('node_device')
+subdir('nwfilter')
+subdir('secret')
+subdir('storage')
diff --git a/src/network/meson.build b/src/network/meson.build
new file mode 100644
index 0000000000..aa8d1ebc5e
--- /dev/null
+++ b/src/network/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_network = get_option('with-driver-network')
+if not with_remote_daemon
+ with_driver_network = false
+endif
diff --git a/src/node_device/meson.build b/src/node_device/meson.build
new file mode 100644
index 0000000000..ae011ad735
--- /dev/null
+++ b/src/node_device/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_nodedev = get_option('with-driver-nodedev')
+if not with_remote_daemon
+ with_driver_nodedev = false
+endif
diff --git a/src/nwfilter/meson.build b/src/nwfilter/meson.build
new file mode 100644
index 0000000000..b85c58fed4
--- /dev/null
+++ b/src/nwfilter/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_nwfilter = get_option('with-driver-nwfilter')
+if not with_remote_daemon
+ with_driver_nwfilter = false
+endif
diff --git a/src/openvz/meson.build b/src/openvz/meson.build
new file mode 100644
index 0000000000..be116ba074
--- /dev/null
+++ b/src/openvz/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_openvz = get_option('with-driver-openvz')
diff --git a/src/phyp/meson.build b/src/phyp/meson.build
new file mode 100644
index 0000000000..f16c579426
--- /dev/null
+++ b/src/phyp/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_phyp = get_option('with-driver-phyp')
diff --git a/src/qemu/meson.build b/src/qemu/meson.build
new file mode 100644
index 0000000000..f4ceb6be4d
--- /dev/null
+++ b/src/qemu/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_qemu = get_option('with-driver-qemu')
+if not with_remote_daemon
+ with_driver_qemu = false
+endif
diff --git a/src/remote/meson.build b/src/remote/meson.build
new file mode 100644
index 0000000000..0240ceb17c
--- /dev/null
+++ b/src/remote/meson.build
@@ -0,0 +1,6 @@
+
+with_driver_remote = get_option('with-driver-remote')
+with_remote_daemon = get_option('with-remote-daemon')
+if not with_remote_daemon or host_machine.system() == 'windows'
+ with_remote_daemon = false
+endif
diff --git a/src/secret/meson.build b/src/secret/meson.build
new file mode 100644
index 0000000000..a13bd66665
--- /dev/null
+++ b/src/secret/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_secret = get_option('with-driver-secret')
+if not with_remote_daemon
+ with_driver_secret = false
+endif
diff --git a/src/storage/meson.build b/src/storage/meson.build
new file mode 100644
index 0000000000..9a18a1f731
--- /dev/null
+++ b/src/storage/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_storage = get_option('with-driver-storage')
+if not with_remote_daemon
+ with_driver_storage = false
+endif
diff --git a/src/test/meson.build b/src/test/meson.build
new file mode 100644
index 0000000000..451de4cc54
--- /dev/null
+++ b/src/test/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_test = get_option('with-driver-test')
diff --git a/src/vbox/meson.build b/src/vbox/meson.build
new file mode 100644
index 0000000000..71f2136e4c
--- /dev/null
+++ b/src/vbox/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_vbox = get_option('with-driver-vbox')
diff --git a/src/vmware/meson.build b/src/vmware/meson.build
new file mode 100644
index 0000000000..f34fdd746b
--- /dev/null
+++ b/src/vmware/meson.build
@@ -0,0 +1,2 @@
+
+with_driver_vmware = get_option('with-driver-vmware')
diff --git a/src/vz/meson.build b/src/vz/meson.build
new file mode 100644
index 0000000000..c1c5a4cef4
--- /dev/null
+++ b/src/vz/meson.build
@@ -0,0 +1,5 @@
+
+with_driver_vz = get_option('with-driver-vz')
+if not with_remote_daemon
+ with_driver_vz = false
+endif
--
2.21.0