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

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

122 123
BUILT_SOURCES += $(srcdir)/util/virkeymaps.h

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

128
EXTRA_DIST += util/threads-pthread.c util/threads-win32.c
129

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

145 146 147
LOCK_DRIVER_SANLOCK_SOURCES = \
		locking/lock_driver_sanlock.c

148 149
LOCK_DRIVER_SANLOCK_HELPER_SOURCES = \
		locking/sanlock_helper.c
150

151 152
NETDEV_CONF_SOURCES =						\
		conf/netdev_bandwidth_conf.h conf/netdev_bandwidth_conf.c \
153 154
		conf/netdev_vport_profile_conf.h conf/netdev_vport_profile_conf.c \
		conf/netdev_vlan_conf.h conf/netdev_vlan_conf.c
155

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

DOMAIN_EVENT_SOURCES =						\
		conf/domain_event.c conf/domain_event.h
167 168

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

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

179
NWFILTER_CONF_SOURCES =						\
180 181 182
		$(NWFILTER_PARAM_CONF_SOURCES)			\
		conf/nwfilter_conf.c conf/nwfilter_conf.h

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

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

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

202 203
CPU_CONF_SOURCES =						\
		conf/cpu_conf.c conf/cpu_conf.h
204

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

209 210 211 212
# Device Helper APIs
DEVICE_CONF_SOURCES =                                           \
		conf/device_conf.c conf/device_conf.h

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

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

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

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

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

256
EXTRA_DIST +=  $(REMOTE_DRIVER_PROTOCOL) \
257
		$(REMOTE_DRIVER_GENERATED)
258

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

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

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

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

332 333 334
PROTOCOL_STRUCTS = \
	$(srcdir)/remote_protocol-structs \
	$(srcdir)/qemu_protocol-structs \
J
Jiri Denemark 已提交
335 336
	$(srcdir)/virnetprotocol-structs \
	$(srcdir)/virkeepaliveprotocol-structs
337
if WITH_REMOTE
338 339
check-protocol: $(PROTOCOL_STRUCTS) $(PROTOCOL_STRUCTS:structs=struct)

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

357 358
# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
359
		test/test_driver.c test/test_driver.h
360 361 362

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
363 364 365 366 367 368
		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
369
if WITH_XEN_INOTIFY
370
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
371
endif
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 407 408 409 410
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)

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

423
LXC_CONTROLLER_SOURCES =					\
424 425
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_CONTROLLER_GENERATED)			\
426 427
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
428
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
G
Gao feng 已提交
429
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
430
		lxc/lxc_controller.c
431

J
Jamie Strandboge 已提交
432
SECURITY_DRIVER_APPARMOR_HELPER_SOURCES =			\
E
Eric Blake 已提交
433
		$(DATATYPES_SOURCES)				\
J
Jamie Strandboge 已提交
434 435
		security/virt-aa-helper.c

436 437 438
PHYP_DRIVER_SOURCES =						\
		phyp/phyp_driver.c phyp/phyp_driver.h

439
OPENVZ_DRIVER_SOURCES =						\
440
		openvz/openvz_conf.c openvz/openvz_conf.h	\
441 442
		openvz/openvz_driver.c openvz/openvz_driver.h   \
		openvz/openvz_util.c openvz/openvz_util.h
443

E
Eric Blake 已提交
444
VMWARE_DRIVER_SOURCES =						\
445
		vmware/vmware_driver.c vmware/vmware_driver.h	\
446 447
		vmware/vmware_conf.c vmware/vmware_conf.h

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

E
Eric Blake 已提交
458
VBOX_DRIVER_EXTRA_DIST =					\
459 460 461
		vbox/vbox_tmpl.c vbox/README			\
		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
462

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

O
Osier Yang 已提交
483
XENAPI_DRIVER_SOURCES =						\
484
		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
O
Osier Yang 已提交
485
		xenapi/xenapi_driver_private.h			\
486 487
		xenapi/xenapi_utils.c xenapi/xenapi_utils.h

J
Jim Fehlig 已提交
488 489 490 491
LIBXL_DRIVER_SOURCES =						\
		libxl/libxl_conf.c libxl/libxl_conf.h		\
		libxl/libxl_driver.c libxl/libxl_driver.h

492
UML_DRIVER_SOURCES =						\
D
Daniel P. Berrange 已提交
493 494
		uml/uml_conf.c uml/uml_conf.h			\
		uml/uml_driver.c uml/uml_driver.h
495

O
Osier Yang 已提交
496 497 498 499 500 501
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	\
502
		esx/esx_storage_backend_vmfs.c esx/esx_storage_backend_vmfs.h	\
503
		esx/esx_storage_backend_iscsi.c esx/esx_storage_backend_iscsi.h	\
O
Osier Yang 已提交
504
		esx/esx_device_monitor.c esx/esx_device_monitor.h	\
505
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
506 507 508 509
		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		\
510
		esx/esx_vi_types.c esx/esx_vi_types.h
511

512
ESX_DRIVER_GENERATED =							\
513 514
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
515
		esx/esx_vi_methods.generated.macro			\
516 517 518 519 520
		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			\
521 522 523
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
524

O
Osier Yang 已提交
525
ESX_DRIVER_EXTRA_DIST =							\
526 527 528 529 530
		esx/README						\
		esx/esx_vi_generator.input				\
		esx/esx_vi_generator.py					\
		$(ESX_DRIVER_GENERATED)

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

565
NETWORK_DRIVER_SOURCES =					\
566
		network/bridge_driver.h network/bridge_driver.c
567

568 569 570 571
INTERFACE_DRIVER_SOURCES =

if WITH_INTERFACE
INTERFACE_DRIVER_SOURCES +=					\
572 573
		interface/interface_driver.h        \
		interface/interface_driver.c
574 575 576 577

if WITH_NETCF
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_netcf.c
578
endif
579 580 581 582 583
if HAVE_UDEV
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_udev.c
endif
endif
584

585
SECRET_DRIVER_SOURCES =						\
586
		secret/secret_driver.h secret/secret_driver.c
587

588
# Storage backend specific impls
O
Osier Yang 已提交
589 590
STORAGE_DRIVER_SOURCES =						\
		storage/storage_driver.h storage/storage_driver.c	\
591
		storage/storage_backend.h storage/storage_backend.c
592 593

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

596
STORAGE_DRIVER_LVM_SOURCES =					\
O
Osier Yang 已提交
597
		storage/storage_backend_logical.h		\
598
		storage/storage_backend_logical.c
599 600

STORAGE_DRIVER_ISCSI_SOURCES =					\
601
		storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
602

603
STORAGE_DRIVER_SCSI_SOURCES =					\
604
		storage/storage_backend_scsi.h storage/storage_backend_scsi.c
605

D
Dave Allan 已提交
606
STORAGE_DRIVER_MPATH_SOURCES =					\
607
		storage/storage_backend_mpath.h storage/storage_backend_mpath.c
D
Dave Allan 已提交
608

609
STORAGE_DRIVER_DISK_SOURCES =					\
610
		storage/storage_backend_disk.h storage/storage_backend_disk.c
611

612 613 614
STORAGE_DRIVER_RBD_SOURCES =					\
		storage/storage_backend_rbd.h storage/storage_backend_rbd.c

615 616 617
STORAGE_DRIVER_SHEEPDOG_SOURCES =				\
		storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c

618
STORAGE_HELPER_DISK_SOURCES =					\
619
		storage/parthelper.c
620

621 622 623
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

624
# Network filters
O
Osier Yang 已提交
625
NWFILTER_DRIVER_SOURCES =						\
626
		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
627 628
		nwfilter/nwfilter_gentech_driver.c			\
		nwfilter/nwfilter_gentech_driver.h			\
S
Stefan Berger 已提交
629 630
		nwfilter/nwfilter_dhcpsnoop.c				\
		nwfilter/nwfilter_dhcpsnoop.h				\
631
		nwfilter/nwfilter_ebiptables_driver.c			\
632 633 634
		nwfilter/nwfilter_ebiptables_driver.h			\
		nwfilter/nwfilter_learnipaddr.c				\
		nwfilter/nwfilter_learnipaddr.h
635

636

637
# Security framework and drivers for various models
O
Osier Yang 已提交
638 639 640 641 642
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		\
643
		security/security_manager.h security/security_manager.c
644

645
SECURITY_DRIVER_SELINUX_SOURCES =				\
646
		security/security_selinux.h security/security_selinux.c
647

J
Jamie Strandboge 已提交
648 649 650
SECURITY_DRIVER_APPARMOR_SOURCES =				\
		security/security_apparmor.h security/security_apparmor.c

651

652
NODE_DEVICE_DRIVER_SOURCES =					\
O
Osier Yang 已提交
653 654
		node_device/node_device_driver.c		\
		node_device/node_device_driver.h		\
655
		node_device/node_device_linux_sysfs.c
656 657

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
658
		node_device/node_device_hal.c			\
659
		node_device/node_device_hal.h
660

661
NODE_DEVICE_DRIVER_UDEV_SOURCES =				\
D
Daniel Veillard 已提交
662 663
		node_device/node_device_udev.c			\
		node_device/node_device_udev.h
664

J
Jiri Denemark 已提交
665 666 667 668
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 已提交
669
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
670
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
671
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
672
		cpu/cpu_powerpc.c cpu/cpu_ppc_data.h
673

674 675 676
VMX_SOURCES =							\
		vmx/vmx.c vmx/vmx.h

677 678
XENXS_SOURCES =							\
		xenxs/xenxs_private.h				\
679 680
		xenxs/xen_sxpr.c xenxs/xen_sxpr.h		\
		xenxs/xen_xm.c xenxs/xen_xm.h
681

J
Jiri Denemark 已提交
682 683
pkgdata_DATA =	cpu/cpu_map.xml

E
Eric Blake 已提交
684
EXTRA_DIST +=	$(pkgdata_DATA)
685

686 687 688 689 690 691
#########################
#
# Build up list of libvirt.la source files based on configure conditions
#
# First deal with sources usable in non-daemon context

692
noinst_LTLIBRARIES = libvirt_util.la
693 694
libvirt_la_LIBADD = $(libvirt_la_BUILT_LIBADD)
libvirt_la_BUILT_LIBADD = libvirt_util.la
695 696
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)
697
libvirt_util_la_CFLAGS = $(CAPNG_CFLAGS) $(YAJL_CFLAGS) $(LIBNL_CFLAGS) \
698
		$(AM_CFLAGS) $(AUDIT_CFLAGS) $(DEVMAPPER_CFLAGS) \
E
Eric Blake 已提交
699
		$(DBUS_CFLAGS) $(LDEXP_LIBM)
700
libvirt_util_la_LIBADD = $(CAPNG_LIBS) $(YAJL_LIBS) $(LIBNL_LIBS) \
701
		$(THREAD_LIBS) $(AUDIT_LIBS) $(DEVMAPPER_LIBS) \
702
		$(LIB_CLOCK_GETTIME) $(DBUS_LIBS) $(MSCOM_LIBS) $(LIBXML_LIBS)
703

704 705

noinst_LTLIBRARIES += libvirt_conf.la
706
libvirt_la_BUILT_LIBADD += libvirt_conf.la
707
libvirt_conf_la_SOURCES = $(CONF_SOURCES)
708 709
libvirt_conf_la_CFLAGS = $(AM_CFLAGS)
libvirt_conf_la_LDFLAGS = $(AM_LDFLAGS)
710

J
Jiri Denemark 已提交
711
noinst_LTLIBRARIES += libvirt_cpu.la
712
libvirt_la_BUILT_LIBADD += libvirt_cpu.la
J
Jiri Denemark 已提交
713
libvirt_cpu_la_CFLAGS = \
714
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
J
Jiri Denemark 已提交
715 716
libvirt_cpu_la_SOURCES = $(CPU_SOURCES)

717 718 719 720
if WITH_VMX
noinst_LTLIBRARIES += libvirt_vmx.la
libvirt_la_BUILT_LIBADD += libvirt_vmx.la
libvirt_vmx_la_CFLAGS = \
721
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
722 723 724
libvirt_vmx_la_SOURCES = $(VMX_SOURCES)
endif

725
if WITH_XENXS
726 727 728
noinst_LTLIBRARIES += libvirt_xenxs.la
libvirt_la_BUILT_LIBADD += libvirt_xenxs.la
libvirt_xenxs_la_CFLAGS = \
729
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
730 731 732
libvirt_xenxs_la_SOURCES = $(XENXS_SOURCES)
endif

733

734
noinst_LTLIBRARIES += libvirt_driver.la
735
libvirt_la_BUILT_LIBADD += libvirt_driver.la
736
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
737

M
Matthias Bolte 已提交
738
libvirt_driver_la_CFLAGS = $(NUMACTL_CFLAGS) $(GNUTLS_CFLAGS) \
739
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
740
libvirt_driver_la_LIBADD = $(NUMACTL_LIBS) $(GNUTLS_LIBS) $(DLOPEN_LIBS)
741

742
USED_SYM_FILES = libvirt_private.syms
743

744
if WITH_TEST
745
noinst_LTLIBRARIES += libvirt_driver_test.la
746
libvirt_la_BUILT_LIBADD += libvirt_driver_test.la
747
libvirt_driver_test_la_CFLAGS = \
748
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
749
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
750 751 752
endif

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

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

770 771
endif WITH_REMOTE

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

776
%protocol.h: %protocol.x $(srcdir)/rpc/genprotocol.pl
777
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -h \
E
Eric Blake 已提交
778
	       $< $@
779

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

libvirt_driver_xen_impl_la_CFLAGS =					\
795
		$(XEN_CFLAGS)					\
796 797
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
798
		$(AM_CFLAGS)
E
Eric Blake 已提交
799 800 801
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)
802 803
endif

804 805
if WITH_PHYP
noinst_LTLIBRARIES += libvirt_driver_phyp.la
806
libvirt_la_BUILT_LIBADD += libvirt_driver_phyp.la
807
libvirt_driver_phyp_la_LIBADD = $(LIBSSH2_LIBS)
808
libvirt_driver_phyp_la_CFLAGS = $(LIBSSH2_CFLAGS) \
809
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
810 811 812
libvirt_driver_phyp_la_SOURCES = $(PHYP_DRIVER_SOURCES)
endif

813
if WITH_OPENVZ
814
noinst_LTLIBRARIES += libvirt_driver_openvz.la
815
libvirt_la_BUILT_LIBADD += libvirt_driver_openvz.la
816
libvirt_driver_openvz_la_CFLAGS = \
817
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
818
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
819 820
endif

821 822 823 824
if WITH_VMWARE
noinst_LTLIBRARIES += libvirt_driver_vmware.la
libvirt_la_BUILT_LIBADD += libvirt_driver_vmware.la
libvirt_driver_vmware_la_CFLAGS = \
825
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
826 827 828
libvirt_driver_vmware_la_SOURCES = $(VMWARE_DRIVER_SOURCES)
endif

829 830
if WITH_VBOX
noinst_LTLIBRARIES += libvirt_driver_vbox.la
831
libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
832
libvirt_driver_vbox_la_CFLAGS = \
833
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
834
libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
835 836 837
libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif

838 839
if WITH_XENAPI
noinst_LTLIBRARIES += libvirt_driver_xenapi.la
840
libvirt_la_BUILT_LIBADD += libvirt_driver_xenapi.la
841
libvirt_driver_xenapi_la_CFLAGS = $(LIBXENSERVER_CFLAGS) $(LIBCURL_CFLAGS) \
842
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
843
libvirt_driver_xenapi_la_LDFLAGS = $(AM_LDFLAGS)
844
libvirt_driver_xenapi_la_LIBADD = $(LIBXENSERVER_LIBS) $(LIBCURL_LIBS)
845 846 847
libvirt_driver_xenapi_la_SOURCES = $(XENAPI_DRIVER_SOURCES)
endif

J
Jim Fehlig 已提交
848
if WITH_LIBXL
E
Eric Blake 已提交
849 850 851
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 已提交
852 853
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
854 855
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
856 857 858 859 860
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 已提交
861 862

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
863 864
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
865
		$(AM_CFLAGS)
E
Eric Blake 已提交
866 867 868
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 已提交
869 870
endif

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

libvirt_driver_qemu_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
886
                                $(GNUTLS_CFLAGS) \
S
Serge Hallyn 已提交
887
                                $(LIBNL_CFLAGS) \
888
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
889 890
libvirt_driver_qemu_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_qemu_impl_la_LIBADD = $(NUMACTL_LIBS) \
891 892
				$(CAPNG_LIBS) \
                                $(GNUTLS_LIBS) \
S
Serge Hallyn 已提交
893
				$(LIBNL_LIBS)
E
Eric Blake 已提交
894
libvirt_driver_qemu_impl_la_SOURCES = $(QEMU_DRIVER_SOURCES)
895

A
Amy Griffis 已提交
896
conf_DATA += qemu/qemu.conf
897

898
augeas_DATA += qemu/libvirtd_qemu.aug
899 900
augeastest_DATA += test_libvirtd_qemu.aug
CLEANFILES += test_libvirtd_qemu.aug
901

902
endif
903
EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug \
904
		qemu/test_libvirtd_qemu.aug.in qemu/THREADS.txt
905

906 907

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

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

conf_DATA += lxc/lxc.conf

940
augeas_DATA += lxc/libvirtd_lxc.aug
941 942
augeastest_DATA += test_libvirtd_lxc.aug
CLEANFILES += test_libvirtd_lxc.aug
943

944
endif
945
EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug.in
946

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

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
962
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
963 964 965
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)
966
endif
967

D
Daniel Veillard 已提交
968

969
BUILT_SOURCES += $(ESX_DRIVER_GENERATED)
D
Daniel Veillard 已提交
970

971 972
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

E
Eric Blake 已提交
973 974
EXTRA_DIST += $(ESX_GENERATED_STAMP)

975 976 977
$(ESX_DRIVER_GENERATED): $(ESX_GENERATED_STAMP)

$(ESX_GENERATED_STAMP): $(srcdir)/esx/esx_vi_generator.input \
978
                         $(srcdir)/esx/esx_vi_generator.py
979 980 981 982 983
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/esx/esx_vi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
984

985 986
if WITH_ESX
noinst_LTLIBRARIES += libvirt_driver_esx.la
987
libvirt_la_BUILT_LIBADD += libvirt_driver_esx.la
988
libvirt_driver_esx_la_CFLAGS = $(LIBCURL_CFLAGS) \
989
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
990
libvirt_driver_esx_la_LDFLAGS = $(AM_LDFLAGS)
991
libvirt_driver_esx_la_LIBADD = $(LIBCURL_LIBS)
992
libvirt_driver_esx_la_SOURCES = $(ESX_DRIVER_SOURCES)
993
libvirt_driver_esx_la_DEPENDENCIES = $(ESX_DRIVER_GENERATED)
994 995
endif

M
Matthias Bolte 已提交
996

997 998
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

999 1000
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

E
Eric Blake 已提交
1001 1002
EXTRA_DIST += $(HYPERV_GENERATED_STAMP)

1003 1004 1005
$(HYPERV_DRIVER_GENERATED): $(HYPERV_GENERATED_STAMP)

$(HYPERV_GENERATED_STAMP): $(srcdir)/hyperv/hyperv_wmi_generator.input \
1006
                            $(srcdir)/hyperv/hyperv_wmi_generator.py
1007 1008 1009 1010
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/hyperv/hyperv_wmi_generator.py \
	  && touch $@

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

M
Matthias Bolte 已提交
1012 1013 1014 1015
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
1016
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
1017 1018 1019 1020 1021
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 已提交
1022 1023 1024 1025 1026 1027 1028 1029
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

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

libvirt_driver_network_impl_la_CFLAGS = \
1045
		$(LIBNL_CFLAGS) $(DBUS_CFLAGS) \
1046
		-I$(top_srcdir)/src/conf $(AM_CFLAGS) $(DBUS_CFLAGS)
E
Eric Blake 已提交
1047
libvirt_driver_network_impl_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
1048
endif
1049 1050 1051
EXTRA_DIST += network/default.xml


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

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

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

1129
if WITH_STORAGE_LVM
1130
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
1131 1132
endif

1133
if WITH_STORAGE_ISCSI
1134
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
1135 1136
endif

1137
if WITH_STORAGE_SCSI
1138
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SCSI_SOURCES)
1139 1140
endif

D
Dave Allan 已提交
1141
if WITH_STORAGE_MPATH
1142 1143 1144
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 已提交
1145 1146
endif

1147
if WITH_STORAGE_DISK
1148
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
1149
endif
1150

1151
if WITH_STORAGE_RBD
1152 1153
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_RBD_SOURCES)
libvirt_driver_storage_impl_la_LIBADD += $(LIBRBD_LIBS)
1154 1155
endif

1156
if WITH_STORAGE_SHEEPDOG
1157
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
1158 1159
endif

1160 1161 1162 1163 1164 1165 1166
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
1167
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1168 1169 1170
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

1171
libvirt_driver_nodedev_la_CFLAGS = \
1172
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1173
libvirt_driver_nodedev_la_LDFLAGS = $(AM_LDFLAGS)
1174
libvirt_driver_nodedev_la_LIBADD =
1175

1176 1177 1178
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
1179
libvirt_driver_nodedev_la_LIBADD += $(HAL_LIBS)
1180
endif
1181 1182
if HAVE_UDEV
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_UDEV_SOURCES)
1183
libvirt_driver_nodedev_la_CFLAGS += $(UDEV_CFLAGS) $(PCIACCESS_CFLAGS)
1184
libvirt_driver_nodedev_la_LIBADD += $(UDEV_LIBS) $(PCIACCESS_LIBS)
1185
endif
1186 1187

if WITH_DRIVER_MODULES
1188
libvirt_driver_nodedev_la_LIBADD += ../gnulib/lib/libgnu.la
1189 1190 1191 1192 1193
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


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


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

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

1272 1273 1274 1275 1276 1277
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

1278
AUG_GENTEST = $(PERL) $(top_srcdir)/build-aux/augeas-gentest.pl
1279
EXTRA_DIST += $(top_srcdir)/build-aux/augeas-gentest.pl
1280

1281
if WITH_QEMU
1282 1283
test_libvirtd_qemu.aug: qemu/test_libvirtd_qemu.aug.in \
		$(srcdir)/qemu/qemu.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1284
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/qemu/qemu.conf $< $@
1285

1286
check-augeas-qemu: test_libvirtd_qemu.aug
1287
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1288
	    '$(AUGPARSE)' -I $(srcdir)/qemu test_libvirtd_qemu.aug; \
1289
	fi
1290 1291
else
check-augeas-qemu:
1292
endif
1293

1294
if WITH_LXC
1295 1296
test_libvirtd_lxc.aug: lxc/test_libvirtd_lxc.aug.in \
		$(srcdir)/lxc/lxc.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1297
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/lxc/lxc.conf $< $@
1298

1299
check-augeas-lxc: test_libvirtd_lxc.aug
1300
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1301
	    '$(AUGPARSE)' -I $(srcdir)/lxc test_libvirtd_lxc.aug; \
1302
	fi
1303 1304
else
check-augeas-lxc:
1305
endif
1306

1307
if HAVE_SANLOCK
1308 1309
test_libvirt_sanlock.aug: locking/test_libvirt_sanlock.aug.in \
		locking/qemu-sanlock.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1310
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-sanlock.conf $< $@
1311

1312
check-augeas-sanlock: test_libvirt_sanlock.aug
1313
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1314
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_sanlock.aug; \
1315
	fi
1316 1317 1318
else
check-augeas-sanlock:
endif
1319

1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338
#
# 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.
#

1339
if WITH_DRIVER_MODULES
1340
USED_SYM_FILES += libvirt_driver_modules.syms
1341
endif
1342

1343
if WITH_LINUX
1344
USED_SYM_FILES += libvirt_linux.syms
1345
endif
1346

1347 1348 1349 1350
if WITH_ESX
USED_SYM_FILES += libvirt_esx.syms
endif

1351 1352 1353 1354
if WITH_LIBVIRTD
USED_SYM_FILES += libvirt_daemon.syms
endif

1355 1356 1357 1358
if WITH_OPENVZ
USED_SYM_FILES += libvirt_openvz.syms
endif

1359 1360 1361 1362
if WITH_VMX
USED_SYM_FILES += libvirt_vmx.syms
endif

1363 1364 1365 1366
if WITH_XENXS
USED_SYM_FILES += libvirt_xenxs.syms
endif

E
Eric Blake 已提交
1367 1368 1369 1370
if HAVE_SASL
USED_SYM_FILES += libvirt_sasl.syms
endif

1371 1372 1373 1374
if HAVE_LIBSSH2
USED_SYM_FILES += libvirt_libssh2.syms
endif

1375 1376 1377 1378
if WITH_ATOMIC_OPS_PTHREAD
USED_SYM_FILES += libvirt_atomic.syms
endif

1379 1380 1381
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
1382
  libvirt_atomic.syms		\
1383
  libvirt_driver_modules.syms	\
E
Eric Blake 已提交
1384
  libvirt_daemon.syms		\
1385
  libvirt_linux.syms		\
1386 1387 1388
  libvirt_esx.syms		\
  libvirt_openvz.syms		\
  libvirt_qemu.syms		\
E
Eric Blake 已提交
1389
  libvirt_sasl.syms		\
1390
  libvirt_vmx.syms		\
1391 1392
  libvirt_xenxs.syms	\
  libvirt_libssh2.syms
1393

1394 1395 1396
GENERATED_SYM_FILES = libvirt.syms libvirt.def libvirt_qemu.def

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1397

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

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

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

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

1445
if WITH_DTRACE_PROBES
1446
libvirt_la_BUILT_LIBADD += libvirt_probes.lo
1447
libvirt_la_DEPENDENCIES += libvirt_probes.lo libvirt_probes.o
1448
nodist_libvirt_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1449
if WITH_REMOTE
E
Eric Blake 已提交
1450
nodist_libvirt_driver_remote_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1451
endif WITH_REMOTE
1452 1453 1454
if WITH_DRIVER_MODULES
DTRACE2SYSTEMTAP_FLAGS = --with-modules
endif
1455

1456 1457 1458
BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp

if WITH_QEMU
1459
libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo
1460
nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h
1461
BUILT_SOURCES += libvirt_qemu_probes.h
1462
endif
1463 1464

tapsetdir = $(datadir)/systemtap/tapset
1465
tapset_DATA = libvirt_probes.stp libvirt_qemu_probes.stp libvirt_functions.stp
1466

1467
%_probes.h: %_probes.d
1468 1469
	$(AM_V_GEN)$(DTRACE) -o $@ -h -s $<

E
Eric Blake 已提交
1470
.PRECIOUS: %_probes.o
1471
%_probes.o: %_probes.d
1472 1473
	$(AM_V_GEN)$(DTRACE) -o $@ -G -s $<

1474 1475 1476 1477 1478 1479 1480 1481 1482
%_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 已提交
1483 1484 1485 1486
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1487 1488

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

1491
%_probes.stp: %_probes.d $(srcdir)/dtrace2systemtap.pl $(top_builddir)/config.status
1492
	$(AM_V_GEN)$(PERL) -w $(srcdir)/dtrace2systemtap.pl \
1493
	  $(DTRACE2SYSTEMTAP_FLAGS) $(bindir) $(sbindir) $(libdir) $< > $@
1494

1495
CLEANFILES += libvirt_probes.h libvirt_probes.o libvirt_probes.lo \
1496
              libvirt_qemu_probes.h libvirt_qemu_probes.o \
1497
              libvirt_qemu_probes.lo\
1498 1499
              libvirt_functions.stp libvirt_probes.stp \
              libvirt_qemu_probes.stp
1500 1501
endif

1502
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1503

C
Chris Lalancette 已提交
1504 1505
libvirt_qemu_la_SOURCES = libvirt-qemu.c
libvirt_qemu_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
E
Eric Blake 已提交
1506 1507
			  -version-info $(LIBVIRT_VERSION_INFO) \
			  $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS) \
1508 1509
			  $(AM_LDFLAGS)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
C
Chris Lalancette 已提交
1510
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
E
Eric Blake 已提交
1511
EXTRA_DIST += $(LIBVIRT_QEMU_SYMBOL_FILE)
1512

1513 1514 1515 1516 1517
if HAVE_SANLOCK
lockdriverdir = $(libdir)/libvirt/lock-driver
lockdriver_LTLIBRARIES = sanlock.la

sanlock_la_SOURCES = $(LOCK_DRIVER_SANLOCK_SOURCES)
1518
sanlock_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1519
sanlock_la_LDFLAGS = -module -avoid-version
1520
sanlock_la_LIBADD = -lsanlock_client \
1521 1522 1523
		../gnulib/lib/libgnu.la

augeas_DATA += locking/libvirt_sanlock.aug
1524 1525
augeastest_DATA += test_libvirt_sanlock.aug
CLEANFILES += test_libvirt_sanlock.aug
1526

E
Eric Blake 已提交
1527
locking/%-sanlock.conf: $(srcdir)/locking/sanlock.conf
1528
	$(AM_V_GEN)$(MKDIR_P) locking ; \
1529 1530 1531
	cp $< $@

if WITH_QEMU
E
Eric Blake 已提交
1532
nodist_conf_DATA = locking/qemu-sanlock.conf
1533
BUILT_SOURCES += locking/qemu-sanlock.conf
E
Eric Blake 已提交
1534
DISTCLEANFILES += locking/qemu-sanlock.conf
1535
endif
1536
else
1537
EXTRA_DIST += $(LOCK_DRIVER_SANLOCK_SOURCES)
1538
endif
1539 1540
EXTRA_DIST += locking/sanlock.conf \
	locking/libvirt_sanlock.aug \
1541
	locking/test_libvirt_sanlock.aug.in
1542

1543 1544 1545 1546
noinst_LTLIBRARIES += \
	libvirt-net-rpc.la \
	libvirt-net-rpc-server.la \
	libvirt-net-rpc-client.la
1547

1548
EXTRA_DIST += \
E
Eric Blake 已提交
1549 1550 1551 1552
	dtrace2systemtap.pl \
	rpc/gendispatch.pl \
	rpc/genprotocol.pl \
	rpc/gensystemtap.pl \
J
Jiri Denemark 已提交
1553 1554
	rpc/virnetprotocol.x \
	rpc/virkeepaliveprotocol.x
1555

E
Eric Blake 已提交
1556 1557
VIR_NET_RPC_GENERATED = \
	$(srcdir)/rpc/virnetprotocol.h \
J
Jiri Denemark 已提交
1558 1559 1560
	$(srcdir)/rpc/virnetprotocol.c \
	$(srcdir)/rpc/virkeepaliveprotocol.h \
	$(srcdir)/rpc/virkeepaliveprotocol.c
1561

1562
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1563

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

1601 1602 1603 1604
libvirt_net_rpc_server_la_SOURCES = \
	rpc/virnetserverprogram.h rpc/virnetserverprogram.c \
	rpc/virnetserverservice.h rpc/virnetserverservice.c \
	rpc/virnetserverclient.h rpc/virnetserverclient.c \
1605
	rpc/virnetservermdns.h rpc/virnetservermdns.c \
1606 1607
	rpc/virnetserver.h rpc/virnetserver.c
libvirt_net_rpc_server_la_CFLAGS = \
1608
			$(AVAHI_CFLAGS) \
1609
			$(DBUS_CFLAGS) \
E
Eric Blake 已提交
1610
			$(XDR_CFLAGS) \
J
Jim Fehlig 已提交
1611 1612
			$(AM_CFLAGS) \
			$(POLKIT_CFLAGS)
1613 1614
libvirt_net_rpc_server_la_LDFLAGS = \
			$(AM_LDFLAGS) \
1615
			$(AVAHI_LIBS) \
1616
			$(DBUS_LIBS) \
J
Jim Fehlig 已提交
1617
			$(POLKIT_LIBS) \
1618 1619 1620 1621 1622
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_server_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1623 1624 1625 1626 1627
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 已提交
1628 1629
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1630 1631 1632 1633 1634 1635
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1636

1637 1638
libexec_PROGRAMS =

1639
if WITH_LIBVIRTD
1640 1641 1642 1643 1644 1645
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
1646 1647 1648
if WITH_DTRACE_PROBES
libvirt_iohelper_LDADD += libvirt_probes.lo
endif
1649 1650

libvirt_iohelper_CFLAGS = $(AM_CFLAGS)
1651
endif
1652

1653
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
1654
if WITH_LIBVIRTD
1655
libexec_PROGRAMS += libvirt_parthelper
1656

1657
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
1658
libvirt_parthelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
1659 1660 1661 1662
libvirt_parthelper_LDADD =		\
		$(LIBPARTED_LIBS)	\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la
1663 1664 1665
if WITH_DTRACE_PROBES
libvirt_parthelper_LDADD += libvirt_probes.lo
endif
1666

1667
libvirt_parthelper_CFLAGS = $(LIBPARTED_CFLAGS) $(AM_CFLAGS)
R
Richard W.M. Jones 已提交
1668
endif
1669
endif
1670 1671
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

1672

1673 1674 1675 1676 1677 1678 1679 1680 1681
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

1682 1683 1684 1685 1686 1687
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

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

J
Jamie Strandboge 已提交
1728 1729 1730 1731 1732 1733
if WITH_SECDRIVER_APPARMOR
if WITH_LIBVIRTD
libexec_PROGRAMS += virt-aa-helper

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1734
virt_aa_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
J
Jamie Strandboge 已提交
1735
virt_aa_helper_LDADD =						\
C
Chris Lalancette 已提交
1736 1737 1738
		libvirt_conf.la					\
		libvirt_util.la					\
		../gnulib/lib/libgnu.la
1739
if WITH_DTRACE_PROBES
1740
virt_aa_helper_LDADD += libvirt_probes.lo
1741
endif
J
Jamie Strandboge 已提交
1742
virt_aa_helper_CFLAGS =						\
1743 1744
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/security			\
1745
		$(AM_CFLAGS)
J
Jamie Strandboge 已提交
1746 1747 1748 1749
endif
endif
EXTRA_DIST += $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

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

uninstall-local::
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
1802
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
1803
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
1804 1805 1806
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
1807 1808 1809 1810 1811
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" ||:
1812
endif
1813 1814 1815 1816
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
1817 1818 1819
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1820
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1821
endif
1822 1823 1824 1825
if WITH_UML
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/uml" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/uml" ||:
endif
1826 1827 1828
if WITH_XEN
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/xen" ||:
endif
1829 1830 1831 1832 1833 1834 1835 1836 1837
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 已提交
1838

1839 1840
CLEANFILES += *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda *.i *.s
DISTCLEANFILES += $(GENERATED_SYM_FILES)
1841
MAINTAINERCLEANFILES += $(REMOTE_DRIVER_GENERATED) $(VIR_NET_RPC_GENERATED)