Makefile.am 58.1 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/virlockspace.c util/virlockspace.h		\
101
		util/virmacaddr.h util/virmacaddr.c		\
102
		util/virnetdev.h util/virnetdev.c		\
103
		util/virnetdevbandwidth.h util/virnetdevbandwidth.c \
104
		util/virnetdevbridge.h util/virnetdevbridge.c	\
105
		util/virnetdevmacvlan.c util/virnetdevmacvlan.h	\
A
Ansis Atteka 已提交
106
		util/virnetdevopenvswitch.h util/virnetdevopenvswitch.c \
107
		util/virnetdevtap.h util/virnetdevtap.c		\
108
		util/virnetdevveth.h util/virnetdevveth.c \
L
Laine Stump 已提交
109
		util/virnetdevvlan.h util/virnetdevvlan.c \
110
		util/virnetdevvportprofile.h util/virnetdevvportprofile.c \
111
		util/virnetlink.c util/virnetlink.h		\
112
		util/virrandom.h util/virrandom.c		\
113
		util/virsocketaddr.h util/virsocketaddr.c \
M
Martin Kletzander 已提交
114 115
		util/virtime.h util/virtime.c \
		util/viruri.h util/viruri.c
L
Lai Jiangshan 已提交
116 117 118 119

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

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

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

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

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

143 144 145
LOCK_DRIVER_SANLOCK_SOURCES = \
		locking/lock_driver_sanlock.c

146 147
LOCK_DRIVER_SANLOCK_HELPER_SOURCES = \
		locking/sanlock_helper.c
148

149 150
NETDEV_CONF_SOURCES =						\
		conf/netdev_bandwidth_conf.h conf/netdev_bandwidth_conf.c \
151 152
		conf/netdev_vport_profile_conf.h conf/netdev_vport_profile_conf.c \
		conf/netdev_vlan_conf.h conf/netdev_vlan_conf.c
153

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

DOMAIN_EVENT_SOURCES =						\
		conf/domain_event.c conf/domain_event.h
165 166

# Network driver generic impl APIs
167
NETWORK_CONF_SOURCES =						\
168
		conf/network_conf.c conf/network_conf.h
169

170 171
# Network filter driver generic impl APIs
NWFILTER_PARAM_CONF_SOURCES =					\
172
		conf/nwfilter_params.c conf/nwfilter_params.h	\
173 174
		conf/nwfilter_ipaddrmap.c			\
		conf/nwfilter_ipaddrmap.h			\
175
		conf/nwfilter_conf.h
176

177
NWFILTER_CONF_SOURCES =						\
178 179 180
		$(NWFILTER_PARAM_CONF_SOURCES)			\
		conf/nwfilter_conf.c conf/nwfilter_conf.h

181
# Storage driver generic impl APIs
182 183
STORAGE_CONF_SOURCES =                                         \
		conf/storage_conf.h conf/storage_conf.c
184

185
# Interface driver generic impl APIs
186 187
INTERFACE_CONF_SOURCES =                                       \
		conf/interface_conf.c conf/interface_conf.h
188

189
# Secret driver generic impl APIs
190 191 192 193 194 195 196 197 198 199
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

200 201
CPU_CONF_SOURCES =						\
		conf/cpu_conf.c conf/cpu_conf.h
202

203 204 205
# Safe console handling helper APIs
CONSOLE_CONF_SOURCES =						\
		conf/virconsole.c conf/virconsole.h
206

207 208 209 210
# Device Helper APIs
DEVICE_CONF_SOURCES =                                           \
		conf/device_conf.c conf/device_conf.h

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

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

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

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

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

254
EXTRA_DIST +=  $(REMOTE_DRIVER_PROTOCOL) \
255
		$(REMOTE_DRIVER_GENERATED)
256

257 258 259 260 261 262 263 264 265 266
# 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
267 268 269 270

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

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

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

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

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

353 354
# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
355
		test/test_driver.c test/test_driver.h
356 357 358

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
359 360 361 362 363 364
		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
365
if WITH_XEN_INOTIFY
366
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
367
endif
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 404 405 406
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)

407
LXC_DRIVER_SOURCES =						\
408 409
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_MONITOR_GENERATED)			\
410 411
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
412
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
413
		lxc/lxc_domain.c lxc/lxc_domain.h		\
414
		lxc/lxc_monitor.c lxc/lxc_monitor.h		\
415
		lxc/lxc_process.c lxc/lxc_process.h		\
G
Gao feng 已提交
416
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
417
		lxc/lxc_driver.c lxc/lxc_driver.h
418

419
LXC_CONTROLLER_SOURCES =					\
420 421
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_CONTROLLER_GENERATED)			\
422 423
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
424
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
G
Gao feng 已提交
425
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
426
		lxc/lxc_controller.c
427

J
Jamie Strandboge 已提交
428
SECURITY_DRIVER_APPARMOR_HELPER_SOURCES =			\
E
Eric Blake 已提交
429
		$(DATATYPES_SOURCES)				\
J
Jamie Strandboge 已提交
430 431
		security/virt-aa-helper.c

432 433 434
PHYP_DRIVER_SOURCES =						\
		phyp/phyp_driver.c phyp/phyp_driver.h

435
OPENVZ_DRIVER_SOURCES =						\
436
		openvz/openvz_conf.c openvz/openvz_conf.h	\
437 438
		openvz/openvz_driver.c openvz/openvz_driver.h   \
		openvz/openvz_util.c openvz/openvz_util.h
439

E
Eric Blake 已提交
440
VMWARE_DRIVER_SOURCES =						\
441
		vmware/vmware_driver.c vmware/vmware_driver.h	\
442 443
		vmware/vmware_conf.c vmware/vmware_conf.h

444
VBOX_DRIVER_SOURCES =						\
E
Eric Blake 已提交
445 446 447 448 449 450
	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			\
451 452
	vbox/vbox_V4_0.c vbox/vbox_CAPI_v4_0.h			\
	vbox/vbox_V4_1.c vbox/vbox_CAPI_v4_1.h
453

E
Eric Blake 已提交
454
VBOX_DRIVER_EXTRA_DIST =					\
455 456 457
		vbox/vbox_tmpl.c vbox/README			\
		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
458

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

O
Osier Yang 已提交
479
XENAPI_DRIVER_SOURCES =						\
480
		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
O
Osier Yang 已提交
481
		xenapi/xenapi_driver_private.h			\
482 483
		xenapi/xenapi_utils.c xenapi/xenapi_utils.h

J
Jim Fehlig 已提交
484 485 486 487
LIBXL_DRIVER_SOURCES =						\
		libxl/libxl_conf.c libxl/libxl_conf.h		\
		libxl/libxl_driver.c libxl/libxl_driver.h

488
UML_DRIVER_SOURCES =						\
D
Daniel P. Berrange 已提交
489 490
		uml/uml_conf.c uml/uml_conf.h			\
		uml/uml_driver.c uml/uml_driver.h
491

O
Osier Yang 已提交
492 493 494 495 496 497
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	\
498
		esx/esx_storage_backend_vmfs.c esx/esx_storage_backend_vmfs.h	\
O
Osier Yang 已提交
499
		esx/esx_device_monitor.c esx/esx_device_monitor.h	\
500
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
501 502 503 504
		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		\
505
		esx/esx_vi_types.c esx/esx_vi_types.h
506

507
ESX_DRIVER_GENERATED =							\
508 509
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
510
		esx/esx_vi_methods.generated.macro			\
511 512 513 514 515
		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			\
516 517 518
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
519

O
Osier Yang 已提交
520
ESX_DRIVER_EXTRA_DIST =							\
521 522 523 524 525
		esx/README						\
		esx/esx_vi_generator.input				\
		esx/esx_vi_generator.py					\
		$(ESX_DRIVER_GENERATED)

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

559
NETWORK_DRIVER_SOURCES =					\
560
		network/bridge_driver.h network/bridge_driver.c
561

562 563 564 565
INTERFACE_DRIVER_SOURCES =

if WITH_INTERFACE
INTERFACE_DRIVER_SOURCES +=					\
566 567
		interface/interface_driver.h        \
		interface/interface_driver.c
568 569 570 571

if WITH_NETCF
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_netcf.c
572
endif
573 574 575 576 577
if HAVE_UDEV
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_udev.c
endif
endif
578

579
SECRET_DRIVER_SOURCES =						\
580
		secret/secret_driver.h secret/secret_driver.c
581

582
# Storage backend specific impls
O
Osier Yang 已提交
583 584
STORAGE_DRIVER_SOURCES =						\
		storage/storage_driver.h storage/storage_driver.c	\
585
		storage/storage_backend.h storage/storage_backend.c
586 587

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

590
STORAGE_DRIVER_LVM_SOURCES =					\
O
Osier Yang 已提交
591
		storage/storage_backend_logical.h		\
592
		storage/storage_backend_logical.c
593 594

STORAGE_DRIVER_ISCSI_SOURCES =					\
595
		storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
596

597
STORAGE_DRIVER_SCSI_SOURCES =					\
598
		storage/storage_backend_scsi.h storage/storage_backend_scsi.c
599

D
Dave Allan 已提交
600
STORAGE_DRIVER_MPATH_SOURCES =					\
601
		storage/storage_backend_mpath.h storage/storage_backend_mpath.c
D
Dave Allan 已提交
602

603
STORAGE_DRIVER_DISK_SOURCES =					\
604
		storage/storage_backend_disk.h storage/storage_backend_disk.c
605

606 607 608
STORAGE_DRIVER_RBD_SOURCES =					\
		storage/storage_backend_rbd.h storage/storage_backend_rbd.c

609 610 611
STORAGE_DRIVER_SHEEPDOG_SOURCES =				\
		storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c

612
STORAGE_HELPER_DISK_SOURCES =					\
613
		storage/parthelper.c
614

615 616 617
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

618
# Network filters
O
Osier Yang 已提交
619
NWFILTER_DRIVER_SOURCES =						\
620
		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
621 622
		nwfilter/nwfilter_gentech_driver.c			\
		nwfilter/nwfilter_gentech_driver.h			\
S
Stefan Berger 已提交
623 624
		nwfilter/nwfilter_dhcpsnoop.c				\
		nwfilter/nwfilter_dhcpsnoop.h				\
625
		nwfilter/nwfilter_ebiptables_driver.c			\
626 627 628
		nwfilter/nwfilter_ebiptables_driver.h			\
		nwfilter/nwfilter_learnipaddr.c				\
		nwfilter/nwfilter_learnipaddr.h
629

630

631
# Security framework and drivers for various models
O
Osier Yang 已提交
632 633 634 635 636
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		\
637
		security/security_manager.h security/security_manager.c
638

639
SECURITY_DRIVER_SELINUX_SOURCES =				\
640
		security/security_selinux.h security/security_selinux.c
641

J
Jamie Strandboge 已提交
642 643 644
SECURITY_DRIVER_APPARMOR_SOURCES =				\
		security/security_apparmor.h security/security_apparmor.c

645

646
NODE_DEVICE_DRIVER_SOURCES =					\
O
Osier Yang 已提交
647 648
		node_device/node_device_driver.c		\
		node_device/node_device_driver.h		\
649
		node_device/node_device_linux_sysfs.c
650 651

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
652
		node_device/node_device_hal.c			\
653
		node_device/node_device_hal.h
654

655
NODE_DEVICE_DRIVER_UDEV_SOURCES =				\
D
Daniel Veillard 已提交
656 657
		node_device/node_device_udev.c			\
		node_device/node_device_udev.h
658

J
Jiri Denemark 已提交
659 660 661 662
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 已提交
663
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
664
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
665
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
666
		cpu/cpu_powerpc.c cpu/cpu_ppc_data.h
667

668 669 670
VMX_SOURCES =							\
		vmx/vmx.c vmx/vmx.h

671 672
XENXS_SOURCES =							\
		xenxs/xenxs_private.h				\
673 674
		xenxs/xen_sxpr.c xenxs/xen_sxpr.h		\
		xenxs/xen_xm.c xenxs/xen_xm.h
675

J
Jiri Denemark 已提交
676 677
pkgdata_DATA =	cpu/cpu_map.xml

E
Eric Blake 已提交
678
EXTRA_DIST +=	$(pkgdata_DATA)
679

680 681 682 683 684 685
#########################
#
# Build up list of libvirt.la source files based on configure conditions
#
# First deal with sources usable in non-daemon context

686
noinst_LTLIBRARIES = libvirt_util.la
687 688
libvirt_la_LIBADD = $(libvirt_la_BUILT_LIBADD)
libvirt_la_BUILT_LIBADD = libvirt_util.la
689 690
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)
691
libvirt_util_la_CFLAGS = $(CAPNG_CFLAGS) $(YAJL_CFLAGS) $(LIBNL_CFLAGS) \
692
		$(AM_CFLAGS) $(AUDIT_CFLAGS) $(DEVMAPPER_CFLAGS) \
E
Eric Blake 已提交
693
		$(DBUS_CFLAGS) $(LDEXP_LIBM)
694
libvirt_util_la_LIBADD = $(CAPNG_LIBS) $(YAJL_LIBS) $(LIBNL_LIBS) \
695
		$(THREAD_LIBS) $(AUDIT_LIBS) $(DEVMAPPER_LIBS) \
696
		$(LIB_CLOCK_GETTIME) $(DBUS_LIBS) $(MSCOM_LIBS) $(LIBXML_LIBS)
697

698 699

noinst_LTLIBRARIES += libvirt_conf.la
700
libvirt_la_BUILT_LIBADD += libvirt_conf.la
701
libvirt_conf_la_SOURCES = $(CONF_SOURCES)
702 703
libvirt_conf_la_CFLAGS = $(AM_CFLAGS)
libvirt_conf_la_LDFLAGS = $(AM_LDFLAGS)
704

J
Jiri Denemark 已提交
705
noinst_LTLIBRARIES += libvirt_cpu.la
706
libvirt_la_BUILT_LIBADD += libvirt_cpu.la
J
Jiri Denemark 已提交
707
libvirt_cpu_la_CFLAGS = \
708
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
J
Jiri Denemark 已提交
709 710
libvirt_cpu_la_SOURCES = $(CPU_SOURCES)

711 712 713 714
if WITH_VMX
noinst_LTLIBRARIES += libvirt_vmx.la
libvirt_la_BUILT_LIBADD += libvirt_vmx.la
libvirt_vmx_la_CFLAGS = \
715
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
716 717 718
libvirt_vmx_la_SOURCES = $(VMX_SOURCES)
endif

719
if WITH_XENXS
720 721 722
noinst_LTLIBRARIES += libvirt_xenxs.la
libvirt_la_BUILT_LIBADD += libvirt_xenxs.la
libvirt_xenxs_la_CFLAGS = \
723
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
724 725 726
libvirt_xenxs_la_SOURCES = $(XENXS_SOURCES)
endif

727

728
noinst_LTLIBRARIES += libvirt_driver.la
729
libvirt_la_BUILT_LIBADD += libvirt_driver.la
730
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
731

M
Matthias Bolte 已提交
732
libvirt_driver_la_CFLAGS = $(NUMACTL_CFLAGS) $(GNUTLS_CFLAGS) \
733
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
734
libvirt_driver_la_LIBADD = $(NUMACTL_LIBS) $(GNUTLS_LIBS) $(DLOPEN_LIBS)
735

736
USED_SYM_FILES = libvirt_private.syms
737

738
if WITH_TEST
739
noinst_LTLIBRARIES += libvirt_driver_test.la
740
libvirt_la_BUILT_LIBADD += libvirt_driver_test.la
741
libvirt_driver_test_la_CFLAGS = \
742
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
743
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
744 745 746
endif

if WITH_REMOTE
747
noinst_LTLIBRARIES += libvirt_driver_remote.la
748
libvirt_la_BUILT_LIBADD += libvirt_driver_remote.la
749 750
libvirt_driver_remote_la_CFLAGS =				\
		$(GNUTLS_CFLAGS)				\
E
Eric Blake 已提交
751
		$(XDR_CFLAGS)					\
752 753
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/rpc				\
754 755
		$(AM_CFLAGS)
libvirt_driver_remote_la_LDFLAGS = $(AM_LDFLAGS)
756 757 758 759
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) \
                libvirt-net-rpc-client.la \
                libvirt-net-rpc-server.la \
                libvirt-net-rpc.la
760
libvirt_driver_remote_la_SOURCES = $(REMOTE_DRIVER_SOURCES)
761

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

764 765
endif WITH_REMOTE

766
%protocol.c: %protocol.x %protocol.h $(srcdir)/rpc/genprotocol.pl
767
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -c \
E
Eric Blake 已提交
768
	       $< $@
769

770
%protocol.h: %protocol.x $(srcdir)/rpc/genprotocol.pl
771
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -h \
E
Eric Blake 已提交
772
	       $< $@
773

774
if WITH_XEN
E
Eric Blake 已提交
775 776 777
noinst_LTLIBRARIES += libvirt_driver_xen_impl.la
libvirt_driver_xen_la_SOURCES =
libvirt_driver_xen_la_LIBADD = libvirt_driver_xen_impl.la
778 779
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_xen.la
E
Eric Blake 已提交
780 781
libvirt_driver_xen_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_xen_la_LDFLAGS = -module -avoid-version
782
else
783
noinst_LTLIBRARIES += libvirt_driver_xen.la
784 785
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_xen.la
786
endif
E
Eric Blake 已提交
787 788

libvirt_driver_xen_impl_la_CFLAGS =					\
789
		$(XEN_CFLAGS)					\
790 791
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
792
		$(AM_CFLAGS)
E
Eric Blake 已提交
793 794 795
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)
796 797
endif

798 799
if WITH_PHYP
noinst_LTLIBRARIES += libvirt_driver_phyp.la
800
libvirt_la_BUILT_LIBADD += libvirt_driver_phyp.la
801
libvirt_driver_phyp_la_LIBADD = $(LIBSSH2_LIBS)
802
libvirt_driver_phyp_la_CFLAGS = $(LIBSSH2_CFLAGS) \
803
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
804 805 806
libvirt_driver_phyp_la_SOURCES = $(PHYP_DRIVER_SOURCES)
endif

807
if WITH_OPENVZ
808
noinst_LTLIBRARIES += libvirt_driver_openvz.la
809
libvirt_la_BUILT_LIBADD += libvirt_driver_openvz.la
810
libvirt_driver_openvz_la_CFLAGS = \
811
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
812
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
813 814
endif

815 816 817 818
if WITH_VMWARE
noinst_LTLIBRARIES += libvirt_driver_vmware.la
libvirt_la_BUILT_LIBADD += libvirt_driver_vmware.la
libvirt_driver_vmware_la_CFLAGS = \
819
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
820 821 822
libvirt_driver_vmware_la_SOURCES = $(VMWARE_DRIVER_SOURCES)
endif

823 824
if WITH_VBOX
noinst_LTLIBRARIES += libvirt_driver_vbox.la
825
libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
826
libvirt_driver_vbox_la_CFLAGS = \
827
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
828
libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
829 830 831
libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif

832 833
if WITH_XENAPI
noinst_LTLIBRARIES += libvirt_driver_xenapi.la
834
libvirt_la_BUILT_LIBADD += libvirt_driver_xenapi.la
835
libvirt_driver_xenapi_la_CFLAGS = $(LIBXENSERVER_CFLAGS) $(LIBCURL_CFLAGS) \
836
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
837
libvirt_driver_xenapi_la_LDFLAGS = $(AM_LDFLAGS)
838
libvirt_driver_xenapi_la_LIBADD = $(LIBXENSERVER_LIBS) $(LIBCURL_LIBS)
839 840 841
libvirt_driver_xenapi_la_SOURCES = $(XENAPI_DRIVER_SOURCES)
endif

J
Jim Fehlig 已提交
842
if WITH_LIBXL
E
Eric Blake 已提交
843 844 845
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 已提交
846 847
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
848 849
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
850 851 852 853 854
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 已提交
855 856

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
857 858
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
859
		$(AM_CFLAGS)
E
Eric Blake 已提交
860 861 862
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 已提交
863 864
endif

865
if WITH_QEMU
E
Eric Blake 已提交
866 867 868
noinst_LTLIBRARIES += libvirt_driver_qemu_impl.la
libvirt_driver_qemu_la_SOURCES =
libvirt_driver_qemu_la_LIBADD = libvirt_driver_qemu_impl.la
869 870
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_qemu.la
E
Eric Blake 已提交
871 872
libvirt_driver_qemu_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_qemu_la_LDFLAGS = -module -avoid-version
873
else
874
noinst_LTLIBRARIES += libvirt_driver_qemu.la
875
# Stateful, so linked to daemon instead
876
#libvirt_la_BUILT_LIBADD += libvirt_driver_qemu.la
877
endif
E
Eric Blake 已提交
878 879

libvirt_driver_qemu_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
880
                                $(GNUTLS_CFLAGS) \
S
Serge Hallyn 已提交
881
                                $(LIBNL_CFLAGS) \
882
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
883 884
libvirt_driver_qemu_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_qemu_impl_la_LIBADD = $(NUMACTL_LIBS) \
885 886
				$(CAPNG_LIBS) \
                                $(GNUTLS_LIBS) \
S
Serge Hallyn 已提交
887
				$(LIBNL_LIBS)
E
Eric Blake 已提交
888
libvirt_driver_qemu_impl_la_SOURCES = $(QEMU_DRIVER_SOURCES)
889

A
Amy Griffis 已提交
890
conf_DATA += qemu/qemu.conf
891

892
augeas_DATA += qemu/libvirtd_qemu.aug
893 894
augeastest_DATA += test_libvirtd_qemu.aug
CLEANFILES += test_libvirtd_qemu.aug
895

896
endif
897
EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug \
898
		qemu/test_libvirtd_qemu.aug.in qemu/THREADS.txt
899

900 901

if WITH_LXC
E
Eric Blake 已提交
902 903 904
noinst_LTLIBRARIES += libvirt_driver_lxc_impl.la
libvirt_driver_lxc_la_SOURCES =
libvirt_driver_lxc_la_LIBADD = libvirt_driver_lxc_impl.la
905 906
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_lxc.la
E
Eric Blake 已提交
907 908
libvirt_driver_lxc_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_lxc_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
909
else
910
noinst_LTLIBRARIES += libvirt_driver_lxc.la
911
# Stateful, so linked to daemon instead
912
#libvirt_la_BUILT_LIBADD += libvirt_driver_lxc.la
913
endif
E
Eric Blake 已提交
914 915

libvirt_driver_lxc_impl_la_CFLAGS = \
S
Serge Hallyn 已提交
916
		$(LIBNL_CFLAGS) \
G
Gao feng 已提交
917
		$(FUSE_CFLAGS) \
918
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
G
Gao feng 已提交
919
libvirt_driver_lxc_impl_la_LIBADD = $(CAPNG_LIBS) $(LIBNL_LIBS) $(FUSE_LIBS)
920
if HAVE_LIBBLKID
E
Eric Blake 已提交
921 922
libvirt_driver_lxc_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_lxc_impl_la_LIBADD += $(BLKID_LIBS)
923
endif
924
if WITH_SECDRIVER_SELINUX
E
Eric Blake 已提交
925
libvirt_driver_lxc_impl_la_LIBADD += $(SELINUX_LIBS)
926 927
endif
if WITH_SECDRIVER_APPARMOR
E
Eric Blake 已提交
928
libvirt_driver_lxc_impl_la_LIBADD += $(APPARMOR_LIBS)
929
endif
E
Eric Blake 已提交
930
libvirt_driver_lxc_impl_la_SOURCES = $(LXC_DRIVER_SOURCES)
A
Amy Griffis 已提交
931 932 933

conf_DATA += lxc/lxc.conf

934
augeas_DATA += lxc/libvirtd_lxc.aug
935 936
augeastest_DATA += test_libvirtd_lxc.aug
CLEANFILES += test_libvirtd_lxc.aug
937

938
endif
939
EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug.in
940

941
if WITH_UML
E
Eric Blake 已提交
942 943 944
noinst_LTLIBRARIES += libvirt_driver_uml_impl.la
libvirt_driver_uml_la_SOURCES =
libvirt_driver_uml_la_LIBADD = libvirt_driver_uml_impl.la
945 946
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_uml.la
E
Eric Blake 已提交
947 948
libvirt_driver_uml_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_uml_la_LDFLAGS = -module -avoid-version
949
else
950 951
noinst_LTLIBRARIES += libvirt_driver_uml.la
# Stateful, so linked to daemon instead
952
#libvirt_la_BUILT_LIBADD += libvirt_driver_uml.la
953
endif
E
Eric Blake 已提交
954 955

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
956
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
957 958 959
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)
960
endif
961

D
Daniel Veillard 已提交
962

963
BUILT_SOURCES += $(ESX_DRIVER_GENERATED)
D
Daniel Veillard 已提交
964

965 966
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

E
Eric Blake 已提交
967 968
EXTRA_DIST += $(ESX_GENERATED_STAMP)

969 970 971
$(ESX_DRIVER_GENERATED): $(ESX_GENERATED_STAMP)

$(ESX_GENERATED_STAMP): $(srcdir)/esx/esx_vi_generator.input \
972
                         $(srcdir)/esx/esx_vi_generator.py
973 974 975 976 977
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/esx/esx_vi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
978

979 980
if WITH_ESX
noinst_LTLIBRARIES += libvirt_driver_esx.la
981
libvirt_la_BUILT_LIBADD += libvirt_driver_esx.la
982
libvirt_driver_esx_la_CFLAGS = $(LIBCURL_CFLAGS) \
983
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
984
libvirt_driver_esx_la_LDFLAGS = $(AM_LDFLAGS)
985
libvirt_driver_esx_la_LIBADD = $(LIBCURL_LIBS)
986
libvirt_driver_esx_la_SOURCES = $(ESX_DRIVER_SOURCES)
987
libvirt_driver_esx_la_DEPENDENCIES = $(ESX_DRIVER_GENERATED)
988 989
endif

M
Matthias Bolte 已提交
990

991 992
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

993 994
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

E
Eric Blake 已提交
995 996
EXTRA_DIST += $(HYPERV_GENERATED_STAMP)

997 998 999
$(HYPERV_DRIVER_GENERATED): $(HYPERV_GENERATED_STAMP)

$(HYPERV_GENERATED_STAMP): $(srcdir)/hyperv/hyperv_wmi_generator.input \
1000
                            $(srcdir)/hyperv/hyperv_wmi_generator.py
1001 1002 1003 1004
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/hyperv/hyperv_wmi_generator.py \
	  && touch $@

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

M
Matthias Bolte 已提交
1006 1007 1008 1009
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
1010
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
1011 1012 1013 1014 1015
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 已提交
1016 1017 1018 1019 1020 1021 1022 1023
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

1024
if WITH_NETWORK
E
Eric Blake 已提交
1025 1026 1027
noinst_LTLIBRARIES += libvirt_driver_network_impl.la
libvirt_driver_network_la_SOURCES =
libvirt_driver_network_la_LIBADD = libvirt_driver_network_impl.la
1028 1029
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_network.la
1030
libvirt_driver_network_la_LIBADD += ../gnulib/lib/libgnu.la $(LIBNL_LIBS) $(DBUS_LIBS)
E
Eric Blake 已提交
1031
libvirt_driver_network_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1032
else
1033
noinst_LTLIBRARIES += libvirt_driver_network.la
1034
# Stateful, so linked to daemon instead
1035
#libvirt_la_BUILT_LIBADD += libvirt_driver_network.la
1036
endif
E
Eric Blake 已提交
1037 1038

libvirt_driver_network_impl_la_CFLAGS = \
1039
		$(LIBNL_CFLAGS) $(DBUS_CFLAGS) \
1040
		-I$(top_srcdir)/src/conf $(AM_CFLAGS) $(DBUS_CFLAGS)
E
Eric Blake 已提交
1041
libvirt_driver_network_impl_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
1042
endif
1043 1044 1045
EXTRA_DIST += network/default.xml


1046
if WITH_INTERFACE
1047 1048 1049 1050
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_interface.la
else
noinst_LTLIBRARIES += libvirt_driver_interface.la
1051 1052
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_interface.la
1053
endif
1054
libvirt_driver_interface_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1055
libvirt_driver_interface_la_LDFLAGS = $(AM_LDFLAGS)
1056 1057 1058 1059
libvirt_driver_interface_la_LIBADD =
if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
1060 1061 1062 1063 1064
else
if HAVE_UDEV
libvirt_driver_interface_la_CFLAGS += $(UDEV_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(UDEV_LIBS)
endif
1065
endif
1066
if WITH_DRIVER_MODULES
1067
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
1068 1069 1070
libvirt_driver_interface_la_LDFLAGS += -module -avoid-version
endif
libvirt_driver_interface_la_SOURCES = $(INTERFACE_DRIVER_SOURCES)
D
Daniel Veillard 已提交
1071 1072
endif

D
Daniel P. Berrange 已提交
1073
if WITH_SECRETS
1074 1075 1076 1077
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_secret.la
else
noinst_LTLIBRARIES += libvirt_driver_secret.la
1078
# Stateful, so linked to daemon instead
1079
#libvirt_la_BUILT_LIBADD += libvirt_driver_secret.la
1080
endif
1081
libvirt_driver_secret_la_CFLAGS = \
1082
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1083
if WITH_DRIVER_MODULES
1084
libvirt_driver_secret_la_LIBADD = ../gnulib/lib/libgnu.la
1085
libvirt_driver_secret_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1086 1087
endif
libvirt_driver_secret_la_SOURCES = $(SECRET_DRIVER_SOURCES)
D
Daniel P. Berrange 已提交
1088
endif
1089

1090
# Needed to keep automake quiet about conditionals
1091 1092
libvirt_driver_storage_impl_la_SOURCES =
libvirt_driver_storage_impl_la_CFLAGS = \
1093
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1094 1095
libvirt_driver_storage_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_storage_impl_la_LIBADD =
1096
if WITH_SECDRIVER_SELINUX
1097
libvirt_driver_storage_impl_la_LIBADD += $(SELINUX_LIBS)
1098 1099
endif
if WITH_SECDRIVER_APPARMOR
1100
libvirt_driver_storage_impl_la_LIBADD += $(APPARMOR_LIBS)
1101
endif
O
Osier Yang 已提交
1102
if HAVE_LIBBLKID
1103 1104
libvirt_driver_storage_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_storage_impl_la_LIBADD += $(BLKID_LIBS)
O
Osier Yang 已提交
1105
endif
1106
if WITH_STORAGE
1107 1108 1109
noinst_LTLIBRARIES += libvirt_driver_storage_impl.la
libvirt_driver_storage_la_SOURCES =
libvirt_driver_storage_la_LIBADD = libvirt_driver_storage_impl.la
1110 1111
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_storage.la
1112
libvirt_driver_storage_la_LIBADD += ../gnulib/lib/libgnu.la
1113
libvirt_driver_storage_la_LDFLAGS = -module -avoid-version
1114
else
1115
noinst_LTLIBRARIES += libvirt_driver_storage.la
1116
# Stateful, so linked to daemon instead
1117
#libvirt_la_BUILT_LIBADD += libvirt_driver_storage.la
1118
endif
1119 1120
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_FS_SOURCES)
1121 1122
endif

1123
if WITH_STORAGE_LVM
1124
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
1125 1126
endif

1127
if WITH_STORAGE_ISCSI
1128
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
1129 1130
endif

1131
if WITH_STORAGE_SCSI
1132
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SCSI_SOURCES)
1133 1134
endif

D
Dave Allan 已提交
1135
if WITH_STORAGE_MPATH
1136 1137 1138
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 已提交
1139 1140
endif

1141
if WITH_STORAGE_DISK
1142
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
1143
endif
1144

1145
if WITH_STORAGE_RBD
1146 1147
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_RBD_SOURCES)
libvirt_driver_storage_impl_la_LIBADD += $(LIBRBD_LIBS)
1148 1149
endif

1150
if WITH_STORAGE_SHEEPDOG
1151
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
1152 1153
endif

1154 1155 1156 1157 1158 1159 1160
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
1161
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1162 1163 1164
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

1165
libvirt_driver_nodedev_la_CFLAGS = \
1166
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1167
libvirt_driver_nodedev_la_LDFLAGS = $(AM_LDFLAGS)
1168
libvirt_driver_nodedev_la_LIBADD =
1169

1170 1171 1172
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
1173
libvirt_driver_nodedev_la_LIBADD += $(HAL_LIBS)
1174
endif
1175 1176
if HAVE_UDEV
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_UDEV_SOURCES)
1177
libvirt_driver_nodedev_la_CFLAGS += $(UDEV_CFLAGS) $(PCIACCESS_CFLAGS)
1178
libvirt_driver_nodedev_la_LIBADD += $(UDEV_LIBS) $(PCIACCESS_LIBS)
1179
endif
1180 1181

if WITH_DRIVER_MODULES
1182
libvirt_driver_nodedev_la_LIBADD += ../gnulib/lib/libgnu.la
1183 1184 1185 1186 1187
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


1188 1189 1190 1191 1192
if WITH_NWFILTER
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_nwfilter.la
else
noinst_LTLIBRARIES += libvirt_driver_nwfilter.la
1193 1194
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_nwfilter.la
1195
endif
1196
libvirt_driver_nwfilter_la_CFLAGS = $(LIBPCAP_CFLAGS) \
1197
		-I$(top_srcdir)/src/conf $(LIBNL_CFLAGS) $(AM_CFLAGS) $(DBUS_CFLAGS)
1198
libvirt_driver_nwfilter_la_LDFLAGS = $(LD_AMFLAGS)
1199
libvirt_driver_nwfilter_la_LIBADD = $(LIBPCAP_LIBS) $(LIBNL_LIBS) $(DBUS_LIBS)
1200
if WITH_DRIVER_MODULES
1201
libvirt_driver_nwfilter_la_LIBADD += ../gnulib/lib/libgnu.la
1202
libvirt_driver_nwfilter_la_LDFLAGS += -module -avoid-version
1203 1204 1205 1206 1207
endif
libvirt_driver_nwfilter_la_SOURCES = $(NWFILTER_DRIVER_SOURCES)
endif


1208 1209 1210 1211
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 = \
1212
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1213 1214
libvirt_security_manager_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_security_manager_la_LIBADD =
1215
if WITH_SECDRIVER_SELINUX
1216 1217 1218
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
libvirt_security_manager_la_CFLAGS += $(SELINUX_CFLAGS)
libvirt_security_manager_la_LIBADD += $(SELINUX_LIBS)
1219
endif
J
Jamie Strandboge 已提交
1220
if WITH_SECDRIVER_APPARMOR
1221 1222 1223
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 已提交
1224
endif
1225

1226 1227 1228 1229 1230 1231 1232
# Add all conditional sources just in case...
EXTRA_DIST +=							\
		$(TEST_DRIVER_SOURCES)				\
		$(REMOTE_DRIVER_SOURCES)			\
		$(XEN_DRIVER_SOURCES)				\
		$(QEMU_DRIVER_SOURCES)				\
		$(LXC_DRIVER_SOURCES)				\
1233
		$(UML_DRIVER_SOURCES)				\
1234
		$(OPENVZ_DRIVER_SOURCES)			\
1235
		$(PHYP_DRIVER_SOURCES)				\
1236
		$(VBOX_DRIVER_SOURCES)				\
1237
		$(XENAPI_DRIVER_SOURCES)			\
O
Osier Yang 已提交
1238
		$(LIBXL_DRIVER_SOURCES)				\
1239
		$(ESX_DRIVER_SOURCES)				\
1240
		$(ESX_DRIVER_EXTRA_DIST)			\
M
Matthias Bolte 已提交
1241
		$(HYPERV_DRIVER_SOURCES)			\
1242
		$(HYPERV_DRIVER_EXTRA_DIST)			\
O
Osier Yang 已提交
1243
		$(PARALLELS_DRIVER_SOURCES)			\
1244
		$(NETWORK_DRIVER_SOURCES)			\
1245
		$(INTERFACE_DRIVER_SOURCES)			\
1246 1247 1248 1249
		$(STORAGE_DRIVER_SOURCES)			\
		$(STORAGE_DRIVER_FS_SOURCES)			\
		$(STORAGE_DRIVER_LVM_SOURCES)			\
		$(STORAGE_DRIVER_ISCSI_SOURCES)			\
1250
		$(STORAGE_DRIVER_SCSI_SOURCES)			\
D
Dave Allan 已提交
1251
		$(STORAGE_DRIVER_MPATH_SOURCES)			\
1252
		$(STORAGE_DRIVER_DISK_SOURCES)			\
1253
		$(STORAGE_DRIVER_RBD_SOURCES)			\
1254
		$(STORAGE_DRIVER_SHEEPDOG_SOURCES)		\
1255 1256
		$(NODE_DEVICE_DRIVER_SOURCES)			\
		$(NODE_DEVICE_DRIVER_HAL_SOURCES)		\
1257
		$(NODE_DEVICE_DRIVER_UDEV_SOURCES)		\
1258
		$(NWFILTER_DRIVER_SOURCES)			\
1259
		$(SECURITY_DRIVER_SELINUX_SOURCES)		\
J
Jamie Strandboge 已提交
1260
		$(SECURITY_DRIVER_APPARMOR_SOURCES)		\
D
Daniel P. Berrange 已提交
1261
		$(SECRET_DRIVER_SOURCES)			\
1262
		$(VBOX_DRIVER_EXTRA_DIST)			\
1263 1264
		$(VMWARE_DRIVER_SOURCES)			\
		$(XENXS_SOURCES)
1265

1266 1267 1268 1269 1270 1271
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

1272
AUG_GENTEST = $(PERL) $(top_srcdir)/build-aux/augeas-gentest.pl
1273
EXTRA_DIST += $(top_srcdir)/build-aux/augeas-gentest.pl
1274

1275
if WITH_QEMU
1276 1277
test_libvirtd_qemu.aug: qemu/test_libvirtd_qemu.aug.in \
		$(srcdir)/qemu/qemu.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1278
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/qemu/qemu.conf $< $@
1279

1280
check-augeas-qemu: test_libvirtd_qemu.aug
1281
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1282
	    '$(AUGPARSE)' -I $(srcdir)/qemu test_libvirtd_qemu.aug; \
1283
	fi
1284 1285
else
check-augeas-qemu:
1286
endif
1287

1288
if WITH_LXC
1289 1290
test_libvirtd_lxc.aug: lxc/test_libvirtd_lxc.aug.in \
		$(srcdir)/lxc/lxc.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1291
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/lxc/lxc.conf $< $@
1292

1293
check-augeas-lxc: test_libvirtd_lxc.aug
1294
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1295
	    '$(AUGPARSE)' -I $(srcdir)/lxc test_libvirtd_lxc.aug; \
1296
	fi
1297 1298
else
check-augeas-lxc:
1299
endif
1300

1301
if HAVE_SANLOCK
1302 1303
test_libvirt_sanlock.aug: locking/test_libvirt_sanlock.aug.in \
		locking/qemu-sanlock.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1304
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-sanlock.conf $< $@
1305

1306
check-augeas-sanlock: test_libvirt_sanlock.aug
1307
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1308
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_sanlock.aug; \
1309
	fi
1310 1311 1312
else
check-augeas-sanlock:
endif
1313

1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332
#
# 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.
#

1333
if WITH_DRIVER_MODULES
1334
USED_SYM_FILES += libvirt_driver_modules.syms
1335
endif
1336

1337
if WITH_LINUX
1338
USED_SYM_FILES += libvirt_linux.syms
1339
endif
1340

1341 1342 1343 1344
if WITH_ESX
USED_SYM_FILES += libvirt_esx.syms
endif

1345 1346 1347 1348
if WITH_LIBVIRTD
USED_SYM_FILES += libvirt_daemon.syms
endif

1349 1350 1351 1352
if WITH_OPENVZ
USED_SYM_FILES += libvirt_openvz.syms
endif

1353 1354 1355 1356
if WITH_VMX
USED_SYM_FILES += libvirt_vmx.syms
endif

1357 1358 1359 1360
if WITH_XENXS
USED_SYM_FILES += libvirt_xenxs.syms
endif

E
Eric Blake 已提交
1361 1362 1363 1364
if HAVE_SASL
USED_SYM_FILES += libvirt_sasl.syms
endif

1365 1366 1367 1368
if HAVE_LIBSSH2
USED_SYM_FILES += libvirt_libssh2.syms
endif

1369 1370 1371 1372
if WITH_ATOMIC_OPS_PTHREAD
USED_SYM_FILES += libvirt_atomic.syms
endif

1373 1374 1375
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
1376
  libvirt_atomic.syms		\
1377
  libvirt_driver_modules.syms	\
E
Eric Blake 已提交
1378
  libvirt_daemon.syms		\
1379
  libvirt_linux.syms		\
1380 1381 1382
  libvirt_esx.syms		\
  libvirt_openvz.syms		\
  libvirt_qemu.syms		\
E
Eric Blake 已提交
1383
  libvirt_sasl.syms		\
1384
  libvirt_vmx.syms		\
1385 1386
  libvirt_xenxs.syms	\
  libvirt_libssh2.syms
1387

1388 1389 1390
GENERATED_SYM_FILES = libvirt.syms libvirt.def libvirt_qemu.def

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1391

1392 1393
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
		$(top_builddir)/config.status
1394 1395 1396 1397 1398 1399
	$(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 && \
1400
	for file in $(USED_SYM_FILES); do \
1401
	    cat $(srcdir)/$$file >>$@-tmp; \
1402 1403 1404
	done && \
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
	chmod a-w $@-tmp && \
1405
	mv $@-tmp libvirt.syms
1406

1407 1408 1409
libvirt.def: libvirt.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1410
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1411 1412 1413
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt.def

1414 1415 1416
libvirt_qemu.def: $(srcdir)/libvirt_qemu.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1417
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1418 1419 1420
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt_qemu.def

1421 1422
# Empty source list - it merely links a bunch of convenience libs together
libvirt_la_SOURCES =
1423
libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_SYMBOL_FILE) \
E
Eric Blake 已提交
1424
		     -version-info $(LIBVIRT_VERSION_INFO) \
1425
		    $(LIBVIRT_NODELETE) $(AM_LDFLAGS) \
1426
		    $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS)
1427
libvirt_la_BUILT_LIBADD += ../gnulib/lib/libgnu.la
1428
libvirt_la_LIBADD += \
1429
		    $(DRIVER_MODULE_LIBS) \
1430
		    $(CYGWIN_EXTRA_LIBADD)
1431
libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS)
1432 1433 1434 1435 1436 1437
# 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)
1438

1439
if WITH_DTRACE_PROBES
1440
libvirt_la_BUILT_LIBADD += libvirt_probes.lo
1441
libvirt_la_DEPENDENCIES += libvirt_probes.lo libvirt_probes.o
1442
nodist_libvirt_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1443
if WITH_REMOTE
E
Eric Blake 已提交
1444
nodist_libvirt_driver_remote_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1445
endif WITH_REMOTE
1446 1447 1448
if WITH_DRIVER_MODULES
DTRACE2SYSTEMTAP_FLAGS = --with-modules
endif
1449

1450 1451 1452
BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp

if WITH_QEMU
1453
libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo
1454
nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h
1455
BUILT_SOURCES += libvirt_qemu_probes.h
1456
endif
1457 1458

tapsetdir = $(datadir)/systemtap/tapset
1459
tapset_DATA = libvirt_probes.stp libvirt_qemu_probes.stp libvirt_functions.stp
1460

1461
%_probes.h: %_probes.d
1462 1463
	$(AM_V_GEN)$(DTRACE) -o $@ -h -s $<

E
Eric Blake 已提交
1464
.PRECIOUS: %_probes.o
1465
%_probes.o: %_probes.d
1466 1467
	$(AM_V_GEN)$(DTRACE) -o $@ -G -s $<

1468 1469 1470 1471 1472 1473 1474 1475 1476
%_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 已提交
1477 1478 1479 1480
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1481 1482

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

1485
%_probes.stp: %_probes.d $(srcdir)/dtrace2systemtap.pl $(top_builddir)/config.status
1486
	$(AM_V_GEN)$(PERL) -w $(srcdir)/dtrace2systemtap.pl \
1487
	  $(DTRACE2SYSTEMTAP_FLAGS) $(bindir) $(sbindir) $(libdir) $< > $@
1488

1489
CLEANFILES += libvirt_probes.h libvirt_probes.o libvirt_probes.lo \
1490
              libvirt_qemu_probes.h libvirt_qemu_probes.o \
1491
              libvirt_qemu_probes.lo\
1492 1493
              libvirt_functions.stp libvirt_probes.stp \
              libvirt_qemu_probes.stp
1494 1495
endif

1496
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1497

C
Chris Lalancette 已提交
1498 1499
libvirt_qemu_la_SOURCES = libvirt-qemu.c
libvirt_qemu_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
E
Eric Blake 已提交
1500 1501
			  -version-info $(LIBVIRT_VERSION_INFO) \
			  $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS) \
1502 1503
			  $(AM_LDFLAGS)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
C
Chris Lalancette 已提交
1504
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
E
Eric Blake 已提交
1505
EXTRA_DIST += $(LIBVIRT_QEMU_SYMBOL_FILE)
1506

1507 1508 1509 1510 1511
if HAVE_SANLOCK
lockdriverdir = $(libdir)/libvirt/lock-driver
lockdriver_LTLIBRARIES = sanlock.la

sanlock_la_SOURCES = $(LOCK_DRIVER_SANLOCK_SOURCES)
1512
sanlock_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1513
sanlock_la_LDFLAGS = -module -avoid-version
1514
sanlock_la_LIBADD = -lsanlock_client \
1515 1516 1517
		../gnulib/lib/libgnu.la

augeas_DATA += locking/libvirt_sanlock.aug
1518 1519
augeastest_DATA += test_libvirt_sanlock.aug
CLEANFILES += test_libvirt_sanlock.aug
1520

E
Eric Blake 已提交
1521
locking/%-sanlock.conf: $(srcdir)/locking/sanlock.conf
1522
	$(AM_V_GEN)$(MKDIR_P) locking ; \
1523 1524 1525
	cp $< $@

if WITH_QEMU
E
Eric Blake 已提交
1526
nodist_conf_DATA = locking/qemu-sanlock.conf
1527
BUILT_SOURCES += locking/qemu-sanlock.conf
E
Eric Blake 已提交
1528
DISTCLEANFILES += locking/qemu-sanlock.conf
1529
endif
1530
else
1531
EXTRA_DIST += $(LOCK_DRIVER_SANLOCK_SOURCES)
1532
endif
1533 1534
EXTRA_DIST += locking/sanlock.conf \
	locking/libvirt_sanlock.aug \
1535
	locking/test_libvirt_sanlock.aug.in
1536

1537 1538 1539 1540
noinst_LTLIBRARIES += \
	libvirt-net-rpc.la \
	libvirt-net-rpc-server.la \
	libvirt-net-rpc-client.la
1541

1542
EXTRA_DIST += \
E
Eric Blake 已提交
1543 1544 1545 1546
	dtrace2systemtap.pl \
	rpc/gendispatch.pl \
	rpc/genprotocol.pl \
	rpc/gensystemtap.pl \
J
Jiri Denemark 已提交
1547 1548
	rpc/virnetprotocol.x \
	rpc/virkeepaliveprotocol.x
1549

E
Eric Blake 已提交
1550 1551
VIR_NET_RPC_GENERATED = \
	$(srcdir)/rpc/virnetprotocol.h \
J
Jiri Denemark 已提交
1552 1553 1554
	$(srcdir)/rpc/virnetprotocol.c \
	$(srcdir)/rpc/virkeepaliveprotocol.h \
	$(srcdir)/rpc/virkeepaliveprotocol.c
1555

1556
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1557

1558
libvirt_net_rpc_la_SOURCES = \
1559
	rpc/virnetmessage.h rpc/virnetmessage.c \
1560
	rpc/virnetprotocol.h rpc/virnetprotocol.c \
1561
	rpc/virnetsocket.h rpc/virnetsocket.c \
J
Jiri Denemark 已提交
1562
	rpc/virnettlscontext.h rpc/virnettlscontext.c \
1563 1564
	rpc/virkeepaliveprotocol.h rpc/virkeepaliveprotocol.c \
	rpc/virkeepalive.h rpc/virkeepalive.c
1565 1566 1567 1568 1569 1570 1571
if HAVE_LIBSSH2
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
else
EXTRA_DIST += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
endif
1572 1573 1574 1575 1576 1577 1578
if HAVE_SASL
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
else
EXTRA_DIST += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
endif
1579
libvirt_net_rpc_la_CFLAGS = \
1580
			$(GNUTLS_CFLAGS) \
1581
			$(SASL_CFLAGS) \
1582
			$(LIBSSH2_CFLAGS) \
1583
			$(XDR_CFLAGS) \
1584 1585
			$(AM_CFLAGS)
libvirt_net_rpc_la_LDFLAGS = \
1586
			$(GNUTLS_LIBS) \
1587
			$(SASL_LIBS) \
1588
			$(LIBSSH2_LIBS)\
1589 1590 1591 1592 1593 1594
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1595 1596 1597 1598
libvirt_net_rpc_server_la_SOURCES = \
	rpc/virnetserverprogram.h rpc/virnetserverprogram.c \
	rpc/virnetserverservice.h rpc/virnetserverservice.c \
	rpc/virnetserverclient.h rpc/virnetserverclient.c \
1599
	rpc/virnetservermdns.h rpc/virnetservermdns.c \
1600 1601
	rpc/virnetserver.h rpc/virnetserver.c
libvirt_net_rpc_server_la_CFLAGS = \
1602
			$(AVAHI_CFLAGS) \
E
Eric Blake 已提交
1603
			$(XDR_CFLAGS) \
J
Jim Fehlig 已提交
1604 1605
			$(AM_CFLAGS) \
			$(POLKIT_CFLAGS)
1606 1607
libvirt_net_rpc_server_la_LDFLAGS = \
			$(AM_LDFLAGS) \
1608
			$(AVAHI_LIBS) \
J
Jim Fehlig 已提交
1609
			$(POLKIT_LIBS) \
1610 1611 1612 1613 1614
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_server_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1615 1616 1617 1618 1619
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 已提交
1620 1621
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1622 1623 1624 1625 1626 1627
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1628

1629 1630
libexec_PROGRAMS =

1631
if WITH_LIBVIRTD
1632 1633 1634 1635 1636 1637
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
1638 1639 1640
if WITH_DTRACE_PROBES
libvirt_iohelper_LDADD += libvirt_probes.lo
endif
1641 1642

libvirt_iohelper_CFLAGS = $(AM_CFLAGS)
1643
endif
1644

1645
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
1646
if WITH_LIBVIRTD
1647
libexec_PROGRAMS += libvirt_parthelper
1648

1649
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
1650
libvirt_parthelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
1651 1652 1653 1654
libvirt_parthelper_LDADD =		\
		$(LIBPARTED_LIBS)	\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la
1655 1656 1657
if WITH_DTRACE_PROBES
libvirt_parthelper_LDADD += libvirt_probes.lo
endif
1658

1659
libvirt_parthelper_CFLAGS = $(LIBPARTED_CFLAGS) $(AM_CFLAGS)
R
Richard W.M. Jones 已提交
1660
endif
1661
endif
1662 1663
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

1664

1665 1666 1667 1668 1669 1670 1671 1672 1673
if HAVE_SANLOCK
libexec_PROGRAMS += libvirt_sanlock_helper

libvirt_sanlock_helper_SOURCES = $(LOCK_DRIVER_SANLOCK_HELPER_SOURCES)
libvirt_sanlock_helper_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
libvirt_sanlock_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
libvirt_sanlock_helper_LDADD = libvirt.la
endif

1674 1675 1676 1677 1678 1679
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

libvirt_lxc_SOURCES =						\
		$(LXC_CONTROLLER_SOURCES)			\
O
Osier Yang 已提交
1680 1681
		$(NODE_INFO_SOURCES)				\
		$(DATATYPES_SOURCES)
1682
libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(AM_LDFLAGS)
1683 1684
libvirt_lxc_LDADD =			\
		$(NUMACTL_LIBS) \
G
Gao feng 已提交
1685
		$(FUSE_LIBS) \
1686 1687
		libvirt-net-rpc-server.la \
		libvirt-net-rpc.la \
1688
		libvirt_security_manager.la \
1689 1690
		libvirt_conf.la \
		libvirt_util.la \
1691
		../gnulib/lib/libgnu.la
1692
if WITH_DTRACE_PROBES
1693
libvirt_lxc_LDADD += libvirt_probes.lo
1694
endif
1695 1696 1697
if WITH_SECDRIVER_SELINUX
libvirt_lxc_LDADD += $(SELINUX_LIBS)
endif
J
Jiri Denemark 已提交
1698 1699 1700
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_LDADD += $(APPARMOR_LIBS)
endif
1701
libvirt_lxc_CFLAGS =				\
1702
		-I$(top_srcdir)/src/conf	\
1703
		$(AM_CFLAGS)                    \
G
Gao feng 已提交
1704 1705
		$(LIBNL_CFLAGS)			\
		$(FUSE_CFLAGS)
1706 1707 1708 1709
if HAVE_LIBBLKID
libvirt_lxc_CFLAGS += $(BLKID_CFLAGS)
libvirt_lxc_LDADD += $(BLKID_LIBS)
endif
1710 1711 1712
if WITH_SECDRIVER_SELINUX
libvirt_lxc_CFLAGS += $(SELINUX_CFLAGS)
endif
J
Jiri Denemark 已提交
1713 1714 1715
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_CFLAGS += $(APPARMOR_CFLAGS)
endif
1716 1717 1718 1719
endif
endif
EXTRA_DIST += $(LXC_CONTROLLER_SOURCES)

J
Jamie Strandboge 已提交
1720 1721 1722 1723 1724 1725
if WITH_SECDRIVER_APPARMOR
if WITH_LIBVIRTD
libexec_PROGRAMS += virt-aa-helper

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1726
virt_aa_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
J
Jamie Strandboge 已提交
1727
virt_aa_helper_LDADD =						\
C
Chris Lalancette 已提交
1728 1729 1730
		libvirt_conf.la					\
		libvirt_util.la					\
		../gnulib/lib/libgnu.la
1731
if WITH_DTRACE_PROBES
1732
virt_aa_helper_LDADD += libvirt_probes.lo
1733
endif
J
Jamie Strandboge 已提交
1734
virt_aa_helper_CFLAGS =						\
1735 1736
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/security			\
1737
		$(AM_CFLAGS)
J
Jamie Strandboge 已提交
1738 1739 1740 1741
endif
endif
EXTRA_DIST += $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1742
install-data-local:
1743 1744
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/images"
1745
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems"
1746
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/boot"
1747 1748 1749
if HAVE_SANLOCK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock"
endif
1750 1751 1752
if WITH_QEMU
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/qemu"
1753
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt/qemu"
1754
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/qemu"
1755 1756 1757 1758 1759
endif
if WITH_LXC
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lxc"
endif
J
Jim Fehlig 已提交
1760 1761 1762
if WITH_LIBXL
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/libxl"
J
Jim Fehlig 已提交
1763
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/libxl"
J
Jim Fehlig 已提交
1764
endif
1765 1766 1767 1768 1769 1770
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"
1771
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/dnsmasq"
1772
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/network"
1773 1774 1775 1776
	$(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 已提交
1777 1778 1779 1780 1781 1782
	  { 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; }
1783
	test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
E
Eric Blake 已提交
1784
	   ln -s ../default.xml \
1785 1786 1787 1788 1789 1790
	    $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
endif

uninstall-local::
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
1791
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
1792
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
1793 1794 1795
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
1796 1797 1798 1799 1800
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" ||:
1801
endif
1802 1803 1804 1805
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
1806 1807 1808
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1809
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1810
endif
1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823
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 已提交
1824

1825 1826
CLEANFILES += *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda *.i *.s
DISTCLEANFILES += $(GENERATED_SYM_FILES)
1827
MAINTAINERCLEANFILES += $(REMOTE_DRIVER_GENERATED) $(VIR_NET_RPC_GENERATED)