Makefile.am 56.6 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
		conf/domain_nwfilter.c conf/domain_nwfilter.h
157 158 159

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

313 314 315 316 317
# .libs/libvirt.so is built by libtool as a side-effect of the Makefile
# rule for libvirt.la
check-symfile: libvirt.syms libvirt.la
	$(AM_V_GEN)$(PERL) $(srcdir)/check-symfile.pl libvirt.syms \
	  .libs/libvirt.so
318

319 320 321
PROTOCOL_STRUCTS = \
	$(srcdir)/remote_protocol-structs \
	$(srcdir)/qemu_protocol-structs \
J
Jiri Denemark 已提交
322 323
	$(srcdir)/virnetprotocol-structs \
	$(srcdir)/virkeepaliveprotocol-structs
324
if WITH_REMOTE
325 326
check-protocol: $(PROTOCOL_STRUCTS) $(PROTOCOL_STRUCTS:structs=struct)

327 328
# 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.
329 330
$(srcdir)/remote_protocol-struct $(srcdir)/qemu_protocol-struct: \
		$(srcdir)/%-struct: libvirt_driver_remote_la-%.lo
331
	$(PDWTAGS)
332 333
$(srcdir)/virnetprotocol-struct $(srcdir)/virkeepaliveprotocol-struct: \
		$(srcdir)/%-struct: libvirt_net_rpc_la-%.lo
334
	$(PDWTAGS)
335
else !WITH_REMOTE
336 337 338
# The $(PROTOCOL_STRUCTS) files must live in git, because they cannot be
# re-generated when configured --without-remote.
check-protocol:
339
endif
340
EXTRA_DIST += $(PROTOCOL_STRUCTS) check-symfile.pl
341
check-local: check-protocol check-symfile
342
.PHONY: check-protocol $(PROTOCOL_STRUCTS:structs=struct)
343

344 345
# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
346
		test/test_driver.c test/test_driver.h
347 348 349

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
350 351 352 353 354 355
		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
356
if WITH_XEN_INOTIFY
357
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
358
endif
359

360 361 362 363 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
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)

398
LXC_DRIVER_SOURCES =						\
399 400
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_MONITOR_GENERATED)			\
401 402
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
403
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
404
		lxc/lxc_domain.c lxc/lxc_domain.h		\
405
		lxc/lxc_monitor.c lxc/lxc_monitor.h		\
406
		lxc/lxc_process.c lxc/lxc_process.h		\
407
		lxc/lxc_driver.c lxc/lxc_driver.h
408

409
LXC_CONTROLLER_SOURCES =					\
410 411
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_CONTROLLER_GENERATED)			\
412 413
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
414
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
415
		lxc/lxc_controller.c
416

J
Jamie Strandboge 已提交
417
SECURITY_DRIVER_APPARMOR_HELPER_SOURCES =			\
E
Eric Blake 已提交
418
		$(DATATYPES_SOURCES)				\
J
Jamie Strandboge 已提交
419 420
		security/virt-aa-helper.c

421 422 423
PHYP_DRIVER_SOURCES =						\
		phyp/phyp_driver.c phyp/phyp_driver.h

424
OPENVZ_DRIVER_SOURCES =						\
425
		openvz/openvz_conf.c openvz/openvz_conf.h	\
426 427
		openvz/openvz_driver.c openvz/openvz_driver.h   \
		openvz/openvz_util.c openvz/openvz_util.h
428

E
Eric Blake 已提交
429
VMWARE_DRIVER_SOURCES =						\
430
		vmware/vmware_driver.c vmware/vmware_driver.h	\
431 432
		vmware/vmware_conf.c vmware/vmware_conf.h

433
VBOX_DRIVER_SOURCES =						\
E
Eric Blake 已提交
434 435 436 437 438 439
	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			\
440 441
	vbox/vbox_V4_0.c vbox/vbox_CAPI_v4_0.h			\
	vbox/vbox_V4_1.c vbox/vbox_CAPI_v4_1.h
442

E
Eric Blake 已提交
443
VBOX_DRIVER_EXTRA_DIST =					\
444 445 446
		vbox/vbox_tmpl.c vbox/README			\
		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
447

O
Osier Yang 已提交
448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465
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				\
466
		qemu/qemu_bridge_filter.h
R
Richard W.M. Jones 已提交
467

O
Osier Yang 已提交
468
XENAPI_DRIVER_SOURCES =						\
469
		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
O
Osier Yang 已提交
470
		xenapi/xenapi_driver_private.h			\
471 472
		xenapi/xenapi_utils.c xenapi/xenapi_utils.h

J
Jim Fehlig 已提交
473 474 475 476
LIBXL_DRIVER_SOURCES =						\
		libxl/libxl_conf.c libxl/libxl_conf.h		\
		libxl/libxl_driver.c libxl/libxl_driver.h

477
UML_DRIVER_SOURCES =						\
D
Daniel P. Berrange 已提交
478 479
		uml/uml_conf.c uml/uml_conf.h			\
		uml/uml_driver.c uml/uml_driver.h
480

O
Osier Yang 已提交
481 482 483 484 485 486 487
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	\
488
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
489 490 491 492
		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		\
493
		esx/esx_vi_types.c esx/esx_vi_types.h
494

495
ESX_DRIVER_GENERATED =							\
496 497
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
498
		esx/esx_vi_methods.generated.macro			\
499 500 501 502 503
		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			\
504 505 506
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
507

O
Osier Yang 已提交
508
ESX_DRIVER_EXTRA_DIST =							\
509 510 511 512 513
		esx/README						\
		esx/esx_vi_generator.input				\
		esx/esx_vi_generator.py					\
		$(ESX_DRIVER_GENERATED)

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

547
NETWORK_DRIVER_SOURCES =					\
548
		network/bridge_driver.h network/bridge_driver.c
549

550
INTERFACE_DRIVER_SOURCES =					\
551
		interface/netcf_driver.h interface/netcf_driver.c
552

553
SECRET_DRIVER_SOURCES =						\
554
		secret/secret_driver.h secret/secret_driver.c
555

556
# Storage backend specific impls
O
Osier Yang 已提交
557 558
STORAGE_DRIVER_SOURCES =						\
		storage/storage_driver.h storage/storage_driver.c	\
559
		storage/storage_backend.h storage/storage_backend.c
560 561

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

564
STORAGE_DRIVER_LVM_SOURCES =					\
O
Osier Yang 已提交
565
		storage/storage_backend_logical.h		\
566
		storage/storage_backend_logical.c
567 568

STORAGE_DRIVER_ISCSI_SOURCES =					\
569
		storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
570

571
STORAGE_DRIVER_SCSI_SOURCES =					\
572
		storage/storage_backend_scsi.h storage/storage_backend_scsi.c
573

D
Dave Allan 已提交
574
STORAGE_DRIVER_MPATH_SOURCES =					\
575
		storage/storage_backend_mpath.h storage/storage_backend_mpath.c
D
Dave Allan 已提交
576

577
STORAGE_DRIVER_DISK_SOURCES =					\
578
		storage/storage_backend_disk.h storage/storage_backend_disk.c
579

580 581 582
STORAGE_DRIVER_RBD_SOURCES =					\
		storage/storage_backend_rbd.h storage/storage_backend_rbd.c

583 584 585
STORAGE_DRIVER_SHEEPDOG_SOURCES =				\
		storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c

586
STORAGE_HELPER_DISK_SOURCES =					\
587
		storage/parthelper.c
588

589 590 591
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

592
# Network filters
O
Osier Yang 已提交
593
NWFILTER_DRIVER_SOURCES =						\
594
		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
595 596
		nwfilter/nwfilter_gentech_driver.c			\
		nwfilter/nwfilter_gentech_driver.h			\
S
Stefan Berger 已提交
597 598
		nwfilter/nwfilter_dhcpsnoop.c				\
		nwfilter/nwfilter_dhcpsnoop.h				\
599
		nwfilter/nwfilter_ebiptables_driver.c			\
600 601 602
		nwfilter/nwfilter_ebiptables_driver.h			\
		nwfilter/nwfilter_learnipaddr.c				\
		nwfilter/nwfilter_learnipaddr.h
603

604

605
# Security framework and drivers for various models
O
Osier Yang 已提交
606 607 608 609 610
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		\
611
		security/security_manager.h security/security_manager.c
612

613
SECURITY_DRIVER_SELINUX_SOURCES =				\
614
		security/security_selinux.h security/security_selinux.c
615

J
Jamie Strandboge 已提交
616 617 618
SECURITY_DRIVER_APPARMOR_SOURCES =				\
		security/security_apparmor.h security/security_apparmor.c

619

620
NODE_DEVICE_DRIVER_SOURCES =					\
O
Osier Yang 已提交
621 622
		node_device/node_device_driver.c		\
		node_device/node_device_driver.h		\
623
		node_device/node_device_linux_sysfs.c
624 625

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
626
		node_device/node_device_hal.c			\
627
		node_device/node_device_hal.h
628

629
NODE_DEVICE_DRIVER_UDEV_SOURCES =				\
D
Daniel Veillard 已提交
630 631
		node_device/node_device_udev.c			\
		node_device/node_device_udev.h
632

J
Jiri Denemark 已提交
633 634 635 636
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 已提交
637
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
638
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
639 640
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
		cpu/cpu_powerpc.c
641

642 643 644
VMX_SOURCES =							\
		vmx/vmx.c vmx/vmx.h

645 646
XENXS_SOURCES =							\
		xenxs/xenxs_private.h				\
647 648
		xenxs/xen_sxpr.c xenxs/xen_sxpr.h		\
		xenxs/xen_xm.c xenxs/xen_xm.h
649

J
Jiri Denemark 已提交
650 651
pkgdata_DATA =	cpu/cpu_map.xml

E
Eric Blake 已提交
652
EXTRA_DIST +=	$(pkgdata_DATA)
653

654 655 656 657 658 659
#########################
#
# Build up list of libvirt.la source files based on configure conditions
#
# First deal with sources usable in non-daemon context

660
noinst_LTLIBRARIES = libvirt_util.la
661 662
libvirt_la_LIBADD = $(libvirt_la_BUILT_LIBADD)
libvirt_la_BUILT_LIBADD = libvirt_util.la
663 664
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)
665
libvirt_util_la_CFLAGS = $(CAPNG_CFLAGS) $(YAJL_CFLAGS) $(LIBNL_CFLAGS) \
666
		$(AM_CFLAGS) $(AUDIT_CFLAGS) $(DEVMAPPER_CFLAGS) \
E
Eric Blake 已提交
667
		$(DBUS_CFLAGS) $(LDEXP_LIBM)
668
libvirt_util_la_LIBADD = $(CAPNG_LIBS) $(YAJL_LIBS) $(LIBNL_LIBS) \
669
		$(THREAD_LIBS) $(AUDIT_LIBS) $(DEVMAPPER_LIBS) \
670
		$(RT_LIBS) $(DBUS_LIBS) $(MSCOM_LIBS) $(LIBXML_LIBS)
671

672 673

noinst_LTLIBRARIES += libvirt_conf.la
674
libvirt_la_BUILT_LIBADD += libvirt_conf.la
675
libvirt_conf_la_SOURCES = $(CONF_SOURCES)
676 677
libvirt_conf_la_CFLAGS = $(AM_CFLAGS)
libvirt_conf_la_LDFLAGS = $(AM_LDFLAGS)
678

J
Jiri Denemark 已提交
679
noinst_LTLIBRARIES += libvirt_cpu.la
680
libvirt_la_BUILT_LIBADD += libvirt_cpu.la
J
Jiri Denemark 已提交
681
libvirt_cpu_la_CFLAGS = \
682
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
J
Jiri Denemark 已提交
683 684
libvirt_cpu_la_SOURCES = $(CPU_SOURCES)

685 686 687 688
if WITH_VMX
noinst_LTLIBRARIES += libvirt_vmx.la
libvirt_la_BUILT_LIBADD += libvirt_vmx.la
libvirt_vmx_la_CFLAGS = \
689
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
690 691 692
libvirt_vmx_la_SOURCES = $(VMX_SOURCES)
endif

693
if WITH_XENXS
694 695 696
noinst_LTLIBRARIES += libvirt_xenxs.la
libvirt_la_BUILT_LIBADD += libvirt_xenxs.la
libvirt_xenxs_la_CFLAGS = \
697
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
698 699 700
libvirt_xenxs_la_SOURCES = $(XENXS_SOURCES)
endif

701

702
noinst_LTLIBRARIES += libvirt_driver.la
703
libvirt_la_BUILT_LIBADD += libvirt_driver.la
704
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
705

M
Matthias Bolte 已提交
706
libvirt_driver_la_CFLAGS = $(NUMACTL_CFLAGS) $(GNUTLS_CFLAGS) \
707
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
708
libvirt_driver_la_LIBADD = $(NUMACTL_LIBS) $(GNUTLS_LIBS) $(DLOPEN_LIBS)
709

710
USED_SYM_FILES = libvirt_private.syms
711

712
if WITH_TEST
713
noinst_LTLIBRARIES += libvirt_driver_test.la
714
libvirt_la_BUILT_LIBADD += libvirt_driver_test.la
715
libvirt_driver_test_la_CFLAGS = \
716
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
717
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
718 719 720
endif

if WITH_REMOTE
721
noinst_LTLIBRARIES += libvirt_driver_remote.la
722
libvirt_la_BUILT_LIBADD += libvirt_driver_remote.la
723 724
libvirt_driver_remote_la_CFLAGS =				\
		$(GNUTLS_CFLAGS)				\
E
Eric Blake 已提交
725
		$(XDR_CFLAGS)					\
726 727
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/rpc				\
728 729
		$(AM_CFLAGS)
libvirt_driver_remote_la_LDFLAGS = $(AM_LDFLAGS)
730 731 732 733
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) \
                libvirt-net-rpc-client.la \
                libvirt-net-rpc-server.la \
                libvirt-net-rpc.la
734
libvirt_driver_remote_la_SOURCES = $(REMOTE_DRIVER_SOURCES)
735

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

738 739
endif WITH_REMOTE

740
%protocol.c: %protocol.x %protocol.h $(srcdir)/rpc/genprotocol.pl
741
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -c \
E
Eric Blake 已提交
742
	       $< $@
743

744
%protocol.h: %protocol.x $(srcdir)/rpc/genprotocol.pl
745
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -h \
E
Eric Blake 已提交
746
	       $< $@
747

748
if WITH_XEN
E
Eric Blake 已提交
749 750 751
noinst_LTLIBRARIES += libvirt_driver_xen_impl.la
libvirt_driver_xen_la_SOURCES =
libvirt_driver_xen_la_LIBADD = libvirt_driver_xen_impl.la
752 753
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_xen.la
E
Eric Blake 已提交
754 755
libvirt_driver_xen_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_xen_la_LDFLAGS = -module -avoid-version
756
else
757
noinst_LTLIBRARIES += libvirt_driver_xen.la
758 759
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_xen.la
760
endif
E
Eric Blake 已提交
761 762

libvirt_driver_xen_impl_la_CFLAGS =					\
763
		$(XEN_CFLAGS)					\
764 765
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
766
		$(AM_CFLAGS)
E
Eric Blake 已提交
767 768 769
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)
770 771
endif

772 773
if WITH_PHYP
noinst_LTLIBRARIES += libvirt_driver_phyp.la
774
libvirt_la_BUILT_LIBADD += libvirt_driver_phyp.la
775
libvirt_driver_phyp_la_LIBADD = $(LIBSSH2_LIBS)
776
libvirt_driver_phyp_la_CFLAGS = $(LIBSSH2_CFLAGS) \
777
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
778 779 780
libvirt_driver_phyp_la_SOURCES = $(PHYP_DRIVER_SOURCES)
endif

781
if WITH_OPENVZ
782
noinst_LTLIBRARIES += libvirt_driver_openvz.la
783
libvirt_la_BUILT_LIBADD += libvirt_driver_openvz.la
784
libvirt_driver_openvz_la_CFLAGS = \
785
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
786
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
787 788
endif

789 790 791 792
if WITH_VMWARE
noinst_LTLIBRARIES += libvirt_driver_vmware.la
libvirt_la_BUILT_LIBADD += libvirt_driver_vmware.la
libvirt_driver_vmware_la_CFLAGS = \
793
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
794 795 796
libvirt_driver_vmware_la_SOURCES = $(VMWARE_DRIVER_SOURCES)
endif

797 798
if WITH_VBOX
noinst_LTLIBRARIES += libvirt_driver_vbox.la
799
libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
800
libvirt_driver_vbox_la_CFLAGS = \
801
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
802
libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
803 804 805
libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif

806 807
if WITH_XENAPI
noinst_LTLIBRARIES += libvirt_driver_xenapi.la
808
libvirt_la_BUILT_LIBADD += libvirt_driver_xenapi.la
809
libvirt_driver_xenapi_la_CFLAGS = $(LIBXENSERVER_CFLAGS) $(LIBCURL_CFLAGS) \
810
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
811
libvirt_driver_xenapi_la_LDFLAGS = $(AM_LDFLAGS)
812
libvirt_driver_xenapi_la_LIBADD = $(LIBXENSERVER_LIBS) $(LIBCURL_LIBS)
813 814 815
libvirt_driver_xenapi_la_SOURCES = $(XENAPI_DRIVER_SOURCES)
endif

J
Jim Fehlig 已提交
816
if WITH_LIBXL
E
Eric Blake 已提交
817 818 819
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 已提交
820 821
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
822 823
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
824 825 826 827 828
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 已提交
829 830

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
831 832
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
833
		$(AM_CFLAGS)
E
Eric Blake 已提交
834 835 836
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 已提交
837 838
endif

839
if WITH_QEMU
E
Eric Blake 已提交
840 841 842
noinst_LTLIBRARIES += libvirt_driver_qemu_impl.la
libvirt_driver_qemu_la_SOURCES =
libvirt_driver_qemu_la_LIBADD = libvirt_driver_qemu_impl.la
843 844
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_qemu.la
E
Eric Blake 已提交
845 846
libvirt_driver_qemu_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_qemu_la_LDFLAGS = -module -avoid-version
847
else
848
noinst_LTLIBRARIES += libvirt_driver_qemu.la
849
# Stateful, so linked to daemon instead
850
#libvirt_la_BUILT_LIBADD += libvirt_driver_qemu.la
851
endif
E
Eric Blake 已提交
852 853

libvirt_driver_qemu_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
854
                                $(GNUTLS_CFLAGS) \
S
Serge Hallyn 已提交
855
                                $(LIBNL_CFLAGS) \
856
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
857 858
libvirt_driver_qemu_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_qemu_impl_la_LIBADD = $(NUMACTL_LIBS) \
859 860
				$(CAPNG_LIBS) \
                                $(GNUTLS_LIBS) \
S
Serge Hallyn 已提交
861
				$(LIBNL_LIBS)
E
Eric Blake 已提交
862
libvirt_driver_qemu_impl_la_SOURCES = $(QEMU_DRIVER_SOURCES)
863

A
Amy Griffis 已提交
864
conf_DATA += qemu/qemu.conf
865

866
augeas_DATA += qemu/libvirtd_qemu.aug
867 868
augeastest_DATA += test_libvirtd_qemu.aug
CLEANFILES += test_libvirtd_qemu.aug
869

870
endif
871
EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug \
872
		qemu/test_libvirtd_qemu.aug.in qemu/THREADS.txt
873

874 875

if WITH_LXC
E
Eric Blake 已提交
876 877 878
noinst_LTLIBRARIES += libvirt_driver_lxc_impl.la
libvirt_driver_lxc_la_SOURCES =
libvirt_driver_lxc_la_LIBADD = libvirt_driver_lxc_impl.la
879 880
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_lxc.la
E
Eric Blake 已提交
881 882
libvirt_driver_lxc_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_lxc_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
883
else
884
noinst_LTLIBRARIES += libvirt_driver_lxc.la
885
# Stateful, so linked to daemon instead
886
#libvirt_la_BUILT_LIBADD += libvirt_driver_lxc.la
887
endif
E
Eric Blake 已提交
888 889

libvirt_driver_lxc_impl_la_CFLAGS = \
S
Serge Hallyn 已提交
890
		$(LIBNL_CFLAGS) \
891
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
892
libvirt_driver_lxc_impl_la_LIBADD = $(CAPNG_LIBS) $(LIBNL_LIBS)
893
if HAVE_LIBBLKID
E
Eric Blake 已提交
894 895
libvirt_driver_lxc_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_lxc_impl_la_LIBADD += $(BLKID_LIBS)
896
endif
897
if WITH_SECDRIVER_SELINUX
E
Eric Blake 已提交
898
libvirt_driver_lxc_impl_la_LIBADD += $(SELINUX_LIBS)
899 900
endif
if WITH_SECDRIVER_APPARMOR
E
Eric Blake 已提交
901
libvirt_driver_lxc_impl_la_LIBADD += $(APPARMOR_LIBS)
902
endif
E
Eric Blake 已提交
903
libvirt_driver_lxc_impl_la_SOURCES = $(LXC_DRIVER_SOURCES)
A
Amy Griffis 已提交
904 905 906

conf_DATA += lxc/lxc.conf

907
augeas_DATA += lxc/libvirtd_lxc.aug
908 909
augeastest_DATA += test_libvirtd_lxc.aug
CLEANFILES += test_libvirtd_lxc.aug
910

911
endif
912
EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug.in
913

914
if WITH_UML
E
Eric Blake 已提交
915 916 917
noinst_LTLIBRARIES += libvirt_driver_uml_impl.la
libvirt_driver_uml_la_SOURCES =
libvirt_driver_uml_la_LIBADD = libvirt_driver_uml_impl.la
918 919
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_uml.la
E
Eric Blake 已提交
920 921
libvirt_driver_uml_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_uml_la_LDFLAGS = -module -avoid-version
922
else
923 924
noinst_LTLIBRARIES += libvirt_driver_uml.la
# Stateful, so linked to daemon instead
925
#libvirt_la_BUILT_LIBADD += libvirt_driver_uml.la
926
endif
E
Eric Blake 已提交
927 928

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
929
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
930 931 932
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)
933
endif
934

D
Daniel Veillard 已提交
935

936
BUILT_SOURCES += $(ESX_DRIVER_GENERATED)
D
Daniel Veillard 已提交
937

938 939
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

E
Eric Blake 已提交
940 941
EXTRA_DIST += $(ESX_GENERATED_STAMP)

942 943 944
$(ESX_DRIVER_GENERATED): $(ESX_GENERATED_STAMP)

$(ESX_GENERATED_STAMP): $(srcdir)/esx/esx_vi_generator.input \
945
                         $(srcdir)/esx/esx_vi_generator.py
946 947 948 949 950
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/esx/esx_vi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
951

952 953
if WITH_ESX
noinst_LTLIBRARIES += libvirt_driver_esx.la
954
libvirt_la_BUILT_LIBADD += libvirt_driver_esx.la
955
libvirt_driver_esx_la_CFLAGS = $(LIBCURL_CFLAGS) \
956
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
957
libvirt_driver_esx_la_LDFLAGS = $(AM_LDFLAGS)
958
libvirt_driver_esx_la_LIBADD = $(LIBCURL_LIBS)
959
libvirt_driver_esx_la_SOURCES = $(ESX_DRIVER_SOURCES)
960
libvirt_driver_esx_la_DEPENDENCIES = $(ESX_DRIVER_GENERATED)
961 962
endif

M
Matthias Bolte 已提交
963

964 965
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

966 967
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

E
Eric Blake 已提交
968 969
EXTRA_DIST += $(HYPERV_GENERATED_STAMP)

970 971 972
$(HYPERV_DRIVER_GENERATED): $(HYPERV_GENERATED_STAMP)

$(HYPERV_GENERATED_STAMP): $(srcdir)/hyperv/hyperv_wmi_generator.input \
973
                            $(srcdir)/hyperv/hyperv_wmi_generator.py
974 975 976 977
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/hyperv/hyperv_wmi_generator.py \
	  && touch $@

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

M
Matthias Bolte 已提交
979 980 981 982
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
983
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
984 985 986 987 988
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 已提交
989 990 991 992 993 994 995 996
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

997
if WITH_NETWORK
E
Eric Blake 已提交
998 999 1000
noinst_LTLIBRARIES += libvirt_driver_network_impl.la
libvirt_driver_network_la_SOURCES =
libvirt_driver_network_la_LIBADD = libvirt_driver_network_impl.la
1001 1002
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_network.la
1003
libvirt_driver_network_la_LIBADD += ../gnulib/lib/libgnu.la $(LIBNL_LIBS) $(DBUS_LIBS)
E
Eric Blake 已提交
1004
libvirt_driver_network_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1005
else
1006
noinst_LTLIBRARIES += libvirt_driver_network.la
1007
# Stateful, so linked to daemon instead
1008
#libvirt_la_BUILT_LIBADD += libvirt_driver_network.la
1009
endif
E
Eric Blake 已提交
1010 1011

libvirt_driver_network_impl_la_CFLAGS = \
1012
		$(LIBNL_CFLAGS) $(DBUS_CFLAGS) \
1013
		-I$(top_srcdir)/src/conf $(AM_CFLAGS) $(DBUS_CFLAGS)
E
Eric Blake 已提交
1014
libvirt_driver_network_impl_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
1015
endif
1016 1017 1018
EXTRA_DIST += network/default.xml


D
Daniel Veillard 已提交
1019
if WITH_NETCF
1020 1021 1022 1023
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_interface.la
else
noinst_LTLIBRARIES += libvirt_driver_interface.la
1024 1025
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_interface.la
1026
endif
1027
libvirt_driver_interface_la_CFLAGS = $(NETCF_CFLAGS) \
1028
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1029
libvirt_driver_interface_la_LDFLAGS = $(AM_LDFLAGS)
1030
libvirt_driver_interface_la_LIBADD = $(NETCF_LIBS)
1031
if WITH_DRIVER_MODULES
1032
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
1033 1034 1035
libvirt_driver_interface_la_LDFLAGS += -module -avoid-version
endif
libvirt_driver_interface_la_SOURCES = $(INTERFACE_DRIVER_SOURCES)
D
Daniel Veillard 已提交
1036 1037
endif

D
Daniel P. Berrange 已提交
1038
if WITH_SECRETS
1039 1040 1041 1042
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_secret.la
else
noinst_LTLIBRARIES += libvirt_driver_secret.la
1043
# Stateful, so linked to daemon instead
1044
#libvirt_la_BUILT_LIBADD += libvirt_driver_secret.la
1045
endif
1046
libvirt_driver_secret_la_CFLAGS = \
1047
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1048
if WITH_DRIVER_MODULES
1049
libvirt_driver_secret_la_LIBADD = ../gnulib/lib/libgnu.la
1050
libvirt_driver_secret_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1051 1052
endif
libvirt_driver_secret_la_SOURCES = $(SECRET_DRIVER_SOURCES)
D
Daniel P. Berrange 已提交
1053
endif
1054

1055
# Needed to keep automake quiet about conditionals
1056 1057
libvirt_driver_storage_impl_la_SOURCES =
libvirt_driver_storage_impl_la_CFLAGS = \
1058
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1059 1060
libvirt_driver_storage_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_storage_impl_la_LIBADD =
1061
if WITH_SECDRIVER_SELINUX
1062
libvirt_driver_storage_impl_la_LIBADD += $(SELINUX_LIBS)
1063 1064
endif
if WITH_SECDRIVER_APPARMOR
1065
libvirt_driver_storage_impl_la_LIBADD += $(APPARMOR_LIBS)
1066
endif
O
Osier Yang 已提交
1067
if HAVE_LIBBLKID
1068 1069
libvirt_driver_storage_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_storage_impl_la_LIBADD += $(BLKID_LIBS)
O
Osier Yang 已提交
1070
endif
1071
if WITH_STORAGE
1072 1073 1074
noinst_LTLIBRARIES += libvirt_driver_storage_impl.la
libvirt_driver_storage_la_SOURCES =
libvirt_driver_storage_la_LIBADD = libvirt_driver_storage_impl.la
1075 1076
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_storage.la
1077 1078
libvirt_driver_storage_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_storage_la_LDFOAGS = -module -avoid-version
1079
else
1080
noinst_LTLIBRARIES += libvirt_driver_storage.la
1081
# Stateful, so linked to daemon instead
1082
#libvirt_la_BUILT_LIBADD += libvirt_driver_storage.la
1083
endif
1084 1085
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_FS_SOURCES)
1086 1087
endif

1088
if WITH_STORAGE_LVM
1089
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
1090 1091
endif

1092
if WITH_STORAGE_ISCSI
1093
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
1094 1095
endif

1096
if WITH_STORAGE_SCSI
1097
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SCSI_SOURCES)
1098 1099
endif

D
Dave Allan 已提交
1100
if WITH_STORAGE_MPATH
1101 1102 1103
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 已提交
1104 1105
endif

1106
if WITH_STORAGE_DISK
1107
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
1108
endif
1109

1110
if WITH_STORAGE_RBD
1111 1112
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_RBD_SOURCES)
libvirt_driver_storage_impl_la_LIBADD += $(LIBRBD_LIBS)
1113 1114
endif

1115
if WITH_STORAGE_SHEEPDOG
1116
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
1117 1118
endif

1119 1120 1121 1122 1123 1124 1125
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
1126
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1127 1128 1129
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

1130
libvirt_driver_nodedev_la_CFLAGS = \
1131
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1132
libvirt_driver_nodedev_la_LDFLAGS = $(AM_LDFLAGS)
1133
libvirt_driver_nodedev_la_LIBADD =
1134

1135 1136 1137
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
1138
libvirt_driver_nodedev_la_LIBADD += $(HAL_LIBS)
1139
endif
1140 1141
if HAVE_UDEV
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_UDEV_SOURCES)
1142
libvirt_driver_nodedev_la_CFLAGS += $(UDEV_CFLAGS) $(PCIACCESS_CFLAGS)
1143
libvirt_driver_nodedev_la_LIBADD += $(UDEV_LIBS) $(PCIACCESS_LIBS)
1144
endif
1145 1146

if WITH_DRIVER_MODULES
1147
libvirt_driver_nodedev_la_LIBADD += ../gnulib/lib/libgnu.la
1148 1149 1150 1151 1152
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


1153 1154 1155 1156 1157
if WITH_NWFILTER
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_nwfilter.la
else
noinst_LTLIBRARIES += libvirt_driver_nwfilter.la
1158 1159
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_nwfilter.la
1160
endif
1161
libvirt_driver_nwfilter_la_CFLAGS = $(LIBPCAP_CFLAGS) \
1162
		-I$(top_srcdir)/src/conf $(LIBNL_CFLAGS) $(AM_CFLAGS) $(DBUS_CFLAGS)
1163
libvirt_driver_nwfilter_la_LDFLAGS = $(LD_AMFLAGS)
1164
libvirt_driver_nwfilter_la_LIBADD = $(LIBPCAP_LIBS) $(LIBNL_LIBS) $(DBUS_LIBS)
1165
if WITH_DRIVER_MODULES
1166
libvirt_driver_nwfilter_la_LIBADD += ../gnulib/lib/libgnu.la
1167
libvirt_driver_nwfilter_la_LDFLAGS += -module -avoid-version
1168 1169 1170 1171 1172
endif
libvirt_driver_nwfilter_la_SOURCES = $(NWFILTER_DRIVER_SOURCES)
endif


1173 1174 1175 1176
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 = \
1177
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1178 1179
libvirt_security_manager_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_security_manager_la_LIBADD =
1180
if WITH_SECDRIVER_SELINUX
1181 1182 1183
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
libvirt_security_manager_la_CFLAGS += $(SELINUX_CFLAGS)
libvirt_security_manager_la_LIBADD += $(SELINUX_LIBS)
1184
endif
J
Jamie Strandboge 已提交
1185
if WITH_SECDRIVER_APPARMOR
1186 1187 1188
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 已提交
1189
endif
1190

1191 1192 1193 1194 1195 1196 1197
# Add all conditional sources just in case...
EXTRA_DIST +=							\
		$(TEST_DRIVER_SOURCES)				\
		$(REMOTE_DRIVER_SOURCES)			\
		$(XEN_DRIVER_SOURCES)				\
		$(QEMU_DRIVER_SOURCES)				\
		$(LXC_DRIVER_SOURCES)				\
1198
		$(UML_DRIVER_SOURCES)				\
1199
		$(OPENVZ_DRIVER_SOURCES)			\
1200
		$(PHYP_DRIVER_SOURCES)				\
1201
		$(VBOX_DRIVER_SOURCES)				\
1202
		$(XENAPI_DRIVER_SOURCES)			\
O
Osier Yang 已提交
1203
		$(LIBXL_DRIVER_SOURCES)				\
1204
		$(ESX_DRIVER_SOURCES)				\
1205
		$(ESX_DRIVER_EXTRA_DIST)			\
M
Matthias Bolte 已提交
1206
		$(HYPERV_DRIVER_SOURCES)			\
1207
		$(HYPERV_DRIVER_EXTRA_DIST)			\
O
Osier Yang 已提交
1208
		$(PARALLELS_DRIVER_SOURCES)			\
1209
		$(NETWORK_DRIVER_SOURCES)			\
1210
		$(INTERFACE_DRIVER_SOURCES)			\
1211 1212 1213 1214
		$(STORAGE_DRIVER_SOURCES)			\
		$(STORAGE_DRIVER_FS_SOURCES)			\
		$(STORAGE_DRIVER_LVM_SOURCES)			\
		$(STORAGE_DRIVER_ISCSI_SOURCES)			\
1215
		$(STORAGE_DRIVER_SCSI_SOURCES)			\
D
Dave Allan 已提交
1216
		$(STORAGE_DRIVER_MPATH_SOURCES)			\
1217
		$(STORAGE_DRIVER_DISK_SOURCES)			\
1218
		$(STORAGE_DRIVER_RBD_SOURCES)			\
1219
		$(STORAGE_DRIVER_SHEEPDOG_SOURCES)		\
1220 1221
		$(NODE_DEVICE_DRIVER_SOURCES)			\
		$(NODE_DEVICE_DRIVER_HAL_SOURCES)		\
1222
		$(NODE_DEVICE_DRIVER_UDEV_SOURCES)		\
1223
		$(NWFILTER_DRIVER_SOURCES)			\
1224
		$(SECURITY_DRIVER_SELINUX_SOURCES)		\
J
Jamie Strandboge 已提交
1225
		$(SECURITY_DRIVER_APPARMOR_SOURCES)		\
D
Daniel P. Berrange 已提交
1226
		$(SECRET_DRIVER_SOURCES)			\
1227
		$(VBOX_DRIVER_EXTRA_DIST)			\
1228 1229
		$(VMWARE_DRIVER_SOURCES)			\
		$(XENXS_SOURCES)
1230

1231 1232 1233 1234 1235 1236
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

1237
AUG_GENTEST = $(PERL) $(top_srcdir)/build-aux/augeas-gentest.pl
1238
EXTRA_DIST += $(top_srcdir)/build-aux/augeas-gentest.pl
1239

1240
if WITH_QEMU
1241 1242
test_libvirtd_qemu.aug: qemu/test_libvirtd_qemu.aug.in \
		$(srcdir)/qemu/qemu.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1243
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/qemu/qemu.conf $< $@
1244

1245
check-augeas-qemu: test_libvirtd_qemu.aug
1246
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1247
	    '$(AUGPARSE)' -I $(srcdir)/qemu test_libvirtd_qemu.aug; \
1248
	fi
1249 1250
else
check-augeas-qemu:
1251
endif
1252

1253
if WITH_LXC
1254 1255
test_libvirtd_lxc.aug: lxc/test_libvirtd_lxc.aug.in \
		$(srcdir)/lxc/lxc.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1256
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/lxc/lxc.conf $< $@
1257

1258
check-augeas-lxc: test_libvirtd_lxc.aug
1259
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1260
	    '$(AUGPARSE)' -I $(srcdir)/lxc test_libvirtd_lxc.aug; \
1261
	fi
1262 1263
else
check-augeas-lxc:
1264
endif
1265

1266
if HAVE_SANLOCK
1267 1268
test_libvirt_sanlock.aug: locking/test_libvirt_sanlock.aug.in \
		locking/qemu-sanlock.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1269
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-sanlock.conf $< $@
1270

1271
check-augeas-sanlock: test_libvirt_sanlock.aug
1272
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1273
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_sanlock.aug; \
1274
	fi
1275 1276 1277
else
check-augeas-sanlock:
endif
1278

1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297
#
# 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.
#

1298
if WITH_DRIVER_MODULES
1299
USED_SYM_FILES += libvirt_driver_modules.syms
1300
endif
1301

1302
if WITH_LINUX
1303
USED_SYM_FILES += libvirt_linux.syms
1304
endif
1305

1306 1307 1308 1309
if WITH_ESX
USED_SYM_FILES += libvirt_esx.syms
endif

1310 1311 1312 1313
if WITH_LIBVIRTD
USED_SYM_FILES += libvirt_daemon.syms
endif

1314 1315 1316 1317
if WITH_OPENVZ
USED_SYM_FILES += libvirt_openvz.syms
endif

1318 1319 1320 1321
if WITH_VMX
USED_SYM_FILES += libvirt_vmx.syms
endif

1322 1323 1324 1325
if WITH_XENXS
USED_SYM_FILES += libvirt_xenxs.syms
endif

E
Eric Blake 已提交
1326 1327 1328 1329
if HAVE_SASL
USED_SYM_FILES += libvirt_sasl.syms
endif

1330 1331 1332 1333
if HAVE_LIBSSH2
USED_SYM_FILES += libvirt_libssh2.syms
endif

1334 1335 1336 1337
if WITH_ATOMIC_OPS_PTHREAD
USED_SYM_FILES += libvirt_atomic.syms
endif

1338 1339 1340
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
1341
  libvirt_atomic.syms		\
1342
  libvirt_driver_modules.syms	\
E
Eric Blake 已提交
1343
  libvirt_daemon.syms		\
1344
  libvirt_linux.syms		\
1345 1346 1347
  libvirt_esx.syms		\
  libvirt_openvz.syms		\
  libvirt_qemu.syms		\
E
Eric Blake 已提交
1348
  libvirt_sasl.syms		\
1349
  libvirt_vmx.syms		\
1350 1351
  libvirt_xenxs.syms	\
  libvirt_libssh2.syms
1352

1353 1354 1355
GENERATED_SYM_FILES = libvirt.syms libvirt.def libvirt_qemu.def

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1356

1357 1358
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
		$(top_builddir)/config.status
1359 1360 1361 1362 1363 1364
	$(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 && \
1365
	for file in $(USED_SYM_FILES); do \
1366
	    cat $(srcdir)/$$file >>$@-tmp; \
1367 1368 1369
	done && \
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
	chmod a-w $@-tmp && \
1370
	mv $@-tmp libvirt.syms
1371

1372 1373 1374
libvirt.def: libvirt.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1375
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1376 1377 1378
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt.def

1379 1380 1381
libvirt_qemu.def: $(srcdir)/libvirt_qemu.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1382
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1383 1384 1385
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt_qemu.def

1386 1387
# Empty source list - it merely links a bunch of convenience libs together
libvirt_la_SOURCES =
1388
libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_SYMBOL_FILE) \
E
Eric Blake 已提交
1389
		     -version-info $(LIBVIRT_VERSION_INFO) \
1390
		    $(LIBVIRT_NODELETE) $(AM_LDFLAGS) \
1391
		    $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS)
1392
libvirt_la_BUILT_LIBADD += ../gnulib/lib/libgnu.la
1393
libvirt_la_LIBADD += \
1394
		    $(DRIVER_MODULE_LIBS) \
1395
		    $(CYGWIN_EXTRA_LIBADD)
1396
libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS)
1397 1398 1399 1400 1401 1402
# 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)
1403

1404
if WITH_DTRACE_PROBES
1405
libvirt_la_BUILT_LIBADD += libvirt_probes.lo
1406
libvirt_la_DEPENDENCIES += libvirt_probes.lo libvirt_probes.o
1407
nodist_libvirt_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1408
if WITH_REMOTE
E
Eric Blake 已提交
1409
nodist_libvirt_driver_remote_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1410
endif WITH_REMOTE
1411 1412 1413
if WITH_DRIVER_MODULES
DTRACE2SYSTEMTAP_FLAGS = --with-modules
endif
1414

1415 1416 1417
BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp

if WITH_QEMU
1418
libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo
1419
nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h
1420
BUILT_SOURCES += libvirt_qemu_probes.h
1421
endif
1422 1423

tapsetdir = $(datadir)/systemtap/tapset
1424
tapset_DATA = libvirt_probes.stp libvirt_qemu_probes.stp libvirt_functions.stp
1425

1426
%_probes.h: %_probes.d
1427 1428
	$(AM_V_GEN)$(DTRACE) -o $@ -h -s $<

E
Eric Blake 已提交
1429
.PRECIOUS: %_probes.o
1430
%_probes.o: %_probes.d
1431 1432
	$(AM_V_GEN)$(DTRACE) -o $@ -G -s $<

1433 1434 1435 1436 1437 1438 1439 1440 1441
%_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 已提交
1442 1443 1444 1445
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1446 1447

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

1450
%_probes.stp: %_probes.d $(srcdir)/dtrace2systemtap.pl $(top_builddir)/config.status
1451
	$(AM_V_GEN)$(PERL) -w $(srcdir)/dtrace2systemtap.pl \
1452
	  $(DTRACE2SYSTEMTAP_FLAGS) $(bindir) $(sbindir) $(libdir) $< > $@
1453

1454
CLEANFILES += libvirt_probes.h libvirt_probes.o libvirt_probes.lo \
1455
              libvirt_qemu_probes.h libvirt_qemu_probes.o \
1456
              libvirt_qemu_probes.lo\
1457 1458
              libvirt_functions.stp libvirt_probes.stp \
              libvirt_qemu_probes.stp
1459 1460
endif

1461
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1462

C
Chris Lalancette 已提交
1463 1464
libvirt_qemu_la_SOURCES = libvirt-qemu.c
libvirt_qemu_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
E
Eric Blake 已提交
1465 1466
			  -version-info $(LIBVIRT_VERSION_INFO) \
			  $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS) \
1467 1468
			  $(AM_LDFLAGS)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
C
Chris Lalancette 已提交
1469
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
E
Eric Blake 已提交
1470
EXTRA_DIST += $(LIBVIRT_QEMU_SYMBOL_FILE)
1471

1472 1473 1474 1475 1476
if HAVE_SANLOCK
lockdriverdir = $(libdir)/libvirt/lock-driver
lockdriver_LTLIBRARIES = sanlock.la

sanlock_la_SOURCES = $(LOCK_DRIVER_SANLOCK_SOURCES)
1477
sanlock_la_CFLAGS = $(AM_CFLAGS)
1478
sanlock_la_LDFLAGS = -module -avoid-version
1479
sanlock_la_LIBADD = -lsanlock_client \
1480 1481 1482
		../gnulib/lib/libgnu.la

augeas_DATA += locking/libvirt_sanlock.aug
1483 1484
augeastest_DATA += test_libvirt_sanlock.aug
CLEANFILES += test_libvirt_sanlock.aug
1485

E
Eric Blake 已提交
1486
locking/%-sanlock.conf: $(srcdir)/locking/sanlock.conf
1487
	$(AM_V_GEN)$(MKDIR_P) locking ; \
1488 1489 1490
	cp $< $@

if WITH_QEMU
E
Eric Blake 已提交
1491
nodist_conf_DATA = locking/qemu-sanlock.conf
1492
BUILT_SOURCES += locking/qemu-sanlock.conf
E
Eric Blake 已提交
1493
DISTCLEANFILES += locking/qemu-sanlock.conf
1494
endif
1495
else
1496
EXTRA_DIST += $(LOCK_DRIVER_SANLOCK_SOURCES)
1497
endif
1498 1499
EXTRA_DIST += locking/sanlock.conf \
	locking/libvirt_sanlock.aug \
1500
	locking/test_libvirt_sanlock.aug.in
1501

1502 1503 1504 1505
noinst_LTLIBRARIES += \
	libvirt-net-rpc.la \
	libvirt-net-rpc-server.la \
	libvirt-net-rpc-client.la
1506

1507
EXTRA_DIST += \
E
Eric Blake 已提交
1508 1509 1510 1511
	dtrace2systemtap.pl \
	rpc/gendispatch.pl \
	rpc/genprotocol.pl \
	rpc/gensystemtap.pl \
J
Jiri Denemark 已提交
1512 1513
	rpc/virnetprotocol.x \
	rpc/virkeepaliveprotocol.x
1514

E
Eric Blake 已提交
1515 1516
VIR_NET_RPC_GENERATED = \
	$(srcdir)/rpc/virnetprotocol.h \
J
Jiri Denemark 已提交
1517 1518 1519
	$(srcdir)/rpc/virnetprotocol.c \
	$(srcdir)/rpc/virkeepaliveprotocol.h \
	$(srcdir)/rpc/virkeepaliveprotocol.c
1520

1521
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1522

1523
libvirt_net_rpc_la_SOURCES = \
1524
	rpc/virnetmessage.h rpc/virnetmessage.c \
1525
	rpc/virnetprotocol.h rpc/virnetprotocol.c \
1526
	rpc/virnetsocket.h rpc/virnetsocket.c \
J
Jiri Denemark 已提交
1527
	rpc/virnettlscontext.h rpc/virnettlscontext.c \
1528 1529
	rpc/virkeepaliveprotocol.h rpc/virkeepaliveprotocol.c \
	rpc/virkeepalive.h rpc/virkeepalive.c
1530 1531 1532 1533 1534 1535 1536
if HAVE_LIBSSH2
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
else
EXTRA_DIST += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
endif
1537 1538 1539 1540 1541 1542 1543
if HAVE_SASL
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
else
EXTRA_DIST += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
endif
1544
libvirt_net_rpc_la_CFLAGS = \
1545
			$(GNUTLS_CFLAGS) \
1546
			$(SASL_CFLAGS) \
1547
			$(LIBSSH2_CFLAGS) \
1548
			$(XDR_CFLAGS) \
1549 1550
			$(AM_CFLAGS)
libvirt_net_rpc_la_LDFLAGS = \
1551
			$(GNUTLS_LIBS) \
1552
			$(SASL_LIBS) \
1553
			$(LIBSSH2_LIBS)\
1554 1555 1556 1557 1558 1559
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1560 1561 1562 1563
libvirt_net_rpc_server_la_SOURCES = \
	rpc/virnetserverprogram.h rpc/virnetserverprogram.c \
	rpc/virnetserverservice.h rpc/virnetserverservice.c \
	rpc/virnetserverclient.h rpc/virnetserverclient.c \
1564
	rpc/virnetservermdns.h rpc/virnetservermdns.c \
1565 1566
	rpc/virnetserver.h rpc/virnetserver.c
libvirt_net_rpc_server_la_CFLAGS = \
1567
			$(AVAHI_CFLAGS) \
E
Eric Blake 已提交
1568
			$(XDR_CFLAGS) \
J
Jim Fehlig 已提交
1569 1570
			$(AM_CFLAGS) \
			$(POLKIT_CFLAGS)
1571 1572
libvirt_net_rpc_server_la_LDFLAGS = \
			$(AM_LDFLAGS) \
1573
			$(AVAHI_LIBS) \
J
Jim Fehlig 已提交
1574
			$(POLKIT_LIBS) \
1575 1576 1577 1578 1579
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_server_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1580 1581 1582 1583 1584
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 已提交
1585 1586
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1587 1588 1589 1590 1591 1592
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1593

1594 1595
libexec_PROGRAMS =

1596
if WITH_LIBVIRTD
1597 1598 1599 1600 1601 1602 1603 1604
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)
1605
endif
1606

1607
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
1608
if WITH_LIBVIRTD
1609
libexec_PROGRAMS += libvirt_parthelper
1610

1611
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
1612
libvirt_parthelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
1613 1614 1615 1616 1617
libvirt_parthelper_LDADD =		\
		$(LIBPARTED_LIBS)	\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la

1618
libvirt_parthelper_CFLAGS = $(LIBPARTED_CFLAGS) $(AM_CFLAGS)
R
Richard W.M. Jones 已提交
1619
endif
1620
endif
1621 1622
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

1623

1624 1625 1626 1627 1628 1629
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

libvirt_lxc_SOURCES =						\
		$(LXC_CONTROLLER_SOURCES)			\
O
Osier Yang 已提交
1630 1631
		$(NODE_INFO_SOURCES)				\
		$(DATATYPES_SOURCES)
1632
libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(AM_LDFLAGS)
1633 1634
libvirt_lxc_LDADD =			\
		$(NUMACTL_LIBS) \
1635 1636
		libvirt-net-rpc-server.la \
		libvirt-net-rpc.la \
1637
		libvirt_security_manager.la \
1638 1639
		libvirt_conf.la \
		libvirt_util.la \
1640
		../gnulib/lib/libgnu.la
1641
if WITH_DTRACE_PROBES
1642
libvirt_lxc_LDADD += libvirt_probes.lo
1643
endif
1644 1645 1646
if WITH_SECDRIVER_SELINUX
libvirt_lxc_LDADD += $(SELINUX_LIBS)
endif
J
Jiri Denemark 已提交
1647 1648 1649
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_LDADD += $(APPARMOR_LIBS)
endif
1650
libvirt_lxc_CFLAGS =				\
1651
		-I$(top_srcdir)/src/conf	\
1652
		$(AM_CFLAGS)
1653 1654 1655 1656
if HAVE_LIBBLKID
libvirt_lxc_CFLAGS += $(BLKID_CFLAGS)
libvirt_lxc_LDADD += $(BLKID_LIBS)
endif
1657 1658 1659
if WITH_SECDRIVER_SELINUX
libvirt_lxc_CFLAGS += $(SELINUX_CFLAGS)
endif
J
Jiri Denemark 已提交
1660 1661 1662
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_CFLAGS += $(APPARMOR_CFLAGS)
endif
1663 1664 1665 1666
endif
endif
EXTRA_DIST += $(LXC_CONTROLLER_SOURCES)

J
Jamie Strandboge 已提交
1667 1668 1669 1670 1671 1672
if WITH_SECDRIVER_APPARMOR
if WITH_LIBVIRTD
libexec_PROGRAMS += virt-aa-helper

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1673
virt_aa_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
J
Jamie Strandboge 已提交
1674
virt_aa_helper_LDADD =						\
C
Chris Lalancette 已提交
1675 1676 1677
		libvirt_conf.la					\
		libvirt_util.la					\
		../gnulib/lib/libgnu.la
1678
if WITH_DTRACE_PROBES
1679
virt_aa_helper_LDADD += libvirt_probes.lo
1680
endif
J
Jamie Strandboge 已提交
1681
virt_aa_helper_CFLAGS =						\
1682 1683
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/security			\
1684
		$(AM_CFLAGS)
J
Jamie Strandboge 已提交
1685 1686 1687 1688
endif
endif
EXTRA_DIST += $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1689
install-data-local:
1690 1691
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/images"
1692
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems"
1693
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/boot"
1694 1695 1696
if HAVE_SANLOCK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock"
endif
1697 1698 1699
if WITH_QEMU
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/qemu"
1700
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt/qemu"
1701
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/qemu"
1702 1703 1704 1705 1706
endif
if WITH_LXC
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lxc"
endif
J
Jim Fehlig 已提交
1707 1708 1709
if WITH_LIBXL
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/libxl"
J
Jim Fehlig 已提交
1710
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/libxl"
J
Jim Fehlig 已提交
1711
endif
1712 1713 1714 1715 1716 1717
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"
1718
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/dnsmasq"
1719
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/network"
1720 1721 1722 1723
	$(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 已提交
1724 1725 1726 1727 1728 1729
	  { 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; }
1730
	test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
E
Eric Blake 已提交
1731
	   ln -s ../default.xml \
1732 1733 1734 1735 1736 1737
	    $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
endif

uninstall-local::
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
1738
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
1739
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
1740 1741 1742
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
1743 1744 1745 1746 1747
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" ||:
1748
endif
1749 1750 1751 1752
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
1753 1754 1755
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1756
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1757
endif
1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770
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 已提交
1771

1772 1773
CLEANFILES += *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda *.i *.s
DISTCLEANFILES += $(GENERATED_SYM_FILES)
1774
MAINTAINERCLEANFILES += $(REMOTE_DRIVER_GENERATED) $(VIR_NET_RPC_GENERATED)