Makefile.am 57.0 KB
Newer Older
D
Daniel Veillard 已提交
1 2
## Process this file with automake to produce Makefile.in

3
## Copyright (C) 2005-2012 Red Hat, Inc.
4 5
## See COPYING.LIB for the License of this software

6 7
# No libraries with the exception of LIBXML should be listed
# here. List them against the individual XXX_la_CFLAGS targets
8
# that actually use them. Also keep GETTEXT_CPPFLAGS at the end.
9 10
INCLUDES =	-I../gnulib/lib					\
		-I$(top_srcdir)/gnulib/lib			\
11
		-I../include					\
12 13
		-I$(top_srcdir)/include				\
		-I$(top_srcdir)/src/util			\
14 15
		-DIN_LIBVIRT					\
		$(GETTEXT_CPPFLAGS)
E
Eric Blake 已提交
16 17

AM_CFLAGS =	$(DRIVER_MODULE_CFLAGS)				\
18 19
		$(LIBXML_CFLAGS)				\
		$(WARN_CFLAGS)					\
E
Eric Blake 已提交
20 21 22
		$(LOCK_CHECKING_CFLAGS)				\
		$(WIN32_EXTRA_CFLAGS)				\
		$(COVERAGE_CFLAGS)
23 24
AM_LDFLAGS = $(COVERAGE_LDFLAGS)

L
Lai Jiangshan 已提交
25
EXTRA_DIST = $(conf_DATA) util/keymaps.csv
26

27
BUILT_SOURCES =
28 29 30
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
31

E
Eric Blake 已提交
32 33
THREAD_LIBS = $(LIB_PTHREAD) $(LTLIBMULTITHREAD)

34 35 36
if WITH_NETWORK
UUID=$(shell uuidgen 2>/dev/null)
endif
37

C
Chris Lalancette 已提交
38
lib_LTLIBRARIES = libvirt.la libvirt-qemu.la
39

40
moddir = $(libdir)/libvirt/connection-driver
41 42
mod_LTLIBRARIES =

A
Amy Griffis 已提交
43
confdir = $(sysconfdir)/libvirt
44
conf_DATA = libvirt.conf
45

46 47 48 49 50 51
augeasdir = $(datadir)/augeas/lenses
augeas_DATA =

augeastestdir = $(datadir)/augeas/lenses/tests
augeastest_DATA =

52 53
# These files are not related to driver APIs. Simply generic
# helper APIs for various purposes
54
UTIL_SOURCES =							\
55
		util/bitmap.c util/bitmap.h			\
56
		util/buf.c util/buf.h				\
57
		util/command.c util/command.h			\
58 59 60
		util/conf.c util/conf.h				\
		util/cgroup.c util/cgroup.h			\
		util/event.c util/event.h			\
61
		util/event_poll.c util/event_poll.h		\
D
Daniel Veillard 已提交
62
		util/hooks.c util/hooks.h			\
63
		util/iptables.c util/iptables.h			\
G
Gerhard Stenzel 已提交
64
		util/ebtables.c util/ebtables.h			\
65
		util/dnsmasq.c util/dnsmasq.h                   \
66
		util/json.c util/json.h				\
67 68 69
		util/logging.c util/logging.h			\
		util/memory.c util/memory.h			\
		util/pci.c util/pci.h				\
70
		util/processinfo.c util/processinfo.h		\
71
		util/hostusb.c util/hostusb.h			\
M
Markus Groß 已提交
72
		util/sexpr.c util/sexpr.h			\
73
		util/stats_linux.c util/stats_linux.h		\
74
		util/storage_file.c util/storage_file.h		\
75
		util/sysinfo.c util/sysinfo.h			\
76 77 78
		util/threads.c util/threads.h			\
		util/threads-pthread.h				\
		util/threads-win32.h				\
H
Hu Tao 已提交
79
		util/threadpool.c util/threadpool.h		\
80 81
		util/uuid.c util/uuid.h				\
		util/util.c util/util.h				\
82
		util/viratomic.h util/viratomic.c		\
83
		util/viraudit.c util/viraudit.h			\
84
		util/virauth.c util/virauth.h			\
85
		util/virauthconfig.c util/virauthconfig.h	\
E
Eric Blake 已提交
86
		util/virfile.c util/virfile.h			\
87
		util/virnodesuspend.c util/virnodesuspend.h	\
88
		util/virobject.c util/virobject.h		\
89
		util/virpidfile.c util/virpidfile.h		\
90
		util/virtypedparam.c util/virtypedparam.h	\
91
		util/xml.c util/xml.h				\
L
Lai Jiangshan 已提交
92
		util/virterror.c util/virterror_internal.h	\
93
		util/virdbus.c util/virdbus.h			\
94
		util/virhash.c util/virhash.h			\
95
		util/virhashcode.c util/virhashcode.h           \
L
Lai Jiangshan 已提交
96
		util/virkeycode.c util/virkeycode.h		\
97
		util/virkeyfile.c util/virkeyfile.h		\
98
		util/virkeymaps.h				\
99
		util/virmacaddr.h util/virmacaddr.c		\
100
		util/virnetdev.h util/virnetdev.c		\
101
		util/virnetdevbandwidth.h util/virnetdevbandwidth.c \
102
		util/virnetdevbridge.h util/virnetdevbridge.c	\
103
		util/virnetdevmacvlan.c util/virnetdevmacvlan.h	\
A
Ansis Atteka 已提交
104
		util/virnetdevopenvswitch.h util/virnetdevopenvswitch.c \
105
		util/virnetdevtap.h util/virnetdevtap.c		\
106
		util/virnetdevveth.h util/virnetdevveth.c \
L
Laine Stump 已提交
107
		util/virnetdevvlan.h util/virnetdevvlan.c \
108
		util/virnetdevvportprofile.h util/virnetdevvportprofile.c \
109
		util/virnetlink.c util/virnetlink.h		\
110
		util/virrandom.h util/virrandom.c		\
111
		util/virsocketaddr.h util/virsocketaddr.c \
M
Martin Kletzander 已提交
112 113
		util/virtime.h util/virtime.c \
		util/viruri.h util/viruri.c
L
Lai Jiangshan 已提交
114 115 116 117

EXTRA_DIST += $(srcdir)/util/virkeymaps.h $(srcdir)/util/keymaps.csv \
		$(srcdir)/util/virkeycode-mapgen.py

118 119
BUILT_SOURCES += $(srcdir)/util/virkeymaps.h

L
Lai Jiangshan 已提交
120 121
$(srcdir)/util/virkeymaps.h: $(srcdir)/util/keymaps.csv	\
		$(srcdir)/util/virkeycode-mapgen.py
122
	$(AM_V_GEN)$(PYTHON) $(srcdir)/util/virkeycode-mapgen.py <$(srcdir)/util/keymaps.csv >$@
L
Lai Jiangshan 已提交
123

124
EXTRA_DIST += util/threads-pthread.c util/threads-win32.c
125

126
# Internal generic driver infrastructure
127
NODE_INFO_SOURCES = nodeinfo.h nodeinfo.c
O
Osier Yang 已提交
128 129 130 131 132 133 134 135 136 137 138
DATATYPES_SOURCES = datatypes.h datatypes.c
DRIVER_SOURCES =							\
		driver.c driver.h					\
		internal.h						\
		$(DATATYPES_SOURCES)					\
		fdstream.c fdstream.h					\
		$(NODE_INFO_SOURCES)					\
		libvirt.c libvirt_internal.h				\
		locking/lock_manager.c locking/lock_manager.h		\
		locking/lock_driver.h					\
		locking/lock_driver_nop.h locking/lock_driver_nop.c	\
139
		locking/domain_lock.h locking/domain_lock.c
140

141 142 143
LOCK_DRIVER_SANLOCK_SOURCES = \
		locking/lock_driver_sanlock.c

144

145 146
NETDEV_CONF_SOURCES =						\
		conf/netdev_bandwidth_conf.h conf/netdev_bandwidth_conf.c \
147 148
		conf/netdev_vport_profile_conf.h conf/netdev_vport_profile_conf.c \
		conf/netdev_vlan_conf.h conf/netdev_vlan_conf.c
149

150
# XML configuration format handling sources
151 152
# Domain driver generic impl APIs
DOMAIN_CONF_SOURCES =						\
153
		conf/capabilities.c conf/capabilities.h		\
154
		conf/domain_conf.c conf/domain_conf.h		\
155
		conf/domain_audit.c conf/domain_audit.h		\
156 157
		conf/domain_nwfilter.c conf/domain_nwfilter.h	\
		conf/snapshot_conf.c conf/snapshot_conf.h
158 159 160

DOMAIN_EVENT_SOURCES =						\
		conf/domain_event.c conf/domain_event.h
161 162

# Network driver generic impl APIs
163
NETWORK_CONF_SOURCES =						\
164
		conf/network_conf.c conf/network_conf.h
165

166 167
# Network filter driver generic impl APIs
NWFILTER_PARAM_CONF_SOURCES =					\
168
		conf/nwfilter_params.c conf/nwfilter_params.h	\
169 170
		conf/nwfilter_ipaddrmap.c			\
		conf/nwfilter_ipaddrmap.h			\
171
		conf/nwfilter_conf.h
172

173
NWFILTER_CONF_SOURCES =						\
174 175 176
		$(NWFILTER_PARAM_CONF_SOURCES)			\
		conf/nwfilter_conf.c conf/nwfilter_conf.h

177
# Storage driver generic impl APIs
178 179
STORAGE_CONF_SOURCES =                                         \
		conf/storage_conf.h conf/storage_conf.c
180

181
# Interface driver generic impl APIs
182 183
INTERFACE_CONF_SOURCES =                                       \
		conf/interface_conf.c conf/interface_conf.h
184

185
# Secret driver generic impl APIs
186 187 188 189 190 191 192 193 194 195
SECRET_CONF_SOURCES =                                          \
		conf/secret_conf.h conf/secret_conf.c

# Network driver generic impl APIs
NODE_DEVICE_CONF_SOURCES =                                     \
		conf/node_device_conf.c conf/node_device_conf.h

ENCRYPTION_CONF_SOURCES =					\
		conf/storage_encryption_conf.c conf/storage_encryption_conf.h

196 197
CPU_CONF_SOURCES =						\
		conf/cpu_conf.c conf/cpu_conf.h
198

199 200 201
# Safe console handling helper APIs
CONSOLE_CONF_SOURCES =						\
		conf/virconsole.c conf/virconsole.h
202

203 204 205 206
# Device Helper APIs
DEVICE_CONF_SOURCES =                                           \
		conf/device_conf.c conf/device_conf.h

207
CONF_SOURCES =							\
208
		$(NETDEV_CONF_SOURCES)				\
209 210 211
		$(DOMAIN_CONF_SOURCES)				\
		$(DOMAIN_EVENT_SOURCES)				\
		$(NETWORK_CONF_SOURCES)				\
212
		$(NWFILTER_CONF_SOURCES)			\
213 214 215 216
		$(NODE_DEVICE_CONF_SOURCES)			\
		$(STORAGE_CONF_SOURCES)				\
		$(ENCRYPTION_CONF_SOURCES)			\
		$(INTERFACE_CONF_SOURCES)			\
217
		$(SECRET_CONF_SOURCES)				\
218
		$(CPU_CONF_SOURCES)				\
219 220
		$(CONSOLE_CONF_SOURCES)				\
		$(DEVICE_CONF_SOURCES)
221

222
# The remote RPC driver, covering domains, storage, networks, etc
223
REMOTE_DRIVER_GENERATED = \
E
Eric Blake 已提交
224 225 226 227 228 229 230 231 232
		$(srcdir)/remote/remote_protocol.c		\
		$(srcdir)/remote/remote_protocol.h		\
		$(srcdir)/remote/remote_client_bodies.h		\
		$(srcdir)/remote/qemu_protocol.c		\
		$(srcdir)/remote/qemu_protocol.h		\
		$(srcdir)/remote/qemu_client_bodies.h

REMOTE_PROTOCOL = $(srcdir)/remote/remote_protocol.x
QEMU_PROTOCOL = $(srcdir)/remote/qemu_protocol.x
233
REMOTE_DRIVER_PROTOCOL = $(REMOTE_PROTOCOL) $(QEMU_PROTOCOL)
234

235 236
$(srcdir)/remote/remote_client_bodies.h: $(srcdir)/rpc/gendispatch.pl \
		$(REMOTE_PROTOCOL)
237
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
238
	  -k remote REMOTE $(REMOTE_PROTOCOL) > $@
239

240 241
$(srcdir)/remote/qemu_client_bodies.h: $(srcdir)/rpc/gendispatch.pl \
		$(QEMU_PROTOCOL)
242
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
243
	  -k qemu QEMU $(QEMU_PROTOCOL) > $@
244 245 246 247 248

REMOTE_DRIVER_SOURCES =						\
		gnutls_1_0_compat.h				\
		remote/remote_driver.c remote/remote_driver.h	\
		$(REMOTE_DRIVER_GENERATED)
249

250
EXTRA_DIST +=  $(REMOTE_DRIVER_PROTOCOL) \
251
		$(REMOTE_DRIVER_GENERATED)
252

253 254 255 256 257 258 259 260 261 262
# Ensure that we don't change the struct or member names or member ordering
# in remote_protocol.x  The embedded perl below needs a few comments, and
# presumes you know what pdwtags output looks like:
# * use -0777 -n to slurp the entire file into $_.
# * the "split" splits on the /* DD */ comments, so that $p iterates
#     through the struct definitions.
# * process only "struct remote_..." entries
# * remove comments and preceding TAB throughout
# * remove empty lines throughout
# * remove white space at end of buffer
263 264 265 266

# With pdwtags 1.8, --verbose output includes separators like these:
# /* 93 */
# /* <0> (null):0 */
267 268
# with the second line omitted for intrinsic types.
# Whereas with pdwtags 1.3, they look like this:
269
# /* <2d2> /usr/include/libio.h:180 */
270 271
# The alternation of the following regexps matches both cases.
r1 = /\* \d+ \*/
272
r2 = /\* <[[:xdigit:]]+> \S+:\d+ \*/
273
struct_prefix = (remote_|qemu_|virNet|keepalive_)
274

275
PDWTAGS = \
276
	$(AM_V_GEN)if (pdwtags --help) > /dev/null 2>&1; then		\
277 278 279 280 281
	  pdwtags --verbose $(<:.lo=.$(OBJEXT))	> $(@F)-t1 2> $(@F)-t2;	\
	  if test -s $(@F)-t2; then					\
	    rm -rf $(@F)-t?;						\
	    echo 'WARNING: pdwtags appears broken; skipping the $@ test' >&2;\
	  else								\
282
	    $(PERL) -0777 -n						\
283
		-e 'foreach my $$p (split m!\n*(?:$(r1)|$(r2))\n!) {'	\
284 285
		-e '  if ($$p =~ /^(struct|enum) $(struct_prefix)/ ||'	\
		-e '      $$p =~ /^enum {/) {'				\
286 287 288
		-e '    $$p =~ s!\t*/\*.*?\*/!!sg;'			\
		-e '    $$p =~ s!\s+\n!\n!sg;'				\
		-e '    $$p =~ s!\s+$$!!;'				\
289
		-e '    $$p =~ s!\t!        !g;'			\
290 291 292 293
		-e '    print "$$p\n";'					\
		-e '    $$n++;'						\
		-e '  }'						\
		-e '}'							\
294 295 296
		-e 'BEGIN {'						\
		-e '  print "/* -*- c -*- */\n";'			\
		-e '}'							\
297
		-e 'END {'						\
298
		-e '  if ($$n < 1) {'					\
299 300 301 302 303 304
		-e '    warn "WARNING: your pdwtags program is too old\n";' \
		-e '    warn "WARNING: skipping the $@ test\n";'	\
		-e '    warn "WARNING: install dwarves-1.3 or newer\n";' \
		-e '    exit 8;'					\
		-e '  }'						\
		-e '}'							\
305 306
		< $(@F)-t1 > $(@F)-t3;					\
	    case $$? in 8) rm -f $(@F)-t?; exit 0;; 0) ;; *) exit 1;; esac;\
307
	    diff -u $(@)s $(@F)-t3; st=$$?; rm -f $(@F)-t?; exit $$st;	\
308
	  fi;								\
309
	else								\
310 311
	  echo 'WARNING: you lack pdwtags; skipping the $@ test' >&2;	\
	  echo 'WARNING: install the dwarves package to get pdwtags' >&2; \
312
	fi
313

314
# .libs/libvirt.so is built by libtool as a side-effect of the Makefile
315 316
# rule for libvirt.la.  However, checking symbols relies on Linux ELF layout
if WITH_LINUX
317 318 319
check-symfile: libvirt.syms libvirt.la
	$(AM_V_GEN)$(PERL) $(srcdir)/check-symfile.pl libvirt.syms \
	  .libs/libvirt.so
320 321 322
else
check-symfile:
endif
323

324 325 326
PROTOCOL_STRUCTS = \
	$(srcdir)/remote_protocol-structs \
	$(srcdir)/qemu_protocol-structs \
J
Jiri Denemark 已提交
327 328
	$(srcdir)/virnetprotocol-structs \
	$(srcdir)/virkeepaliveprotocol-structs
329
if WITH_REMOTE
330 331
check-protocol: $(PROTOCOL_STRUCTS) $(PROTOCOL_STRUCTS:structs=struct)

332 333
# The .o file that pdwtags parses is created as a side effect of running
# libtool; but from make's perspective we depend on the .lo file.
334 335
$(srcdir)/remote_protocol-struct $(srcdir)/qemu_protocol-struct: \
		$(srcdir)/%-struct: libvirt_driver_remote_la-%.lo
336
	$(PDWTAGS)
337 338
$(srcdir)/virnetprotocol-struct $(srcdir)/virkeepaliveprotocol-struct: \
		$(srcdir)/%-struct: libvirt_net_rpc_la-%.lo
339
	$(PDWTAGS)
340
else !WITH_REMOTE
341 342 343
# The $(PROTOCOL_STRUCTS) files must live in git, because they cannot be
# re-generated when configured --without-remote.
check-protocol:
344
endif
345
EXTRA_DIST += $(PROTOCOL_STRUCTS) check-symfile.pl
346
check-local: check-protocol check-symfile
347
.PHONY: check-protocol $(PROTOCOL_STRUCTS:structs=struct)
348

349 350
# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
351
		test/test_driver.c test/test_driver.h
352 353 354

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
355 356 357 358 359 360
		xen/block_stats.c xen/block_stats.h		\
		xen/xen_hypervisor.c xen/xen_hypervisor.h	\
		xen/xen_driver.c xen/xen_driver.h		\
		xen/xend_internal.c xen/xend_internal.h		\
		xen/xm_internal.c xen/xm_internal.h		\
		xen/xs_internal.c xen/xs_internal.h
361
if WITH_XEN_INOTIFY
362
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
363
endif
364

365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402
LXC_PROTOCOL_GENERATED = \
	$(srcdir)/lxc/lxc_protocol.h \
	$(srcdir)/lxc/lxc_protocol.c \
	$(NULL)

LXC_MONITOR_GENERATED = \
	$(srcdir)/lxc/lxc_monitor_dispatch.h \
	$(NULL)

LXC_CONTROLLER_GENERATED = \
	$(srcdir)/lxc/lxc_controller_dispatch.h \
	$(NULL)

LXC_GENERATED = \
	$(LXC_PROTOCOL_GENERATED) \
	$(LXC_MONITOR_GENERATED) \
	$(LXC_CONTROLLER_GENERATED) \
	$(NULL)

LXC_PROTOCOL = $(srcdir)/lxc/lxc_protocol.x

$(srcdir)/lxc/lxc_monitor_dispatch.h: $(srcdir)/rpc/gendispatch.pl \
		$(LXC_PROTOCOL)
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
	  -k virLXCProtocol VIR_LXC_PROTOCOL $(LXC_PROTOCOL) > $@

$(srcdir)/lxc/lxc_controller_dispatch.h: $(srcdir)/rpc/gendispatch.pl \
		$(REMOTE_PROTOCOL)
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
	  -b virLXCProtocol VIR_LXC_PROTOCOL $(LXC_PROTOCOL) > $@

EXTRA_DIST += \
	$(LXC_PROTOCOL) \
	$(LXC_GENERATED) \
	$(NULL)

BUILT_SOURCES += $(LXC_GENERATED)

403
LXC_DRIVER_SOURCES =						\
404 405
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_MONITOR_GENERATED)			\
406 407
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
408
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
409
		lxc/lxc_domain.c lxc/lxc_domain.h		\
410
		lxc/lxc_monitor.c lxc/lxc_monitor.h		\
411
		lxc/lxc_process.c lxc/lxc_process.h		\
412
		lxc/lxc_driver.c lxc/lxc_driver.h
413

414
LXC_CONTROLLER_SOURCES =					\
415 416
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_CONTROLLER_GENERATED)			\
417 418
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
419
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
420
		lxc/lxc_controller.c
421

J
Jamie Strandboge 已提交
422
SECURITY_DRIVER_APPARMOR_HELPER_SOURCES =			\
E
Eric Blake 已提交
423
		$(DATATYPES_SOURCES)				\
J
Jamie Strandboge 已提交
424 425
		security/virt-aa-helper.c

426 427 428
PHYP_DRIVER_SOURCES =						\
		phyp/phyp_driver.c phyp/phyp_driver.h

429
OPENVZ_DRIVER_SOURCES =						\
430
		openvz/openvz_conf.c openvz/openvz_conf.h	\
431 432
		openvz/openvz_driver.c openvz/openvz_driver.h   \
		openvz/openvz_util.c openvz/openvz_util.h
433

E
Eric Blake 已提交
434
VMWARE_DRIVER_SOURCES =						\
435
		vmware/vmware_driver.c vmware/vmware_driver.h	\
436 437
		vmware/vmware_conf.c vmware/vmware_conf.h

438
VBOX_DRIVER_SOURCES =						\
E
Eric Blake 已提交
439 440 441 442 443 444
	vbox/vbox_glue.c vbox/vbox_glue.h			\
	vbox/vbox_driver.c vbox/vbox_driver.h			\
	vbox/vbox_V2_2.c vbox/vbox_CAPI_v2_2.h			\
	vbox/vbox_V3_0.c vbox/vbox_CAPI_v3_0.h			\
	vbox/vbox_V3_1.c vbox/vbox_CAPI_v3_1.h			\
	vbox/vbox_V3_2.c vbox/vbox_CAPI_v3_2.h			\
445 446
	vbox/vbox_V4_0.c vbox/vbox_CAPI_v4_0.h			\
	vbox/vbox_V4_1.c vbox/vbox_CAPI_v4_1.h
447

E
Eric Blake 已提交
448
VBOX_DRIVER_EXTRA_DIST =					\
449 450 451
		vbox/vbox_tmpl.c vbox/README			\
		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
452

O
Osier Yang 已提交
453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470
QEMU_DRIVER_SOURCES =							\
		qemu/qemu_agent.c qemu/qemu_agent.h			\
		qemu/qemu_capabilities.c qemu/qemu_capabilities.h	\
		qemu/qemu_command.c qemu/qemu_command.h			\
		qemu/qemu_domain.c qemu/qemu_domain.h			\
		qemu/qemu_cgroup.c qemu/qemu_cgroup.h			\
		qemu/qemu_hostdev.c qemu/qemu_hostdev.h			\
		qemu/qemu_hotplug.c qemu/qemu_hotplug.h			\
		qemu/qemu_conf.c qemu/qemu_conf.h			\
		qemu/qemu_process.c qemu/qemu_process.h			\
		qemu/qemu_migration.c qemu/qemu_migration.h		\
		qemu/qemu_monitor.c qemu/qemu_monitor.h			\
		qemu/qemu_monitor_text.c				\
		qemu/qemu_monitor_text.h				\
		qemu/qemu_monitor_json.c				\
		qemu/qemu_monitor_json.h				\
		qemu/qemu_driver.c qemu/qemu_driver.h			\
		qemu/qemu_bridge_filter.c				\
471
		qemu/qemu_bridge_filter.h
R
Richard W.M. Jones 已提交
472

O
Osier Yang 已提交
473
XENAPI_DRIVER_SOURCES =						\
474
		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
O
Osier Yang 已提交
475
		xenapi/xenapi_driver_private.h			\
476 477
		xenapi/xenapi_utils.c xenapi/xenapi_utils.h

J
Jim Fehlig 已提交
478 479 480 481
LIBXL_DRIVER_SOURCES =						\
		libxl/libxl_conf.c libxl/libxl_conf.h		\
		libxl/libxl_driver.c libxl/libxl_driver.h

482
UML_DRIVER_SOURCES =						\
D
Daniel P. Berrange 已提交
483 484
		uml/uml_conf.c uml/uml_conf.h			\
		uml/uml_driver.c uml/uml_driver.h
485

O
Osier Yang 已提交
486 487 488 489 490 491 492
ESX_DRIVER_SOURCES =							\
		esx/esx_private.h					\
		esx/esx_driver.c esx/esx_driver.h			\
		esx/esx_interface_driver.c esx/esx_interface_driver.h	\
		esx/esx_network_driver.c esx/esx_network_driver.h	\
		esx/esx_storage_driver.c esx/esx_storage_driver.h	\
		esx/esx_device_monitor.c esx/esx_device_monitor.h	\
493
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
494 495 496 497
		esx/esx_nwfilter_driver.c esx/esx_nwfilter_driver.h	\
		esx/esx_util.c esx/esx_util.h				\
		esx/esx_vi.c esx/esx_vi.h				\
		esx/esx_vi_methods.c esx/esx_vi_methods.h		\
498
		esx/esx_vi_types.c esx/esx_vi_types.h
499

500
ESX_DRIVER_GENERATED =							\
501 502
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
503
		esx/esx_vi_methods.generated.macro			\
504 505 506 507 508
		esx/esx_vi_types.generated.c				\
		esx/esx_vi_types.generated.h				\
		esx/esx_vi_types.generated.typedef			\
		esx/esx_vi_types.generated.typeenum			\
		esx/esx_vi_types.generated.typetostring			\
509 510 511
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
512

O
Osier Yang 已提交
513
ESX_DRIVER_EXTRA_DIST =							\
514 515 516 517 518
		esx/README						\
		esx/esx_vi_generator.input				\
		esx/esx_vi_generator.py					\
		$(ESX_DRIVER_GENERATED)

O
Osier Yang 已提交
519
HYPERV_DRIVER_SOURCES =									\
M
Matthias Bolte 已提交
520 521 522 523 524 525 526
		hyperv/hyperv_private.h							\
		hyperv/hyperv_driver.c hyperv/hyperv_driver.h				\
		hyperv/hyperv_interface_driver.c hyperv/hyperv_interface_driver.h	\
		hyperv/hyperv_network_driver.c hyperv/hyperv_network_driver.h		\
		hyperv/hyperv_storage_driver.c hyperv/hyperv_storage_driver.h		\
		hyperv/hyperv_device_monitor.c hyperv/hyperv_device_monitor.h		\
		hyperv/hyperv_secret_driver.c hyperv/hyperv_secret_driver.h		\
527
		hyperv/hyperv_nwfilter_driver.c hyperv/hyperv_nwfilter_driver.h		\
528
		hyperv/hyperv_util.c hyperv/hyperv_util.h				\
529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544
		hyperv/hyperv_wmi.c hyperv/hyperv_wmi.h					\
		hyperv/hyperv_wmi_classes.c hyperv/hyperv_wmi_classes.h			\
		hyperv/openwsman.h

HYPERV_DRIVER_GENERATED =							\
		hyperv/hyperv_wmi.generated.c					\
		hyperv/hyperv_wmi.generated.h					\
		hyperv/hyperv_wmi_classes.generated.c				\
		hyperv/hyperv_wmi_classes.generated.h				\
		hyperv/hyperv_wmi_classes.generated.typedef

HYPERV_DRIVER_EXTRA_DIST =							\
		hyperv/hyperv_wmi_generator.input				\
		hyperv/hyperv_wmi_generator.py					\
		$(HYPERV_DRIVER_GENERATED)

D
Dmitry Guryanov 已提交
545 546
PARALLELS_DRIVER_SOURCES =					\
		parallels/parallels_driver.h			\
547
		parallels/parallels_driver.c			\
548 549
		parallels/parallels_utils.c			\
		parallels/parallels_utils.h			\
D
Dmitry Guryanov 已提交
550
		parallels/parallels_storage.c
D
Dmitry Guryanov 已提交
551

552
NETWORK_DRIVER_SOURCES =					\
553
		network/bridge_driver.h network/bridge_driver.c
554

555 556 557 558 559 560 561 562 563 564 565
INTERFACE_DRIVER_SOURCES =

if WITH_INTERFACE
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_driver.h
endif

if WITH_NETCF
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_netcf.c
endif
566

567
SECRET_DRIVER_SOURCES =						\
568
		secret/secret_driver.h secret/secret_driver.c
569

570
# Storage backend specific impls
O
Osier Yang 已提交
571 572
STORAGE_DRIVER_SOURCES =						\
		storage/storage_driver.h storage/storage_driver.c	\
573
		storage/storage_backend.h storage/storage_backend.c
574 575

STORAGE_DRIVER_FS_SOURCES =					\
576
		storage/storage_backend_fs.h storage/storage_backend_fs.c
R
Richard W.M. Jones 已提交
577

578
STORAGE_DRIVER_LVM_SOURCES =					\
O
Osier Yang 已提交
579
		storage/storage_backend_logical.h		\
580
		storage/storage_backend_logical.c
581 582

STORAGE_DRIVER_ISCSI_SOURCES =					\
583
		storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
584

585
STORAGE_DRIVER_SCSI_SOURCES =					\
586
		storage/storage_backend_scsi.h storage/storage_backend_scsi.c
587

D
Dave Allan 已提交
588
STORAGE_DRIVER_MPATH_SOURCES =					\
589
		storage/storage_backend_mpath.h storage/storage_backend_mpath.c
D
Dave Allan 已提交
590

591
STORAGE_DRIVER_DISK_SOURCES =					\
592
		storage/storage_backend_disk.h storage/storage_backend_disk.c
593

594 595 596
STORAGE_DRIVER_RBD_SOURCES =					\
		storage/storage_backend_rbd.h storage/storage_backend_rbd.c

597 598 599
STORAGE_DRIVER_SHEEPDOG_SOURCES =				\
		storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c

600
STORAGE_HELPER_DISK_SOURCES =					\
601
		storage/parthelper.c
602

603 604 605
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

606
# Network filters
O
Osier Yang 已提交
607
NWFILTER_DRIVER_SOURCES =						\
608
		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
609 610
		nwfilter/nwfilter_gentech_driver.c			\
		nwfilter/nwfilter_gentech_driver.h			\
S
Stefan Berger 已提交
611 612
		nwfilter/nwfilter_dhcpsnoop.c				\
		nwfilter/nwfilter_dhcpsnoop.h				\
613
		nwfilter/nwfilter_ebiptables_driver.c			\
614 615 616
		nwfilter/nwfilter_ebiptables_driver.h			\
		nwfilter/nwfilter_learnipaddr.c				\
		nwfilter/nwfilter_learnipaddr.h
617

618

619
# Security framework and drivers for various models
O
Osier Yang 已提交
620 621 622 623 624
SECURITY_DRIVER_SOURCES =						\
		security/security_driver.h security/security_driver.c	\
		security/security_nop.h security/security_nop.c		\
		security/security_stack.h security/security_stack.c	\
		security/security_dac.h security/security_dac.c		\
625
		security/security_manager.h security/security_manager.c
626

627
SECURITY_DRIVER_SELINUX_SOURCES =				\
628
		security/security_selinux.h security/security_selinux.c
629

J
Jamie Strandboge 已提交
630 631 632
SECURITY_DRIVER_APPARMOR_SOURCES =				\
		security/security_apparmor.h security/security_apparmor.c

633

634
NODE_DEVICE_DRIVER_SOURCES =					\
O
Osier Yang 已提交
635 636
		node_device/node_device_driver.c		\
		node_device/node_device_driver.h		\
637
		node_device/node_device_linux_sysfs.c
638 639

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
640
		node_device/node_device_hal.c			\
641
		node_device/node_device_hal.h
642

643
NODE_DEVICE_DRIVER_UDEV_SOURCES =				\
D
Daniel Veillard 已提交
644 645
		node_device/node_device_udev.c			\
		node_device/node_device_udev.h
646

J
Jiri Denemark 已提交
647 648 649 650
CPU_SOURCES =							\
		cpu/cpu.h cpu/cpu.c				\
		cpu/cpu_generic.h cpu/cpu_generic.c		\
		cpu/cpu_x86.h cpu/cpu_x86.c cpu/cpu_x86_data.h	\
T
Thang Pham 已提交
651
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
652
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
653 654
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
		cpu/cpu_powerpc.c
655

656 657 658
VMX_SOURCES =							\
		vmx/vmx.c vmx/vmx.h

659 660
XENXS_SOURCES =							\
		xenxs/xenxs_private.h				\
661 662
		xenxs/xen_sxpr.c xenxs/xen_sxpr.h		\
		xenxs/xen_xm.c xenxs/xen_xm.h
663

J
Jiri Denemark 已提交
664 665
pkgdata_DATA =	cpu/cpu_map.xml

E
Eric Blake 已提交
666
EXTRA_DIST +=	$(pkgdata_DATA)
667

668 669 670 671 672 673
#########################
#
# Build up list of libvirt.la source files based on configure conditions
#
# First deal with sources usable in non-daemon context

674
noinst_LTLIBRARIES = libvirt_util.la
675 676
libvirt_la_LIBADD = $(libvirt_la_BUILT_LIBADD)
libvirt_la_BUILT_LIBADD = libvirt_util.la
677 678
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)
679
libvirt_util_la_CFLAGS = $(CAPNG_CFLAGS) $(YAJL_CFLAGS) $(LIBNL_CFLAGS) \
680
		$(AM_CFLAGS) $(AUDIT_CFLAGS) $(DEVMAPPER_CFLAGS) \
E
Eric Blake 已提交
681
		$(DBUS_CFLAGS) $(LDEXP_LIBM)
682
libvirt_util_la_LIBADD = $(CAPNG_LIBS) $(YAJL_LIBS) $(LIBNL_LIBS) \
683
		$(THREAD_LIBS) $(AUDIT_LIBS) $(DEVMAPPER_LIBS) \
684
		$(LIB_CLOCK_GETTIME) $(DBUS_LIBS) $(MSCOM_LIBS) $(LIBXML_LIBS)
685

686 687

noinst_LTLIBRARIES += libvirt_conf.la
688
libvirt_la_BUILT_LIBADD += libvirt_conf.la
689
libvirt_conf_la_SOURCES = $(CONF_SOURCES)
690 691
libvirt_conf_la_CFLAGS = $(AM_CFLAGS)
libvirt_conf_la_LDFLAGS = $(AM_LDFLAGS)
692

J
Jiri Denemark 已提交
693
noinst_LTLIBRARIES += libvirt_cpu.la
694
libvirt_la_BUILT_LIBADD += libvirt_cpu.la
J
Jiri Denemark 已提交
695
libvirt_cpu_la_CFLAGS = \
696
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
J
Jiri Denemark 已提交
697 698
libvirt_cpu_la_SOURCES = $(CPU_SOURCES)

699 700 701 702
if WITH_VMX
noinst_LTLIBRARIES += libvirt_vmx.la
libvirt_la_BUILT_LIBADD += libvirt_vmx.la
libvirt_vmx_la_CFLAGS = \
703
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
704 705 706
libvirt_vmx_la_SOURCES = $(VMX_SOURCES)
endif

707
if WITH_XENXS
708 709 710
noinst_LTLIBRARIES += libvirt_xenxs.la
libvirt_la_BUILT_LIBADD += libvirt_xenxs.la
libvirt_xenxs_la_CFLAGS = \
711
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
712 713 714
libvirt_xenxs_la_SOURCES = $(XENXS_SOURCES)
endif

715

716
noinst_LTLIBRARIES += libvirt_driver.la
717
libvirt_la_BUILT_LIBADD += libvirt_driver.la
718
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
719

M
Matthias Bolte 已提交
720
libvirt_driver_la_CFLAGS = $(NUMACTL_CFLAGS) $(GNUTLS_CFLAGS) \
721
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
722
libvirt_driver_la_LIBADD = $(NUMACTL_LIBS) $(GNUTLS_LIBS) $(DLOPEN_LIBS)
723

724
USED_SYM_FILES = libvirt_private.syms
725

726
if WITH_TEST
727
noinst_LTLIBRARIES += libvirt_driver_test.la
728
libvirt_la_BUILT_LIBADD += libvirt_driver_test.la
729
libvirt_driver_test_la_CFLAGS = \
730
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
731
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
732 733 734
endif

if WITH_REMOTE
735
noinst_LTLIBRARIES += libvirt_driver_remote.la
736
libvirt_la_BUILT_LIBADD += libvirt_driver_remote.la
737 738
libvirt_driver_remote_la_CFLAGS =				\
		$(GNUTLS_CFLAGS)				\
E
Eric Blake 已提交
739
		$(XDR_CFLAGS)					\
740 741
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/rpc				\
742 743
		$(AM_CFLAGS)
libvirt_driver_remote_la_LDFLAGS = $(AM_LDFLAGS)
744 745 746 747
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) \
                libvirt-net-rpc-client.la \
                libvirt-net-rpc-server.la \
                libvirt-net-rpc.la
748
libvirt_driver_remote_la_SOURCES = $(REMOTE_DRIVER_SOURCES)
749

E
Eric Blake 已提交
750
BUILT_SOURCES += $(REMOTE_DRIVER_GENERATED)
C
Chris Lalancette 已提交
751

752 753
endif WITH_REMOTE

754
%protocol.c: %protocol.x %protocol.h $(srcdir)/rpc/genprotocol.pl
755
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -c \
E
Eric Blake 已提交
756
	       $< $@
757

758
%protocol.h: %protocol.x $(srcdir)/rpc/genprotocol.pl
759
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -h \
E
Eric Blake 已提交
760
	       $< $@
761

762
if WITH_XEN
E
Eric Blake 已提交
763 764 765
noinst_LTLIBRARIES += libvirt_driver_xen_impl.la
libvirt_driver_xen_la_SOURCES =
libvirt_driver_xen_la_LIBADD = libvirt_driver_xen_impl.la
766 767
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_xen.la
E
Eric Blake 已提交
768 769
libvirt_driver_xen_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_xen_la_LDFLAGS = -module -avoid-version
770
else
771
noinst_LTLIBRARIES += libvirt_driver_xen.la
772 773
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_xen.la
774
endif
E
Eric Blake 已提交
775 776

libvirt_driver_xen_impl_la_CFLAGS =					\
777
		$(XEN_CFLAGS)					\
778 779
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
780
		$(AM_CFLAGS)
E
Eric Blake 已提交
781 782 783
libvirt_driver_xen_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_xen_impl_la_LIBADD = $(XEN_LIBS)
libvirt_driver_xen_impl_la_SOURCES = $(XEN_DRIVER_SOURCES)
784 785
endif

786 787
if WITH_PHYP
noinst_LTLIBRARIES += libvirt_driver_phyp.la
788
libvirt_la_BUILT_LIBADD += libvirt_driver_phyp.la
789
libvirt_driver_phyp_la_LIBADD = $(LIBSSH2_LIBS)
790
libvirt_driver_phyp_la_CFLAGS = $(LIBSSH2_CFLAGS) \
791
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
792 793 794
libvirt_driver_phyp_la_SOURCES = $(PHYP_DRIVER_SOURCES)
endif

795
if WITH_OPENVZ
796
noinst_LTLIBRARIES += libvirt_driver_openvz.la
797
libvirt_la_BUILT_LIBADD += libvirt_driver_openvz.la
798
libvirt_driver_openvz_la_CFLAGS = \
799
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
800
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
801 802
endif

803 804 805 806
if WITH_VMWARE
noinst_LTLIBRARIES += libvirt_driver_vmware.la
libvirt_la_BUILT_LIBADD += libvirt_driver_vmware.la
libvirt_driver_vmware_la_CFLAGS = \
807
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
808 809 810
libvirt_driver_vmware_la_SOURCES = $(VMWARE_DRIVER_SOURCES)
endif

811 812
if WITH_VBOX
noinst_LTLIBRARIES += libvirt_driver_vbox.la
813
libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
814
libvirt_driver_vbox_la_CFLAGS = \
815
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
816
libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
817 818 819
libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif

820 821
if WITH_XENAPI
noinst_LTLIBRARIES += libvirt_driver_xenapi.la
822
libvirt_la_BUILT_LIBADD += libvirt_driver_xenapi.la
823
libvirt_driver_xenapi_la_CFLAGS = $(LIBXENSERVER_CFLAGS) $(LIBCURL_CFLAGS) \
824
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
825
libvirt_driver_xenapi_la_LDFLAGS = $(AM_LDFLAGS)
826
libvirt_driver_xenapi_la_LIBADD = $(LIBXENSERVER_LIBS) $(LIBCURL_LIBS)
827 828 829
libvirt_driver_xenapi_la_SOURCES = $(XENAPI_DRIVER_SOURCES)
endif

J
Jim Fehlig 已提交
830
if WITH_LIBXL
E
Eric Blake 已提交
831 832 833
noinst_LTLIBRARIES += libvirt_driver_libxl_impl.la
libvirt_driver_libxl_la_SOURCES =
libvirt_driver_libxl_la_LIBADD = libvirt_driver_libxl_impl.la
J
Jim Fehlig 已提交
834 835
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
836 837
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
838 839 840 841 842
else
noinst_LTLIBRARIES += libvirt_driver_libxl.la
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_libxl.la
endif
E
Eric Blake 已提交
843 844

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
845 846
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
847
		$(AM_CFLAGS)
E
Eric Blake 已提交
848 849 850
libvirt_driver_libxl_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_libxl_impl_la_LIBADD = $(LIBXL_LIBS) libvirt_xenxs.la
libvirt_driver_libxl_impl_la_SOURCES = $(LIBXL_DRIVER_SOURCES)
J
Jim Fehlig 已提交
851 852
endif

853
if WITH_QEMU
E
Eric Blake 已提交
854 855 856
noinst_LTLIBRARIES += libvirt_driver_qemu_impl.la
libvirt_driver_qemu_la_SOURCES =
libvirt_driver_qemu_la_LIBADD = libvirt_driver_qemu_impl.la
857 858
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_qemu.la
E
Eric Blake 已提交
859 860
libvirt_driver_qemu_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_qemu_la_LDFLAGS = -module -avoid-version
861
else
862
noinst_LTLIBRARIES += libvirt_driver_qemu.la
863
# Stateful, so linked to daemon instead
864
#libvirt_la_BUILT_LIBADD += libvirt_driver_qemu.la
865
endif
E
Eric Blake 已提交
866 867

libvirt_driver_qemu_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
868
                                $(GNUTLS_CFLAGS) \
S
Serge Hallyn 已提交
869
                                $(LIBNL_CFLAGS) \
870
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
871 872
libvirt_driver_qemu_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_qemu_impl_la_LIBADD = $(NUMACTL_LIBS) \
873 874
				$(CAPNG_LIBS) \
                                $(GNUTLS_LIBS) \
S
Serge Hallyn 已提交
875
				$(LIBNL_LIBS)
E
Eric Blake 已提交
876
libvirt_driver_qemu_impl_la_SOURCES = $(QEMU_DRIVER_SOURCES)
877

A
Amy Griffis 已提交
878
conf_DATA += qemu/qemu.conf
879

880
augeas_DATA += qemu/libvirtd_qemu.aug
881 882
augeastest_DATA += test_libvirtd_qemu.aug
CLEANFILES += test_libvirtd_qemu.aug
883

884
endif
885
EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug \
886
		qemu/test_libvirtd_qemu.aug.in qemu/THREADS.txt
887

888 889

if WITH_LXC
E
Eric Blake 已提交
890 891 892
noinst_LTLIBRARIES += libvirt_driver_lxc_impl.la
libvirt_driver_lxc_la_SOURCES =
libvirt_driver_lxc_la_LIBADD = libvirt_driver_lxc_impl.la
893 894
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_lxc.la
E
Eric Blake 已提交
895 896
libvirt_driver_lxc_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_lxc_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
897
else
898
noinst_LTLIBRARIES += libvirt_driver_lxc.la
899
# Stateful, so linked to daemon instead
900
#libvirt_la_BUILT_LIBADD += libvirt_driver_lxc.la
901
endif
E
Eric Blake 已提交
902 903

libvirt_driver_lxc_impl_la_CFLAGS = \
S
Serge Hallyn 已提交
904
		$(LIBNL_CFLAGS) \
905
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
906
libvirt_driver_lxc_impl_la_LIBADD = $(CAPNG_LIBS) $(LIBNL_LIBS)
907
if HAVE_LIBBLKID
E
Eric Blake 已提交
908 909
libvirt_driver_lxc_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_lxc_impl_la_LIBADD += $(BLKID_LIBS)
910
endif
911
if WITH_SECDRIVER_SELINUX
E
Eric Blake 已提交
912
libvirt_driver_lxc_impl_la_LIBADD += $(SELINUX_LIBS)
913 914
endif
if WITH_SECDRIVER_APPARMOR
E
Eric Blake 已提交
915
libvirt_driver_lxc_impl_la_LIBADD += $(APPARMOR_LIBS)
916
endif
E
Eric Blake 已提交
917
libvirt_driver_lxc_impl_la_SOURCES = $(LXC_DRIVER_SOURCES)
A
Amy Griffis 已提交
918 919 920

conf_DATA += lxc/lxc.conf

921
augeas_DATA += lxc/libvirtd_lxc.aug
922 923
augeastest_DATA += test_libvirtd_lxc.aug
CLEANFILES += test_libvirtd_lxc.aug
924

925
endif
926
EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug.in
927

928
if WITH_UML
E
Eric Blake 已提交
929 930 931
noinst_LTLIBRARIES += libvirt_driver_uml_impl.la
libvirt_driver_uml_la_SOURCES =
libvirt_driver_uml_la_LIBADD = libvirt_driver_uml_impl.la
932 933
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_uml.la
E
Eric Blake 已提交
934 935
libvirt_driver_uml_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_uml_la_LDFLAGS = -module -avoid-version
936
else
937 938
noinst_LTLIBRARIES += libvirt_driver_uml.la
# Stateful, so linked to daemon instead
939
#libvirt_la_BUILT_LIBADD += libvirt_driver_uml.la
940
endif
E
Eric Blake 已提交
941 942

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
943
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
944 945 946
libvirt_driver_uml_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_uml_impl_la_LIBADD = $(NUMACTL_LIBS)
libvirt_driver_uml_impl_la_SOURCES = $(UML_DRIVER_SOURCES)
947
endif
948

D
Daniel Veillard 已提交
949

950
BUILT_SOURCES += $(ESX_DRIVER_GENERATED)
D
Daniel Veillard 已提交
951

952 953
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

E
Eric Blake 已提交
954 955
EXTRA_DIST += $(ESX_GENERATED_STAMP)

956 957 958
$(ESX_DRIVER_GENERATED): $(ESX_GENERATED_STAMP)

$(ESX_GENERATED_STAMP): $(srcdir)/esx/esx_vi_generator.input \
959
                         $(srcdir)/esx/esx_vi_generator.py
960 961 962 963 964
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/esx/esx_vi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
965

966 967
if WITH_ESX
noinst_LTLIBRARIES += libvirt_driver_esx.la
968
libvirt_la_BUILT_LIBADD += libvirt_driver_esx.la
969
libvirt_driver_esx_la_CFLAGS = $(LIBCURL_CFLAGS) \
970
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
971
libvirt_driver_esx_la_LDFLAGS = $(AM_LDFLAGS)
972
libvirt_driver_esx_la_LIBADD = $(LIBCURL_LIBS)
973
libvirt_driver_esx_la_SOURCES = $(ESX_DRIVER_SOURCES)
974
libvirt_driver_esx_la_DEPENDENCIES = $(ESX_DRIVER_GENERATED)
975 976
endif

M
Matthias Bolte 已提交
977

978 979
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

980 981
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

E
Eric Blake 已提交
982 983
EXTRA_DIST += $(HYPERV_GENERATED_STAMP)

984 985 986
$(HYPERV_DRIVER_GENERATED): $(HYPERV_GENERATED_STAMP)

$(HYPERV_GENERATED_STAMP): $(srcdir)/hyperv/hyperv_wmi_generator.input \
987
                            $(srcdir)/hyperv/hyperv_wmi_generator.py
988 989 990 991
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/hyperv/hyperv_wmi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(HYPERV_DRIVER_GENERATED) $(HYPERV_GENERATED_STAMP)
992

M
Matthias Bolte 已提交
993 994 995 996
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
997
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
998 999 1000 1001 1002
libvirt_driver_hyperv_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_hyperv_la_LIBADD = $(OPENWSMAN_LIBS)
libvirt_driver_hyperv_la_SOURCES = $(HYPERV_DRIVER_SOURCES)
endif

D
Dmitry Guryanov 已提交
1003 1004 1005 1006 1007 1008 1009 1010
if WITH_PARALLELS
noinst_LTLIBRARIES += libvirt_driver_parallels.la
libvirt_la_BUILT_LIBADD += libvirt_driver_parallels.la
libvirt_driver_parallels_la_CFLAGS = \
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
libvirt_driver_parallels_la_SOURCES = $(PARALLELS_DRIVER_SOURCES)
endif

1011
if WITH_NETWORK
E
Eric Blake 已提交
1012 1013 1014
noinst_LTLIBRARIES += libvirt_driver_network_impl.la
libvirt_driver_network_la_SOURCES =
libvirt_driver_network_la_LIBADD = libvirt_driver_network_impl.la
1015 1016
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_network.la
1017
libvirt_driver_network_la_LIBADD += ../gnulib/lib/libgnu.la $(LIBNL_LIBS) $(DBUS_LIBS)
E
Eric Blake 已提交
1018
libvirt_driver_network_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1019
else
1020
noinst_LTLIBRARIES += libvirt_driver_network.la
1021
# Stateful, so linked to daemon instead
1022
#libvirt_la_BUILT_LIBADD += libvirt_driver_network.la
1023
endif
E
Eric Blake 已提交
1024 1025

libvirt_driver_network_impl_la_CFLAGS = \
1026
		$(LIBNL_CFLAGS) $(DBUS_CFLAGS) \
1027
		-I$(top_srcdir)/src/conf $(AM_CFLAGS) $(DBUS_CFLAGS)
E
Eric Blake 已提交
1028
libvirt_driver_network_impl_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
1029
endif
1030 1031 1032
EXTRA_DIST += network/default.xml


1033
if WITH_INTERFACE
1034 1035 1036 1037
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_interface.la
else
noinst_LTLIBRARIES += libvirt_driver_interface.la
1038 1039
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_interface.la
1040
endif
1041
libvirt_driver_interface_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1042
libvirt_driver_interface_la_LDFLAGS = $(AM_LDFLAGS)
1043 1044 1045 1046 1047
libvirt_driver_interface_la_LIBADD =
if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
endif
1048
if WITH_DRIVER_MODULES
1049
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
1050 1051 1052
libvirt_driver_interface_la_LDFLAGS += -module -avoid-version
endif
libvirt_driver_interface_la_SOURCES = $(INTERFACE_DRIVER_SOURCES)
D
Daniel Veillard 已提交
1053 1054
endif

D
Daniel P. Berrange 已提交
1055
if WITH_SECRETS
1056 1057 1058 1059
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_secret.la
else
noinst_LTLIBRARIES += libvirt_driver_secret.la
1060
# Stateful, so linked to daemon instead
1061
#libvirt_la_BUILT_LIBADD += libvirt_driver_secret.la
1062
endif
1063
libvirt_driver_secret_la_CFLAGS = \
1064
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1065
if WITH_DRIVER_MODULES
1066
libvirt_driver_secret_la_LIBADD = ../gnulib/lib/libgnu.la
1067
libvirt_driver_secret_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1068 1069
endif
libvirt_driver_secret_la_SOURCES = $(SECRET_DRIVER_SOURCES)
D
Daniel P. Berrange 已提交
1070
endif
1071

1072
# Needed to keep automake quiet about conditionals
1073 1074
libvirt_driver_storage_impl_la_SOURCES =
libvirt_driver_storage_impl_la_CFLAGS = \
1075
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1076 1077
libvirt_driver_storage_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_storage_impl_la_LIBADD =
1078
if WITH_SECDRIVER_SELINUX
1079
libvirt_driver_storage_impl_la_LIBADD += $(SELINUX_LIBS)
1080 1081
endif
if WITH_SECDRIVER_APPARMOR
1082
libvirt_driver_storage_impl_la_LIBADD += $(APPARMOR_LIBS)
1083
endif
O
Osier Yang 已提交
1084
if HAVE_LIBBLKID
1085 1086
libvirt_driver_storage_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_storage_impl_la_LIBADD += $(BLKID_LIBS)
O
Osier Yang 已提交
1087
endif
1088
if WITH_STORAGE
1089 1090 1091
noinst_LTLIBRARIES += libvirt_driver_storage_impl.la
libvirt_driver_storage_la_SOURCES =
libvirt_driver_storage_la_LIBADD = libvirt_driver_storage_impl.la
1092 1093
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_storage.la
1094
libvirt_driver_storage_la_LIBADD += ../gnulib/lib/libgnu.la
1095
libvirt_driver_storage_la_LDFLAGS = -module -avoid-version
1096
else
1097
noinst_LTLIBRARIES += libvirt_driver_storage.la
1098
# Stateful, so linked to daemon instead
1099
#libvirt_la_BUILT_LIBADD += libvirt_driver_storage.la
1100
endif
1101 1102
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_FS_SOURCES)
1103 1104
endif

1105
if WITH_STORAGE_LVM
1106
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
1107 1108
endif

1109
if WITH_STORAGE_ISCSI
1110
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
1111 1112
endif

1113
if WITH_STORAGE_SCSI
1114
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SCSI_SOURCES)
1115 1116
endif

D
Dave Allan 已提交
1117
if WITH_STORAGE_MPATH
1118 1119 1120
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_MPATH_SOURCES)
libvirt_driver_storage_impl_la_CFLAGS += $(DEVMAPPER_CFLAGS)
libvirt_driver_storage_impl_la_LIBADD += $(DEVMAPPER_LIBS)
D
Dave Allan 已提交
1121 1122
endif

1123
if WITH_STORAGE_DISK
1124
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
1125
endif
1126

1127
if WITH_STORAGE_RBD
1128 1129
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_RBD_SOURCES)
libvirt_driver_storage_impl_la_LIBADD += $(LIBRBD_LIBS)
1130 1131
endif

1132
if WITH_STORAGE_SHEEPDOG
1133
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
1134 1135
endif

1136 1137 1138 1139 1140 1141 1142
if WITH_NODE_DEVICES
# Needed to keep automake quiet about conditionals
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_nodedev.la
else
noinst_LTLIBRARIES += libvirt_driver_nodedev.la
# Stateful, so linked to daemon instead
1143
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1144 1145 1146
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

1147
libvirt_driver_nodedev_la_CFLAGS = \
1148
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1149
libvirt_driver_nodedev_la_LDFLAGS = $(AM_LDFLAGS)
1150
libvirt_driver_nodedev_la_LIBADD =
1151

1152 1153 1154
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
1155
libvirt_driver_nodedev_la_LIBADD += $(HAL_LIBS)
1156
endif
1157 1158
if HAVE_UDEV
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_UDEV_SOURCES)
1159
libvirt_driver_nodedev_la_CFLAGS += $(UDEV_CFLAGS) $(PCIACCESS_CFLAGS)
1160
libvirt_driver_nodedev_la_LIBADD += $(UDEV_LIBS) $(PCIACCESS_LIBS)
1161
endif
1162 1163

if WITH_DRIVER_MODULES
1164
libvirt_driver_nodedev_la_LIBADD += ../gnulib/lib/libgnu.la
1165 1166 1167 1168 1169
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


1170 1171 1172 1173 1174
if WITH_NWFILTER
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_nwfilter.la
else
noinst_LTLIBRARIES += libvirt_driver_nwfilter.la
1175 1176
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_nwfilter.la
1177
endif
1178
libvirt_driver_nwfilter_la_CFLAGS = $(LIBPCAP_CFLAGS) \
1179
		-I$(top_srcdir)/src/conf $(LIBNL_CFLAGS) $(AM_CFLAGS) $(DBUS_CFLAGS)
1180
libvirt_driver_nwfilter_la_LDFLAGS = $(LD_AMFLAGS)
1181
libvirt_driver_nwfilter_la_LIBADD = $(LIBPCAP_LIBS) $(LIBNL_LIBS) $(DBUS_LIBS)
1182
if WITH_DRIVER_MODULES
1183
libvirt_driver_nwfilter_la_LIBADD += ../gnulib/lib/libgnu.la
1184
libvirt_driver_nwfilter_la_LDFLAGS += -module -avoid-version
1185 1186 1187 1188 1189
endif
libvirt_driver_nwfilter_la_SOURCES = $(NWFILTER_DRIVER_SOURCES)
endif


1190 1191 1192 1193
libvirt_security_manager_la_SOURCES = $(SECURITY_DRIVER_SOURCES)
noinst_LTLIBRARIES += libvirt_security_manager.la
libvirt_la_BUILT_LIBADD += libvirt_security_manager.la
libvirt_security_manager_la_CFLAGS = \
1194
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1195 1196
libvirt_security_manager_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_security_manager_la_LIBADD =
1197
if WITH_SECDRIVER_SELINUX
1198 1199 1200
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
libvirt_security_manager_la_CFLAGS += $(SELINUX_CFLAGS)
libvirt_security_manager_la_LIBADD += $(SELINUX_LIBS)
1201
endif
J
Jamie Strandboge 已提交
1202
if WITH_SECDRIVER_APPARMOR
1203 1204 1205
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_APPARMOR_SOURCES)
libvirt_security_manager_la_CFLAGS += $(APPARMOR_CFLAGS)
libvirt_security_manager_la_LIBADD += $(APPARMOR_LIBS)
J
Jamie Strandboge 已提交
1206
endif
1207

1208 1209 1210 1211 1212 1213 1214
# Add all conditional sources just in case...
EXTRA_DIST +=							\
		$(TEST_DRIVER_SOURCES)				\
		$(REMOTE_DRIVER_SOURCES)			\
		$(XEN_DRIVER_SOURCES)				\
		$(QEMU_DRIVER_SOURCES)				\
		$(LXC_DRIVER_SOURCES)				\
1215
		$(UML_DRIVER_SOURCES)				\
1216
		$(OPENVZ_DRIVER_SOURCES)			\
1217
		$(PHYP_DRIVER_SOURCES)				\
1218
		$(VBOX_DRIVER_SOURCES)				\
1219
		$(XENAPI_DRIVER_SOURCES)			\
O
Osier Yang 已提交
1220
		$(LIBXL_DRIVER_SOURCES)				\
1221
		$(ESX_DRIVER_SOURCES)				\
1222
		$(ESX_DRIVER_EXTRA_DIST)			\
M
Matthias Bolte 已提交
1223
		$(HYPERV_DRIVER_SOURCES)			\
1224
		$(HYPERV_DRIVER_EXTRA_DIST)			\
O
Osier Yang 已提交
1225
		$(PARALLELS_DRIVER_SOURCES)			\
1226
		$(NETWORK_DRIVER_SOURCES)			\
1227
		$(INTERFACE_DRIVER_SOURCES)			\
1228 1229 1230 1231
		$(STORAGE_DRIVER_SOURCES)			\
		$(STORAGE_DRIVER_FS_SOURCES)			\
		$(STORAGE_DRIVER_LVM_SOURCES)			\
		$(STORAGE_DRIVER_ISCSI_SOURCES)			\
1232
		$(STORAGE_DRIVER_SCSI_SOURCES)			\
D
Dave Allan 已提交
1233
		$(STORAGE_DRIVER_MPATH_SOURCES)			\
1234
		$(STORAGE_DRIVER_DISK_SOURCES)			\
1235
		$(STORAGE_DRIVER_RBD_SOURCES)			\
1236
		$(STORAGE_DRIVER_SHEEPDOG_SOURCES)		\
1237 1238
		$(NODE_DEVICE_DRIVER_SOURCES)			\
		$(NODE_DEVICE_DRIVER_HAL_SOURCES)		\
1239
		$(NODE_DEVICE_DRIVER_UDEV_SOURCES)		\
1240
		$(NWFILTER_DRIVER_SOURCES)			\
1241
		$(SECURITY_DRIVER_SELINUX_SOURCES)		\
J
Jamie Strandboge 已提交
1242
		$(SECURITY_DRIVER_APPARMOR_SOURCES)		\
D
Daniel P. Berrange 已提交
1243
		$(SECRET_DRIVER_SOURCES)			\
1244
		$(VBOX_DRIVER_EXTRA_DIST)			\
1245 1246
		$(VMWARE_DRIVER_SOURCES)			\
		$(XENXS_SOURCES)
1247

1248 1249 1250 1251 1252 1253
check-local: check-augeas

.PHONY: check-augeas check-augeas-qemu check-augeas-lxc check-augeas-sanlock

check-augeas: check-augeas-qemu check-augeas-lxc check-augeas-sanlock

1254
AUG_GENTEST = $(PERL) $(top_srcdir)/build-aux/augeas-gentest.pl
1255
EXTRA_DIST += $(top_srcdir)/build-aux/augeas-gentest.pl
1256

1257
if WITH_QEMU
1258 1259
test_libvirtd_qemu.aug: qemu/test_libvirtd_qemu.aug.in \
		$(srcdir)/qemu/qemu.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1260
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/qemu/qemu.conf $< $@
1261

1262
check-augeas-qemu: test_libvirtd_qemu.aug
1263
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1264
	    '$(AUGPARSE)' -I $(srcdir)/qemu test_libvirtd_qemu.aug; \
1265
	fi
1266 1267
else
check-augeas-qemu:
1268
endif
1269

1270
if WITH_LXC
1271 1272
test_libvirtd_lxc.aug: lxc/test_libvirtd_lxc.aug.in \
		$(srcdir)/lxc/lxc.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1273
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/lxc/lxc.conf $< $@
1274

1275
check-augeas-lxc: test_libvirtd_lxc.aug
1276
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1277
	    '$(AUGPARSE)' -I $(srcdir)/lxc test_libvirtd_lxc.aug; \
1278
	fi
1279 1280
else
check-augeas-lxc:
1281
endif
1282

1283
if HAVE_SANLOCK
1284 1285
test_libvirt_sanlock.aug: locking/test_libvirt_sanlock.aug.in \
		locking/qemu-sanlock.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1286
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-sanlock.conf $< $@
1287

1288
check-augeas-sanlock: test_libvirt_sanlock.aug
1289
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1290
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_sanlock.aug; \
1291
	fi
1292 1293 1294
else
check-augeas-sanlock:
endif
1295

1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314
#
# Build our version script.  This is composed of three parts:
#
# 1. libvirt_public.syms - public API.  These functions are always
# present in the library and should never change incompatibly.
#
# 2. libvirt_private.syms - private API.  These symbols are private and
# semantics may change on every release, hence the version number is
# spliced in at build time. This ensures that if libvirtd, virsh, or a
# driver module was built against one libvirt release, it will refuse to
# load with another where symbols may have same names but different
# semantics. Such symbols should never be visible in an (installed)
# public header file.
#
# 3. libvirt_*.syms - dynamic private API.  Like libvirt_private.syms,
# except that build options (such as --enable-debug) can mean these
# symbols aren't present at all.
#

1315
if WITH_DRIVER_MODULES
1316
USED_SYM_FILES += libvirt_driver_modules.syms
1317
endif
1318

1319
if WITH_LINUX
1320
USED_SYM_FILES += libvirt_linux.syms
1321
endif
1322

1323 1324 1325 1326
if WITH_ESX
USED_SYM_FILES += libvirt_esx.syms
endif

1327 1328 1329 1330
if WITH_LIBVIRTD
USED_SYM_FILES += libvirt_daemon.syms
endif

1331 1332 1333 1334
if WITH_OPENVZ
USED_SYM_FILES += libvirt_openvz.syms
endif

1335 1336 1337 1338
if WITH_VMX
USED_SYM_FILES += libvirt_vmx.syms
endif

1339 1340 1341 1342
if WITH_XENXS
USED_SYM_FILES += libvirt_xenxs.syms
endif

E
Eric Blake 已提交
1343 1344 1345 1346
if HAVE_SASL
USED_SYM_FILES += libvirt_sasl.syms
endif

1347 1348 1349 1350
if HAVE_LIBSSH2
USED_SYM_FILES += libvirt_libssh2.syms
endif

1351 1352 1353 1354
if WITH_ATOMIC_OPS_PTHREAD
USED_SYM_FILES += libvirt_atomic.syms
endif

1355 1356 1357
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
1358
  libvirt_atomic.syms		\
1359
  libvirt_driver_modules.syms	\
E
Eric Blake 已提交
1360
  libvirt_daemon.syms		\
1361
  libvirt_linux.syms		\
1362 1363 1364
  libvirt_esx.syms		\
  libvirt_openvz.syms		\
  libvirt_qemu.syms		\
E
Eric Blake 已提交
1365
  libvirt_sasl.syms		\
1366
  libvirt_vmx.syms		\
1367 1368
  libvirt_xenxs.syms	\
  libvirt_libssh2.syms
1369

1370 1371 1372
GENERATED_SYM_FILES = libvirt.syms libvirt.def libvirt_qemu.def

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1373

1374 1375
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
		$(top_builddir)/config.status
1376 1377 1378 1379 1380 1381
	$(AM_V_GEN)rm -f $@-tmp $@ ; \
	printf '# WARNING: generated from the following:\n# $^\n\n' >$@-tmp && \
	cat $(srcdir)/libvirt_public.syms >>$@-tmp && \
	printf '\n\n# Private symbols\n\n' >>$@-tmp && \
	printf 'LIBVIRT_PRIVATE_$(VERSION) {\n\n'  >>$@-tmp && \
	printf 'global:\n\n' >>$@-tmp && \
1382
	for file in $(USED_SYM_FILES); do \
1383
	    cat $(srcdir)/$$file >>$@-tmp; \
1384 1385 1386
	done && \
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
	chmod a-w $@-tmp && \
1387
	mv $@-tmp libvirt.syms
1388

1389 1390 1391
libvirt.def: libvirt.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1392
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1393 1394 1395
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt.def

1396 1397 1398
libvirt_qemu.def: $(srcdir)/libvirt_qemu.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1399
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1400 1401 1402
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt_qemu.def

1403 1404
# Empty source list - it merely links a bunch of convenience libs together
libvirt_la_SOURCES =
1405
libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_SYMBOL_FILE) \
E
Eric Blake 已提交
1406
		     -version-info $(LIBVIRT_VERSION_INFO) \
1407
		    $(LIBVIRT_NODELETE) $(AM_LDFLAGS) \
1408
		    $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS)
1409
libvirt_la_BUILT_LIBADD += ../gnulib/lib/libgnu.la
1410
libvirt_la_LIBADD += \
1411
		    $(DRIVER_MODULE_LIBS) \
1412
		    $(CYGWIN_EXTRA_LIBADD)
1413
libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS)
1414 1415 1416 1417 1418 1419
# Because we specify libvirt_la_DEPENDENCIES for $(LIBVIRT_SYMBOL_FILE), we
# lose automake's automatic dependencies on an appropriate subset of
# $(libvirt_la_LIBADD).  But we were careful to create
# $(libvirt_la_BUILT_LIBADD) as the subset that automake would have
# picked out for us.
libvirt_la_DEPENDENCIES = $(libvirt_la_BUILT_LIBADD) $(LIBVIRT_SYMBOL_FILE)
1420

1421
if WITH_DTRACE_PROBES
1422
libvirt_la_BUILT_LIBADD += libvirt_probes.lo
1423
libvirt_la_DEPENDENCIES += libvirt_probes.lo libvirt_probes.o
1424
nodist_libvirt_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1425
if WITH_REMOTE
E
Eric Blake 已提交
1426
nodist_libvirt_driver_remote_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1427
endif WITH_REMOTE
1428 1429 1430
if WITH_DRIVER_MODULES
DTRACE2SYSTEMTAP_FLAGS = --with-modules
endif
1431

1432 1433 1434
BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp

if WITH_QEMU
1435
libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo
1436
nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h
1437
BUILT_SOURCES += libvirt_qemu_probes.h
1438
endif
1439 1440

tapsetdir = $(datadir)/systemtap/tapset
1441
tapset_DATA = libvirt_probes.stp libvirt_qemu_probes.stp libvirt_functions.stp
1442

1443
%_probes.h: %_probes.d
1444 1445
	$(AM_V_GEN)$(DTRACE) -o $@ -h -s $<

E
Eric Blake 已提交
1446
.PRECIOUS: %_probes.o
1447
%_probes.o: %_probes.d
1448 1449
	$(AM_V_GEN)$(DTRACE) -o $@ -G -s $<

1450 1451 1452 1453 1454 1455 1456 1457 1458
%_probes.lo: %_probes.o
	$(AM_V_GEN)printf %s\\n \
	  '# $@ - a libtool object file' \
	  '# Generated by libtool (GNU libtool) 2.4' \
	  '# Actually generated by Makefile.am, in order to shut up libtool' \
	  "pic_object='$<'" \
	  "non_pic_object='$<'" \
	> $@

J
Jiri Denemark 已提交
1459 1460 1461 1462
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1463 1464

libvirt_functions.stp: $(RPC_PROBE_FILES) $(srcdir)/rpc/gensystemtap.pl
1465
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gensystemtap.pl $(RPC_PROBE_FILES) > $@
1466

1467
%_probes.stp: %_probes.d $(srcdir)/dtrace2systemtap.pl $(top_builddir)/config.status
1468
	$(AM_V_GEN)$(PERL) -w $(srcdir)/dtrace2systemtap.pl \
1469
	  $(DTRACE2SYSTEMTAP_FLAGS) $(bindir) $(sbindir) $(libdir) $< > $@
1470

1471
CLEANFILES += libvirt_probes.h libvirt_probes.o libvirt_probes.lo \
1472
              libvirt_qemu_probes.h libvirt_qemu_probes.o \
1473
              libvirt_qemu_probes.lo\
1474 1475
              libvirt_functions.stp libvirt_probes.stp \
              libvirt_qemu_probes.stp
1476 1477
endif

1478
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1479

C
Chris Lalancette 已提交
1480 1481
libvirt_qemu_la_SOURCES = libvirt-qemu.c
libvirt_qemu_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
E
Eric Blake 已提交
1482 1483
			  -version-info $(LIBVIRT_VERSION_INFO) \
			  $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS) \
1484 1485
			  $(AM_LDFLAGS)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
C
Chris Lalancette 已提交
1486
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
E
Eric Blake 已提交
1487
EXTRA_DIST += $(LIBVIRT_QEMU_SYMBOL_FILE)
1488

1489 1490 1491 1492 1493
if HAVE_SANLOCK
lockdriverdir = $(libdir)/libvirt/lock-driver
lockdriver_LTLIBRARIES = sanlock.la

sanlock_la_SOURCES = $(LOCK_DRIVER_SANLOCK_SOURCES)
1494
sanlock_la_CFLAGS = $(AM_CFLAGS)
1495
sanlock_la_LDFLAGS = -module -avoid-version
1496
sanlock_la_LIBADD = -lsanlock_client \
1497 1498 1499
		../gnulib/lib/libgnu.la

augeas_DATA += locking/libvirt_sanlock.aug
1500 1501
augeastest_DATA += test_libvirt_sanlock.aug
CLEANFILES += test_libvirt_sanlock.aug
1502

E
Eric Blake 已提交
1503
locking/%-sanlock.conf: $(srcdir)/locking/sanlock.conf
1504
	$(AM_V_GEN)$(MKDIR_P) locking ; \
1505 1506 1507
	cp $< $@

if WITH_QEMU
E
Eric Blake 已提交
1508
nodist_conf_DATA = locking/qemu-sanlock.conf
1509
BUILT_SOURCES += locking/qemu-sanlock.conf
E
Eric Blake 已提交
1510
DISTCLEANFILES += locking/qemu-sanlock.conf
1511
endif
1512
else
1513
EXTRA_DIST += $(LOCK_DRIVER_SANLOCK_SOURCES)
1514
endif
1515 1516
EXTRA_DIST += locking/sanlock.conf \
	locking/libvirt_sanlock.aug \
1517
	locking/test_libvirt_sanlock.aug.in
1518

1519 1520 1521 1522
noinst_LTLIBRARIES += \
	libvirt-net-rpc.la \
	libvirt-net-rpc-server.la \
	libvirt-net-rpc-client.la
1523

1524
EXTRA_DIST += \
E
Eric Blake 已提交
1525 1526 1527 1528
	dtrace2systemtap.pl \
	rpc/gendispatch.pl \
	rpc/genprotocol.pl \
	rpc/gensystemtap.pl \
J
Jiri Denemark 已提交
1529 1530
	rpc/virnetprotocol.x \
	rpc/virkeepaliveprotocol.x
1531

E
Eric Blake 已提交
1532 1533
VIR_NET_RPC_GENERATED = \
	$(srcdir)/rpc/virnetprotocol.h \
J
Jiri Denemark 已提交
1534 1535 1536
	$(srcdir)/rpc/virnetprotocol.c \
	$(srcdir)/rpc/virkeepaliveprotocol.h \
	$(srcdir)/rpc/virkeepaliveprotocol.c
1537

1538
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1539

1540
libvirt_net_rpc_la_SOURCES = \
1541
	rpc/virnetmessage.h rpc/virnetmessage.c \
1542
	rpc/virnetprotocol.h rpc/virnetprotocol.c \
1543
	rpc/virnetsocket.h rpc/virnetsocket.c \
J
Jiri Denemark 已提交
1544
	rpc/virnettlscontext.h rpc/virnettlscontext.c \
1545 1546
	rpc/virkeepaliveprotocol.h rpc/virkeepaliveprotocol.c \
	rpc/virkeepalive.h rpc/virkeepalive.c
1547 1548 1549 1550 1551 1552 1553
if HAVE_LIBSSH2
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
else
EXTRA_DIST += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
endif
1554 1555 1556 1557 1558 1559 1560
if HAVE_SASL
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
else
EXTRA_DIST += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
endif
1561
libvirt_net_rpc_la_CFLAGS = \
1562
			$(GNUTLS_CFLAGS) \
1563
			$(SASL_CFLAGS) \
1564
			$(LIBSSH2_CFLAGS) \
1565
			$(XDR_CFLAGS) \
1566 1567
			$(AM_CFLAGS)
libvirt_net_rpc_la_LDFLAGS = \
1568
			$(GNUTLS_LIBS) \
1569
			$(SASL_LIBS) \
1570
			$(LIBSSH2_LIBS)\
1571 1572 1573 1574 1575 1576
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1577 1578 1579 1580
libvirt_net_rpc_server_la_SOURCES = \
	rpc/virnetserverprogram.h rpc/virnetserverprogram.c \
	rpc/virnetserverservice.h rpc/virnetserverservice.c \
	rpc/virnetserverclient.h rpc/virnetserverclient.c \
1581
	rpc/virnetservermdns.h rpc/virnetservermdns.c \
1582 1583
	rpc/virnetserver.h rpc/virnetserver.c
libvirt_net_rpc_server_la_CFLAGS = \
1584
			$(AVAHI_CFLAGS) \
E
Eric Blake 已提交
1585
			$(XDR_CFLAGS) \
J
Jim Fehlig 已提交
1586 1587
			$(AM_CFLAGS) \
			$(POLKIT_CFLAGS)
1588 1589
libvirt_net_rpc_server_la_LDFLAGS = \
			$(AM_LDFLAGS) \
1590
			$(AVAHI_LIBS) \
J
Jim Fehlig 已提交
1591
			$(POLKIT_LIBS) \
1592 1593 1594 1595 1596
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_server_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1597 1598 1599 1600 1601
libvirt_net_rpc_client_la_SOURCES = \
	rpc/virnetclientprogram.h rpc/virnetclientprogram.c \
	rpc/virnetclientstream.h rpc/virnetclientstream.c \
	rpc/virnetclient.h rpc/virnetclient.c
libvirt_net_rpc_client_la_CFLAGS = \
E
Eric Blake 已提交
1602 1603
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1604 1605 1606 1607 1608 1609
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1610

1611 1612
libexec_PROGRAMS =

1613
if WITH_LIBVIRTD
1614 1615 1616 1617 1618 1619 1620 1621
libexec_PROGRAMS += libvirt_iohelper
libvirt_iohelper_SOURCES = $(UTIL_IO_HELPER_SOURCES)
libvirt_iohelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
libvirt_iohelper_LDADD =		\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la

libvirt_iohelper_CFLAGS = $(AM_CFLAGS)
1622
endif
1623

1624
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
1625
if WITH_LIBVIRTD
1626
libexec_PROGRAMS += libvirt_parthelper
1627

1628
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
1629
libvirt_parthelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
1630 1631 1632 1633 1634
libvirt_parthelper_LDADD =		\
		$(LIBPARTED_LIBS)	\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la

1635
libvirt_parthelper_CFLAGS = $(LIBPARTED_CFLAGS) $(AM_CFLAGS)
R
Richard W.M. Jones 已提交
1636
endif
1637
endif
1638 1639
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

1640

1641 1642 1643 1644 1645 1646
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

libvirt_lxc_SOURCES =						\
		$(LXC_CONTROLLER_SOURCES)			\
O
Osier Yang 已提交
1647 1648
		$(NODE_INFO_SOURCES)				\
		$(DATATYPES_SOURCES)
1649
libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(AM_LDFLAGS)
1650 1651
libvirt_lxc_LDADD =			\
		$(NUMACTL_LIBS) \
1652 1653
		libvirt-net-rpc-server.la \
		libvirt-net-rpc.la \
1654
		libvirt_security_manager.la \
1655 1656
		libvirt_conf.la \
		libvirt_util.la \
1657
		../gnulib/lib/libgnu.la
1658
if WITH_DTRACE_PROBES
1659
libvirt_lxc_LDADD += libvirt_probes.lo
1660
endif
1661 1662 1663
if WITH_SECDRIVER_SELINUX
libvirt_lxc_LDADD += $(SELINUX_LIBS)
endif
J
Jiri Denemark 已提交
1664 1665 1666
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_LDADD += $(APPARMOR_LIBS)
endif
1667
libvirt_lxc_CFLAGS =				\
1668
		-I$(top_srcdir)/src/conf	\
1669 1670
		$(AM_CFLAGS)                    \
		$(LIBNL_CFLAGS)
1671 1672 1673 1674
if HAVE_LIBBLKID
libvirt_lxc_CFLAGS += $(BLKID_CFLAGS)
libvirt_lxc_LDADD += $(BLKID_LIBS)
endif
1675 1676 1677
if WITH_SECDRIVER_SELINUX
libvirt_lxc_CFLAGS += $(SELINUX_CFLAGS)
endif
J
Jiri Denemark 已提交
1678 1679 1680
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_CFLAGS += $(APPARMOR_CFLAGS)
endif
1681 1682 1683 1684
endif
endif
EXTRA_DIST += $(LXC_CONTROLLER_SOURCES)

J
Jamie Strandboge 已提交
1685 1686 1687 1688 1689 1690
if WITH_SECDRIVER_APPARMOR
if WITH_LIBVIRTD
libexec_PROGRAMS += virt-aa-helper

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1691
virt_aa_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
J
Jamie Strandboge 已提交
1692
virt_aa_helper_LDADD =						\
C
Chris Lalancette 已提交
1693 1694 1695
		libvirt_conf.la					\
		libvirt_util.la					\
		../gnulib/lib/libgnu.la
1696
if WITH_DTRACE_PROBES
1697
virt_aa_helper_LDADD += libvirt_probes.lo
1698
endif
J
Jamie Strandboge 已提交
1699
virt_aa_helper_CFLAGS =						\
1700 1701
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/security			\
1702
		$(AM_CFLAGS)
J
Jamie Strandboge 已提交
1703 1704 1705 1706
endif
endif
EXTRA_DIST += $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1707
install-data-local:
1708 1709
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/images"
1710
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems"
1711
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/boot"
1712 1713 1714
if HAVE_SANLOCK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock"
endif
1715 1716 1717
if WITH_QEMU
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/qemu"
1718
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt/qemu"
1719
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/qemu"
1720 1721 1722 1723 1724
endif
if WITH_LXC
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lxc"
endif
J
Jim Fehlig 已提交
1725 1726 1727
if WITH_LIBXL
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/libxl"
J
Jim Fehlig 已提交
1728
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/libxl"
J
Jim Fehlig 已提交
1729
endif
1730 1731 1732 1733 1734 1735
if WITH_UML
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/uml"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/uml"
endif
if WITH_NETWORK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/network"
1736
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/dnsmasq"
1737
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/network"
1738 1739 1740 1741
	$(MKDIR_P) "$(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart"
	$(INSTALL_DATA) $(srcdir)/network/default.xml \
	  $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
	test -z "$(UUID)" || \
E
Eric Blake 已提交
1742 1743 1744 1745 1746 1747
	  { sed -e "s,</name>,</name>\n  <uuid>$(UUID)</uuid>," \
	      $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml > \
	      $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml.t && \
	    cp $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml.t \
	      $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml && \
	    rm $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml.t; }
1748
	test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
E
Eric Blake 已提交
1749
	   ln -s ../default.xml \
1750 1751 1752 1753 1754 1755
	    $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
endif

uninstall-local::
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
1756
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
1757
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
1758 1759 1760
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
1761 1762 1763 1764 1765
if WITH_QEMU
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/qemu" ||:
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt/qemu" ||:
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/qemu" ||:
1766
endif
1767 1768 1769 1770
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
1771 1772 1773
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1774
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1775
endif
1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788
if WITH_UML
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/uml" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/uml" ||:
endif
if WITH_NETWORK
	rm -f $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
	rm -f $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/default.xml
	rmdir "$(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart" || :
	rmdir "$(DESTDIR)$(sysconfdir)/libvirt/qemu/networks" || :
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/network" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/network" ||:
endif
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt" ||:
R
Richard W.M. Jones 已提交
1789

1790 1791
CLEANFILES += *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda *.i *.s
DISTCLEANFILES += $(GENERATED_SYM_FILES)
1792
MAINTAINERCLEANFILES += $(REMOTE_DRIVER_GENERATED) $(VIR_NET_RPC_GENERATED)