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/virprocess.c util/virprocess.h		\
91
		util/virtypedparam.c util/virtypedparam.h	\
92
		util/xml.c util/xml.h				\
L
Lai Jiangshan 已提交
93
		util/virterror.c util/virterror_internal.h	\
94
		util/virdbus.c util/virdbus.h			\
95
		util/virhash.c util/virhash.h			\
96
		util/virhashcode.c util/virhashcode.h           \
L
Lai Jiangshan 已提交
97
		util/virkeycode.c util/virkeycode.h		\
98
		util/virkeyfile.c util/virkeyfile.h		\
99
		util/virkeymaps.h				\
100
		util/virmacaddr.h util/virmacaddr.c		\
101
		util/virnetdev.h util/virnetdev.c		\
102
		util/virnetdevbandwidth.h util/virnetdevbandwidth.c \
103
		util/virnetdevbridge.h util/virnetdevbridge.c	\
104
		util/virnetdevmacvlan.c util/virnetdevmacvlan.h	\
A
Ansis Atteka 已提交
105
		util/virnetdevopenvswitch.h util/virnetdevopenvswitch.c \
106
		util/virnetdevtap.h util/virnetdevtap.c		\
107
		util/virnetdevveth.h util/virnetdevveth.c \
L
Laine Stump 已提交
108
		util/virnetdevvlan.h util/virnetdevvlan.c \
109
		util/virnetdevvportprofile.h util/virnetdevvportprofile.c \
110
		util/virnetlink.c util/virnetlink.h		\
111
		util/virrandom.h util/virrandom.c		\
112
		util/virsocketaddr.h util/virsocketaddr.c \
M
Martin Kletzander 已提交
113 114
		util/virtime.h util/virtime.c \
		util/viruri.h util/viruri.c
L
Lai Jiangshan 已提交
115 116 117 118

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

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

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

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

127
# Internal generic driver infrastructure
128
NODE_INFO_SOURCES = nodeinfo.h nodeinfo.c
O
Osier Yang 已提交
129 130 131 132 133 134 135 136 137 138 139
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	\
140
		locking/domain_lock.h locking/domain_lock.c
141

142 143 144
LOCK_DRIVER_SANLOCK_SOURCES = \
		locking/lock_driver_sanlock.c

145

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

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

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

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

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

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

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

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

186
# Secret driver generic impl APIs
187 188 189 190 191 192 193 194 195 196
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

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

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

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

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

223
# The remote RPC driver, covering domains, storage, networks, etc
224
REMOTE_DRIVER_GENERATED = \
E
Eric Blake 已提交
225 226 227 228 229 230 231 232 233
		$(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
234
REMOTE_DRIVER_PROTOCOL = $(REMOTE_PROTOCOL) $(QEMU_PROTOCOL)
235

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

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

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

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

254 255 256 257 258 259 260 261 262 263
# 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
264 265 266 267

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

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

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

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

333 334
# 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.
335 336
$(srcdir)/remote_protocol-struct $(srcdir)/qemu_protocol-struct: \
		$(srcdir)/%-struct: libvirt_driver_remote_la-%.lo
337
	$(PDWTAGS)
338 339
$(srcdir)/virnetprotocol-struct $(srcdir)/virkeepaliveprotocol-struct: \
		$(srcdir)/%-struct: libvirt_net_rpc_la-%.lo
340
	$(PDWTAGS)
341
else !WITH_REMOTE
342 343 344
# The $(PROTOCOL_STRUCTS) files must live in git, because they cannot be
# re-generated when configured --without-remote.
check-protocol:
345
endif
346
EXTRA_DIST += $(PROTOCOL_STRUCTS) check-symfile.pl
E
Eric Blake 已提交
347
check-local: check-protocol check-symfile
348
.PHONY: check-protocol $(PROTOCOL_STRUCTS:structs=struct)
349

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

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
356 357 358 359 360 361
		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
362
if WITH_XEN_INOTIFY
363
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
364
endif
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 403
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)

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

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

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

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

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

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

439
VBOX_DRIVER_SOURCES =						\
E
Eric Blake 已提交
440 441 442 443 444 445
	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			\
446 447
	vbox/vbox_V4_0.c vbox/vbox_CAPI_v4_0.h			\
	vbox/vbox_V4_1.c vbox/vbox_CAPI_v4_1.h
448

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

O
Osier Yang 已提交
454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471
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				\
472
		qemu/qemu_bridge_filter.h
R
Richard W.M. Jones 已提交
473

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

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

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

O
Osier Yang 已提交
487 488 489 490 491 492 493
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	\
494
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
495 496 497 498
		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		\
499
		esx/esx_vi_types.c esx/esx_vi_types.h
500

501
ESX_DRIVER_GENERATED =							\
502 503
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
504
		esx/esx_vi_methods.generated.macro			\
505 506 507 508 509
		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			\
510 511 512
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
513

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

O
Osier Yang 已提交
520
HYPERV_DRIVER_SOURCES =									\
M
Matthias Bolte 已提交
521 522 523 524 525 526 527
		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		\
528
		hyperv/hyperv_nwfilter_driver.c hyperv/hyperv_nwfilter_driver.h		\
529
		hyperv/hyperv_util.c hyperv/hyperv_util.h				\
530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545
		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 已提交
546 547
PARALLELS_DRIVER_SOURCES =					\
		parallels/parallels_driver.h			\
548
		parallels/parallels_driver.c			\
549 550
		parallels/parallels_utils.c			\
		parallels/parallels_utils.h			\
D
Dmitry Guryanov 已提交
551
		parallels/parallels_storage.c
D
Dmitry Guryanov 已提交
552

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

556 557 558 559 560 561 562 563 564 565 566
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
567

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

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

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

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

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

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

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

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

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

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

601
STORAGE_HELPER_DISK_SOURCES =					\
602
		storage/parthelper.c
603

604 605 606
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

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

619

620
# Security framework and drivers for various models
O
Osier Yang 已提交
621 622 623 624 625
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		\
626
		security/security_manager.h security/security_manager.c
627

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

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

634

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

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

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

J
Jiri Denemark 已提交
648 649 650 651
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 已提交
652
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
653
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
654 655
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
		cpu/cpu_powerpc.c
656

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

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

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

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

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

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

687 688

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

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

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

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

716

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

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

725
USED_SYM_FILES = libvirt_private.syms
726

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

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

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

753 754
endif WITH_REMOTE

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

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

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

libvirt_driver_xen_impl_la_CFLAGS =					\
778
		$(XEN_CFLAGS)					\
779 780
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
781
		$(AM_CFLAGS)
E
Eric Blake 已提交
782 783 784
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)
785 786
endif

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

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

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

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

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

J
Jim Fehlig 已提交
831
if WITH_LIBXL
E
Eric Blake 已提交
832 833 834
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 已提交
835 836
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
837 838
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
839 840 841 842 843
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 已提交
844 845

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
846 847
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
848
		$(AM_CFLAGS)
E
Eric Blake 已提交
849 850 851
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 已提交
852 853
endif

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

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

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

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

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

889 890

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

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

conf_DATA += lxc/lxc.conf

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

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

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

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
944
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
945 946 947
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)
948
endif
949

D
Daniel Veillard 已提交
950

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

953 954
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

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

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

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

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
966

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

M
Matthias Bolte 已提交
978

979 980
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

981 982
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

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

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

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

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

M
Matthias Bolte 已提交
994 995 996 997
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
998
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
999 1000 1001 1002 1003
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 已提交
1004 1005 1006 1007 1008 1009 1010 1011
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

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

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


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

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

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

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

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

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

D
Dave Allan 已提交
1118
if WITH_STORAGE_MPATH
1119 1120 1121
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 已提交
1122 1123
endif

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

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

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

1137 1138 1139 1140 1141 1142 1143
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
1144
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1145 1146 1147
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

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

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

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


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


1191 1192 1193 1194
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 = \
1195
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1196 1197
libvirt_security_manager_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_security_manager_la_LIBADD =
1198
if WITH_SECDRIVER_SELINUX
1199 1200 1201
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
libvirt_security_manager_la_CFLAGS += $(SELINUX_CFLAGS)
libvirt_security_manager_la_LIBADD += $(SELINUX_LIBS)
1202
endif
J
Jamie Strandboge 已提交
1203
if WITH_SECDRIVER_APPARMOR
1204 1205 1206
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 已提交
1207
endif
1208

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

1249 1250 1251 1252 1253 1254
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

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

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

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

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

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

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

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

1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315
#
# 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.
#

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

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

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

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

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

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

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

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

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

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

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

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

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1374

1375 1376
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
		$(top_builddir)/config.status
1377 1378 1379 1380 1381 1382
	$(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 && \
1383
	for file in $(USED_SYM_FILES); do \
1384
	    cat $(srcdir)/$$file >>$@-tmp; \
1385 1386 1387
	done && \
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
	chmod a-w $@-tmp && \
1388
	mv $@-tmp libvirt.syms
1389

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

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

1404 1405
# Empty source list - it merely links a bunch of convenience libs together
libvirt_la_SOURCES =
1406
libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_SYMBOL_FILE) \
E
Eric Blake 已提交
1407
		     -version-info $(LIBVIRT_VERSION_INFO) \
1408
		    $(LIBVIRT_NODELETE) $(AM_LDFLAGS) \
1409
		    $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS)
1410
libvirt_la_BUILT_LIBADD += ../gnulib/lib/libgnu.la
1411
libvirt_la_LIBADD += \
1412
		    $(DRIVER_MODULE_LIBS) \
1413
		    $(CYGWIN_EXTRA_LIBADD)
1414
libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS)
1415 1416 1417 1418 1419 1420
# 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)
1421

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

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

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

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

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

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

1451 1452 1453 1454 1455 1456 1457 1458 1459
%_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 已提交
1460 1461 1462 1463
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1464 1465

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

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

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

1479
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1480

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

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

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

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

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

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

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

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

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

1539
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1540

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

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

1598 1599 1600 1601 1602
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 已提交
1603 1604
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1605 1606 1607 1608 1609 1610
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1611

1612 1613
libexec_PROGRAMS =

1614
if WITH_LIBVIRTD
1615 1616 1617 1618 1619 1620 1621 1622
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)
1623
endif
1624

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

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

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

1641

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

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

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

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

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

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

uninstall-local::
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
1757
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
1758
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
1759 1760 1761
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
1762 1763 1764 1765 1766
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" ||:
1767
endif
1768 1769 1770 1771
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
1772 1773 1774
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1775
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1776
endif
1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789
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 已提交
1790

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