Makefile.am 64.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           \
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
LOCK_PROTOCOL_GENERATED = \
152 153
		$(srcdir)/locking/lock_protocol.h \
		$(srcdir)/locking/lock_protocol.c \
154 155
		$(NULL)

156 157 158
LOCK_PROTOCOL = $(srcdir)/locking/lock_protocol.x
EXTRA_DIST += $(LOCK_PROTOCOL) \
	$(LOCK_PROTOCOL_GENERATED)
159 160 161
BUILT_SOURCES += $(LOCK_PROTOCOL_GENERATED)
MAINTAINERCLEANFILES += $(LOCK_PROTOCOL_GENERATED)

162
LOCK_DAEMON_GENERATED = \
163
		$(srcdir)/locking/lock_daemon_dispatch_stubs.h
164 165 166
		$(NULL)

BUILT_SOURCES += $(LOCK_DAEMON_GENERATED)
167
EXTRA_DIST += $(LOCK_DAEMON_GENERATED)
168 169
MAINTAINERCLEANFILES += $(LOCK_DAEMON_GENERATED)

170 171 172 173
LOCK_DRIVER_LOCKD_SOURCES = \
		locking/lock_driver_lockd.c \
		$(NULL)

174 175 176 177 178
LOCK_DAEMON_SOURCES = \
		locking/lock_daemon.h \
		locking/lock_daemon.c \
		locking/lock_daemon_config.h \
		locking/lock_daemon_config.c \
179 180
		locking/lock_daemon_dispatch.c \
		locking/lock_daemon_dispatch.h \
181 182
		$(NULL)

183 184 185 186 187
$(srcdir)/locking/lock_daemon_dispatch_stubs.h: $(LOCK_PROTOCOL) \
		$(srcdir)/rpc/gendispatch.pl Makefile.am
	$(AM_V_GEN)perl -w $(srcdir)/rpc/gendispatch.pl \
	    -b virLockSpaceProtocol VIR_LOCK_SPACE_PROTOCOL \
	    $(LOCK_PROTOCOL) > $@
188 189


190 191
NETDEV_CONF_SOURCES =						\
		conf/netdev_bandwidth_conf.h conf/netdev_bandwidth_conf.c \
192 193
		conf/netdev_vport_profile_conf.h conf/netdev_vport_profile_conf.c \
		conf/netdev_vlan_conf.h conf/netdev_vlan_conf.c
194

195
# XML configuration format handling sources
196 197
# Domain driver generic impl APIs
DOMAIN_CONF_SOURCES =						\
198
		conf/capabilities.c conf/capabilities.h		\
199
		conf/domain_conf.c conf/domain_conf.h		\
200
		conf/domain_audit.c conf/domain_audit.h		\
201 202
		conf/domain_nwfilter.c conf/domain_nwfilter.h	\
		conf/snapshot_conf.c conf/snapshot_conf.h
203 204 205

DOMAIN_EVENT_SOURCES =						\
		conf/domain_event.c conf/domain_event.h
206 207

# Network driver generic impl APIs
208
NETWORK_CONF_SOURCES =						\
209
		conf/network_conf.c conf/network_conf.h
210

211 212
# Network filter driver generic impl APIs
NWFILTER_PARAM_CONF_SOURCES =					\
213
		conf/nwfilter_params.c conf/nwfilter_params.h	\
214 215
		conf/nwfilter_ipaddrmap.c			\
		conf/nwfilter_ipaddrmap.h			\
216
		conf/nwfilter_conf.h
217

218
NWFILTER_CONF_SOURCES =						\
219 220 221
		$(NWFILTER_PARAM_CONF_SOURCES)			\
		conf/nwfilter_conf.c conf/nwfilter_conf.h

222
# Storage driver generic impl APIs
223 224
STORAGE_CONF_SOURCES =                                         \
		conf/storage_conf.h conf/storage_conf.c
225

226
# Interface driver generic impl APIs
227 228
INTERFACE_CONF_SOURCES =                                       \
		conf/interface_conf.c conf/interface_conf.h
229

230
# Secret driver generic impl APIs
231 232 233 234 235 236 237 238 239 240
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

241 242
CPU_CONF_SOURCES =						\
		conf/cpu_conf.c conf/cpu_conf.h
243

244 245 246
# Safe console handling helper APIs
CONSOLE_CONF_SOURCES =						\
		conf/virconsole.c conf/virconsole.h
247

248 249 250 251
# Device Helper APIs
DEVICE_CONF_SOURCES =                                           \
		conf/device_conf.c conf/device_conf.h

252
CONF_SOURCES =							\
253
		$(NETDEV_CONF_SOURCES)				\
254 255 256
		$(DOMAIN_CONF_SOURCES)				\
		$(DOMAIN_EVENT_SOURCES)				\
		$(NETWORK_CONF_SOURCES)				\
257
		$(NWFILTER_CONF_SOURCES)			\
258 259 260 261
		$(NODE_DEVICE_CONF_SOURCES)			\
		$(STORAGE_CONF_SOURCES)				\
		$(ENCRYPTION_CONF_SOURCES)			\
		$(INTERFACE_CONF_SOURCES)			\
262
		$(SECRET_CONF_SOURCES)				\
263
		$(CPU_CONF_SOURCES)				\
264 265
		$(CONSOLE_CONF_SOURCES)				\
		$(DEVICE_CONF_SOURCES)
266

267
# The remote RPC driver, covering domains, storage, networks, etc
268
REMOTE_DRIVER_GENERATED = \
E
Eric Blake 已提交
269 270 271 272 273 274 275 276 277
		$(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
278
REMOTE_DRIVER_PROTOCOL = $(REMOTE_PROTOCOL) $(QEMU_PROTOCOL)
279

280 281
$(srcdir)/remote/remote_client_bodies.h: $(srcdir)/rpc/gendispatch.pl \
		$(REMOTE_PROTOCOL)
282
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
283
	  -k remote REMOTE $(REMOTE_PROTOCOL) > $@
284

285 286
$(srcdir)/remote/qemu_client_bodies.h: $(srcdir)/rpc/gendispatch.pl \
		$(QEMU_PROTOCOL)
287
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
288
	  -k qemu QEMU $(QEMU_PROTOCOL) > $@
289 290 291 292 293

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

295
EXTRA_DIST +=  $(REMOTE_DRIVER_PROTOCOL) \
296
		$(REMOTE_DRIVER_GENERATED)
297

298 299 300 301 302 303 304 305 306 307
# 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
308 309 310 311

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

320
PDWTAGS = \
321
	$(AM_V_GEN)if (pdwtags --help) > /dev/null 2>&1; then		\
322 323 324 325 326
	  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								\
327
	    $(PERL) -0777 -n						\
328
		-e 'foreach my $$p (split m!\n*(?:$(r1)|$(r2))\n!) {'	\
329 330
		-e '  if ($$p =~ /^(struct|enum) $(struct_prefix)/ ||'	\
		-e '      $$p =~ /^enum {/) {'				\
331 332 333
		-e '    $$p =~ s!\t*/\*.*?\*/!!sg;'			\
		-e '    $$p =~ s!\s+\n!\n!sg;'				\
		-e '    $$p =~ s!\s+$$!!;'				\
334
		-e '    $$p =~ s!\t!        !g;'			\
335 336 337 338
		-e '    print "$$p\n";'					\
		-e '    $$n++;'						\
		-e '  }'						\
		-e '}'							\
339 340 341
		-e 'BEGIN {'						\
		-e '  print "/* -*- c -*- */\n";'			\
		-e '}'							\
342
		-e 'END {'						\
343
		-e '  if ($$n < 1) {'					\
344 345 346 347 348 349
		-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 '}'							\
350 351
		< $(@F)-t1 > $(@F)-t3;					\
	    case $$? in 8) rm -f $(@F)-t?; exit 0;; 0) ;; *) exit 1;; esac;\
352
	    diff -u $(@)s $(@F)-t3; st=$$?; rm -f $(@F)-t?; exit $$st;	\
353
	  fi;								\
354
	else								\
355 356
	  echo 'WARNING: you lack pdwtags; skipping the $@ test' >&2;	\
	  echo 'WARNING: install the dwarves package to get pdwtags' >&2; \
357
	fi
358

359
# .libs/libvirt.so is built by libtool as a side-effect of the Makefile
360 361
# rule for libvirt.la.  However, checking symbols relies on Linux ELF layout
if WITH_LINUX
362 363 364
check-symfile: libvirt.syms libvirt.la
	$(AM_V_GEN)$(PERL) $(srcdir)/check-symfile.pl libvirt.syms \
	  .libs/libvirt.so
365 366 367
else
check-symfile:
endif
368 369
check-symsorting:
	$(AM_V_GEN)$(PERL) $(srcdir)/check-symsorting.pl $(USED_SYM_FILES)
370

371 372 373
PROTOCOL_STRUCTS = \
	$(srcdir)/remote_protocol-structs \
	$(srcdir)/qemu_protocol-structs \
J
Jiri Denemark 已提交
374 375
	$(srcdir)/virnetprotocol-structs \
	$(srcdir)/virkeepaliveprotocol-structs
376
if WITH_REMOTE
377 378
check-protocol: $(PROTOCOL_STRUCTS) $(PROTOCOL_STRUCTS:structs=struct)

379 380
# 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.
381 382
$(srcdir)/remote_protocol-struct $(srcdir)/qemu_protocol-struct: \
		$(srcdir)/%-struct: libvirt_driver_remote_la-%.lo
383
	$(PDWTAGS)
384 385
$(srcdir)/virnetprotocol-struct $(srcdir)/virkeepaliveprotocol-struct: \
		$(srcdir)/%-struct: libvirt_net_rpc_la-%.lo
386
	$(PDWTAGS)
387
else !WITH_REMOTE
388 389 390
# The $(PROTOCOL_STRUCTS) files must live in git, because they cannot be
# re-generated when configured --without-remote.
check-protocol:
391
endif
392
EXTRA_DIST += $(PROTOCOL_STRUCTS) check-symfile.pl
393
check-local: check-protocol check-symfile check-symsorting
394
.PHONY: check-protocol $(PROTOCOL_STRUCTS:structs=struct)
395

396 397
# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
398
		test/test_driver.c test/test_driver.h
399 400 401

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
402 403 404 405 406 407
		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
408
if WITH_XEN_INOTIFY
409
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
410
endif
411

412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449
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)

450
LXC_DRIVER_SOURCES =						\
451 452
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_MONITOR_GENERATED)			\
453 454
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
455
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
456
		lxc/lxc_domain.c lxc/lxc_domain.h		\
457
		lxc/lxc_monitor.c lxc/lxc_monitor.h		\
458
		lxc/lxc_process.c lxc/lxc_process.h		\
G
Gao feng 已提交
459
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
460
		lxc/lxc_driver.c lxc/lxc_driver.h
461

462
LXC_CONTROLLER_SOURCES =					\
463 464
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_CONTROLLER_GENERATED)			\
465 466
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
467
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
G
Gao feng 已提交
468
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
469
		lxc/lxc_controller.c
470

J
Jamie Strandboge 已提交
471
SECURITY_DRIVER_APPARMOR_HELPER_SOURCES =			\
E
Eric Blake 已提交
472
		$(DATATYPES_SOURCES)				\
J
Jamie Strandboge 已提交
473 474
		security/virt-aa-helper.c

475 476 477
PHYP_DRIVER_SOURCES =						\
		phyp/phyp_driver.c phyp/phyp_driver.h

478
OPENVZ_DRIVER_SOURCES =						\
479
		openvz/openvz_conf.c openvz/openvz_conf.h	\
480 481
		openvz/openvz_driver.c openvz/openvz_driver.h   \
		openvz/openvz_util.c openvz/openvz_util.h
482

E
Eric Blake 已提交
483
VMWARE_DRIVER_SOURCES =						\
484
		vmware/vmware_driver.c vmware/vmware_driver.h	\
485 486
		vmware/vmware_conf.c vmware/vmware_conf.h

487
VBOX_DRIVER_SOURCES =						\
E
Eric Blake 已提交
488 489 490 491 492 493
	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			\
494 495
	vbox/vbox_V4_0.c vbox/vbox_CAPI_v4_0.h			\
	vbox/vbox_V4_1.c vbox/vbox_CAPI_v4_1.h
496

E
Eric Blake 已提交
497
VBOX_DRIVER_EXTRA_DIST =					\
498 499 500
		vbox/vbox_tmpl.c vbox/README			\
		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
501

O
Osier Yang 已提交
502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519
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				\
520
		qemu/qemu_bridge_filter.h
R
Richard W.M. Jones 已提交
521

O
Osier Yang 已提交
522
XENAPI_DRIVER_SOURCES =						\
523
		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
O
Osier Yang 已提交
524
		xenapi/xenapi_driver_private.h			\
525 526
		xenapi/xenapi_utils.c xenapi/xenapi_utils.h

J
Jim Fehlig 已提交
527 528 529 530
LIBXL_DRIVER_SOURCES =						\
		libxl/libxl_conf.c libxl/libxl_conf.h		\
		libxl/libxl_driver.c libxl/libxl_driver.h

531
UML_DRIVER_SOURCES =						\
D
Daniel P. Berrange 已提交
532 533
		uml/uml_conf.c uml/uml_conf.h			\
		uml/uml_driver.c uml/uml_driver.h
534

O
Osier Yang 已提交
535 536 537 538 539 540
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	\
541
		esx/esx_storage_backend_vmfs.c esx/esx_storage_backend_vmfs.h	\
542
		esx/esx_storage_backend_iscsi.c esx/esx_storage_backend_iscsi.h	\
O
Osier Yang 已提交
543
		esx/esx_device_monitor.c esx/esx_device_monitor.h	\
544
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
545 546 547 548
		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		\
549
		esx/esx_vi_types.c esx/esx_vi_types.h
550

551
ESX_DRIVER_GENERATED =							\
552 553
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
554
		esx/esx_vi_methods.generated.macro			\
555 556 557 558 559
		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			\
560 561 562
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
563

O
Osier Yang 已提交
564
ESX_DRIVER_EXTRA_DIST =							\
565 566 567 568 569
		esx/README						\
		esx/esx_vi_generator.input				\
		esx/esx_vi_generator.py					\
		$(ESX_DRIVER_GENERATED)

O
Osier Yang 已提交
570
HYPERV_DRIVER_SOURCES =									\
M
Matthias Bolte 已提交
571 572 573 574 575 576 577
		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		\
578
		hyperv/hyperv_nwfilter_driver.c hyperv/hyperv_nwfilter_driver.h		\
579
		hyperv/hyperv_util.c hyperv/hyperv_util.h				\
580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595
		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 已提交
596 597
PARALLELS_DRIVER_SOURCES =					\
		parallels/parallels_driver.h			\
598
		parallels/parallels_driver.c			\
599 600
		parallels/parallels_utils.c			\
		parallels/parallels_utils.h			\
D
Dmitry Guryanov 已提交
601 602
		parallels/parallels_storage.c		\
		parallels/parallels_network.c
D
Dmitry Guryanov 已提交
603

604
NETWORK_DRIVER_SOURCES =					\
605
		network/bridge_driver.h network/bridge_driver.c
606

607 608 609 610
INTERFACE_DRIVER_SOURCES =

if WITH_INTERFACE
INTERFACE_DRIVER_SOURCES +=					\
611 612
		interface/interface_driver.h        \
		interface/interface_driver.c
613 614 615 616

if WITH_NETCF
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_netcf.c
617
endif
618 619 620 621 622
if HAVE_UDEV
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_udev.c
endif
endif
623

624
SECRET_DRIVER_SOURCES =						\
625
		secret/secret_driver.h secret/secret_driver.c
626

627
# Storage backend specific impls
O
Osier Yang 已提交
628 629
STORAGE_DRIVER_SOURCES =						\
		storage/storage_driver.h storage/storage_driver.c	\
630
		storage/storage_backend.h storage/storage_backend.c
631 632

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

635
STORAGE_DRIVER_LVM_SOURCES =					\
O
Osier Yang 已提交
636
		storage/storage_backend_logical.h		\
637
		storage/storage_backend_logical.c
638 639

STORAGE_DRIVER_ISCSI_SOURCES =					\
640
		storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
641

642
STORAGE_DRIVER_SCSI_SOURCES =					\
643
		storage/storage_backend_scsi.h storage/storage_backend_scsi.c
644

D
Dave Allan 已提交
645
STORAGE_DRIVER_MPATH_SOURCES =					\
646
		storage/storage_backend_mpath.h storage/storage_backend_mpath.c
D
Dave Allan 已提交
647

648
STORAGE_DRIVER_DISK_SOURCES =					\
649
		storage/storage_backend_disk.h storage/storage_backend_disk.c
650

651 652 653
STORAGE_DRIVER_RBD_SOURCES =					\
		storage/storage_backend_rbd.h storage/storage_backend_rbd.c

654 655 656
STORAGE_DRIVER_SHEEPDOG_SOURCES =				\
		storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c

657
STORAGE_HELPER_DISK_SOURCES =					\
658
		storage/parthelper.c
659

660 661 662
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

663
# Network filters
O
Osier Yang 已提交
664
NWFILTER_DRIVER_SOURCES =						\
665
		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
666 667
		nwfilter/nwfilter_gentech_driver.c			\
		nwfilter/nwfilter_gentech_driver.h			\
S
Stefan Berger 已提交
668 669
		nwfilter/nwfilter_dhcpsnoop.c				\
		nwfilter/nwfilter_dhcpsnoop.h				\
670
		nwfilter/nwfilter_ebiptables_driver.c			\
671 672 673
		nwfilter/nwfilter_ebiptables_driver.h			\
		nwfilter/nwfilter_learnipaddr.c				\
		nwfilter/nwfilter_learnipaddr.h
674

675

676
# Security framework and drivers for various models
O
Osier Yang 已提交
677 678 679 680 681
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		\
682
		security/security_manager.h security/security_manager.c
683

684
SECURITY_DRIVER_SELINUX_SOURCES =				\
685
		security/security_selinux.h security/security_selinux.c
686

J
Jamie Strandboge 已提交
687 688 689
SECURITY_DRIVER_APPARMOR_SOURCES =				\
		security/security_apparmor.h security/security_apparmor.c

690

691
NODE_DEVICE_DRIVER_SOURCES =					\
O
Osier Yang 已提交
692 693
		node_device/node_device_driver.c		\
		node_device/node_device_driver.h		\
694
		node_device/node_device_linux_sysfs.c
695 696

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
697
		node_device/node_device_hal.c			\
698
		node_device/node_device_hal.h
699

700
NODE_DEVICE_DRIVER_UDEV_SOURCES =				\
D
Daniel Veillard 已提交
701 702
		node_device/node_device_udev.c			\
		node_device/node_device_udev.h
703

J
Jiri Denemark 已提交
704 705 706 707
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 已提交
708
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
709
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
710
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
711
		cpu/cpu_powerpc.c cpu/cpu_ppc_data.h
712

713 714 715
VMX_SOURCES =							\
		vmx/vmx.c vmx/vmx.h

716 717
XENXS_SOURCES =							\
		xenxs/xenxs_private.h				\
718 719
		xenxs/xen_sxpr.c xenxs/xen_sxpr.h		\
		xenxs/xen_xm.c xenxs/xen_xm.h
720

J
Jiri Denemark 已提交
721 722
pkgdata_DATA =	cpu/cpu_map.xml

E
Eric Blake 已提交
723
EXTRA_DIST +=	$(pkgdata_DATA)
724

725 726 727 728 729 730
#########################
#
# Build up list of libvirt.la source files based on configure conditions
#
# First deal with sources usable in non-daemon context

731
noinst_LTLIBRARIES = libvirt_util.la
732 733
libvirt_la_LIBADD = $(libvirt_la_BUILT_LIBADD)
libvirt_la_BUILT_LIBADD = libvirt_util.la
734 735
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)
736
libvirt_util_la_CFLAGS = $(CAPNG_CFLAGS) $(YAJL_CFLAGS) $(LIBNL_CFLAGS) \
737
		$(AM_CFLAGS) $(AUDIT_CFLAGS) $(DEVMAPPER_CFLAGS) \
E
Eric Blake 已提交
738
		$(DBUS_CFLAGS) $(LDEXP_LIBM)
739
libvirt_util_la_LIBADD = $(CAPNG_LIBS) $(YAJL_LIBS) $(LIBNL_LIBS) \
740
		$(THREAD_LIBS) $(AUDIT_LIBS) $(DEVMAPPER_LIBS) \
741
		$(LIB_CLOCK_GETTIME) $(DBUS_LIBS) $(MSCOM_LIBS) $(LIBXML_LIBS)
742

743 744

noinst_LTLIBRARIES += libvirt_conf.la
745
libvirt_la_BUILT_LIBADD += libvirt_conf.la
746
libvirt_conf_la_SOURCES = $(CONF_SOURCES)
747 748
libvirt_conf_la_CFLAGS = $(AM_CFLAGS)
libvirt_conf_la_LDFLAGS = $(AM_LDFLAGS)
749

J
Jiri Denemark 已提交
750
noinst_LTLIBRARIES += libvirt_cpu.la
751
libvirt_la_BUILT_LIBADD += libvirt_cpu.la
J
Jiri Denemark 已提交
752
libvirt_cpu_la_CFLAGS = \
753
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
J
Jiri Denemark 已提交
754 755
libvirt_cpu_la_SOURCES = $(CPU_SOURCES)

756 757 758 759
if WITH_VMX
noinst_LTLIBRARIES += libvirt_vmx.la
libvirt_la_BUILT_LIBADD += libvirt_vmx.la
libvirt_vmx_la_CFLAGS = \
760
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
761 762 763
libvirt_vmx_la_SOURCES = $(VMX_SOURCES)
endif

764
if WITH_XENXS
765 766 767
noinst_LTLIBRARIES += libvirt_xenxs.la
libvirt_la_BUILT_LIBADD += libvirt_xenxs.la
libvirt_xenxs_la_CFLAGS = \
768
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
769 770 771
libvirt_xenxs_la_SOURCES = $(XENXS_SOURCES)
endif

772

773
noinst_LTLIBRARIES += libvirt_driver.la
774
libvirt_la_BUILT_LIBADD += libvirt_driver.la
775
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
776

M
Matthias Bolte 已提交
777
libvirt_driver_la_CFLAGS = $(NUMACTL_CFLAGS) $(GNUTLS_CFLAGS) \
778
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
779
libvirt_driver_la_LIBADD = $(NUMACTL_LIBS) $(GNUTLS_LIBS) $(DLOPEN_LIBS)
780

781
USED_SYM_FILES = $(srcdir)/libvirt_private.syms
782

783
if WITH_TEST
784
noinst_LTLIBRARIES += libvirt_driver_test.la
785
libvirt_la_BUILT_LIBADD += libvirt_driver_test.la
786
libvirt_driver_test_la_CFLAGS = \
787
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
788
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
789 790 791
endif

if WITH_REMOTE
792
noinst_LTLIBRARIES += libvirt_driver_remote.la
793
libvirt_la_BUILT_LIBADD += libvirt_driver_remote.la
794 795
libvirt_driver_remote_la_CFLAGS =				\
		$(GNUTLS_CFLAGS)				\
E
Eric Blake 已提交
796
		$(XDR_CFLAGS)					\
797 798
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/rpc				\
799 800
		$(AM_CFLAGS)
libvirt_driver_remote_la_LDFLAGS = $(AM_LDFLAGS)
801 802 803 804
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) \
                libvirt-net-rpc-client.la \
                libvirt-net-rpc-server.la \
                libvirt-net-rpc.la
805
libvirt_driver_remote_la_SOURCES = $(REMOTE_DRIVER_SOURCES)
806

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

809 810
endif WITH_REMOTE

811
%protocol.c: %protocol.x %protocol.h $(srcdir)/rpc/genprotocol.pl
812
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -c \
E
Eric Blake 已提交
813
	       $< $@
814

815
%protocol.h: %protocol.x $(srcdir)/rpc/genprotocol.pl
816
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -h \
E
Eric Blake 已提交
817
	       $< $@
818

819
if WITH_XEN
E
Eric Blake 已提交
820 821 822
noinst_LTLIBRARIES += libvirt_driver_xen_impl.la
libvirt_driver_xen_la_SOURCES =
libvirt_driver_xen_la_LIBADD = libvirt_driver_xen_impl.la
823 824
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_xen.la
E
Eric Blake 已提交
825 826
libvirt_driver_xen_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_xen_la_LDFLAGS = -module -avoid-version
827
else
828
noinst_LTLIBRARIES += libvirt_driver_xen.la
829 830
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_xen.la
831
endif
E
Eric Blake 已提交
832 833

libvirt_driver_xen_impl_la_CFLAGS =					\
834
		$(XEN_CFLAGS)					\
835 836
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
837
		$(AM_CFLAGS)
E
Eric Blake 已提交
838 839 840
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)
841 842
endif

843 844
if WITH_PHYP
noinst_LTLIBRARIES += libvirt_driver_phyp.la
845
libvirt_la_BUILT_LIBADD += libvirt_driver_phyp.la
846
libvirt_driver_phyp_la_LIBADD = $(LIBSSH2_LIBS)
847
libvirt_driver_phyp_la_CFLAGS = $(LIBSSH2_CFLAGS) \
848
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
849 850 851
libvirt_driver_phyp_la_SOURCES = $(PHYP_DRIVER_SOURCES)
endif

852
if WITH_OPENVZ
853
noinst_LTLIBRARIES += libvirt_driver_openvz.la
854
libvirt_la_BUILT_LIBADD += libvirt_driver_openvz.la
855
libvirt_driver_openvz_la_CFLAGS = \
856
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
857
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
858 859
endif

860 861 862 863
if WITH_VMWARE
noinst_LTLIBRARIES += libvirt_driver_vmware.la
libvirt_la_BUILT_LIBADD += libvirt_driver_vmware.la
libvirt_driver_vmware_la_CFLAGS = \
864
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
865 866 867
libvirt_driver_vmware_la_SOURCES = $(VMWARE_DRIVER_SOURCES)
endif

868 869
if WITH_VBOX
noinst_LTLIBRARIES += libvirt_driver_vbox.la
870
libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
871
libvirt_driver_vbox_la_CFLAGS = \
872
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
873
libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
874 875 876
libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif

877 878
if WITH_XENAPI
noinst_LTLIBRARIES += libvirt_driver_xenapi.la
879
libvirt_la_BUILT_LIBADD += libvirt_driver_xenapi.la
880
libvirt_driver_xenapi_la_CFLAGS = $(LIBXENSERVER_CFLAGS) $(LIBCURL_CFLAGS) \
881
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
882
libvirt_driver_xenapi_la_LDFLAGS = $(AM_LDFLAGS)
883
libvirt_driver_xenapi_la_LIBADD = $(LIBXENSERVER_LIBS) $(LIBCURL_LIBS)
884 885 886
libvirt_driver_xenapi_la_SOURCES = $(XENAPI_DRIVER_SOURCES)
endif

J
Jim Fehlig 已提交
887
if WITH_LIBXL
E
Eric Blake 已提交
888 889 890
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 已提交
891 892
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
893 894
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
895 896 897 898 899
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 已提交
900 901

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
902 903
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
904
		$(AM_CFLAGS)
E
Eric Blake 已提交
905 906 907
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 已提交
908 909
endif

910
if WITH_QEMU
E
Eric Blake 已提交
911 912 913
noinst_LTLIBRARIES += libvirt_driver_qemu_impl.la
libvirt_driver_qemu_la_SOURCES =
libvirt_driver_qemu_la_LIBADD = libvirt_driver_qemu_impl.la
914 915
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_qemu.la
E
Eric Blake 已提交
916 917
libvirt_driver_qemu_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_qemu_la_LDFLAGS = -module -avoid-version
918
else
919
noinst_LTLIBRARIES += libvirt_driver_qemu.la
920
# Stateful, so linked to daemon instead
921
#libvirt_la_BUILT_LIBADD += libvirt_driver_qemu.la
922
endif
E
Eric Blake 已提交
923 924

libvirt_driver_qemu_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
925
                                $(GNUTLS_CFLAGS) \
S
Serge Hallyn 已提交
926
                                $(LIBNL_CFLAGS) \
927
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
928 929
libvirt_driver_qemu_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_qemu_impl_la_LIBADD = $(NUMACTL_LIBS) \
930 931
				$(CAPNG_LIBS) \
                                $(GNUTLS_LIBS) \
S
Serge Hallyn 已提交
932
				$(LIBNL_LIBS)
E
Eric Blake 已提交
933
libvirt_driver_qemu_impl_la_SOURCES = $(QEMU_DRIVER_SOURCES)
934

A
Amy Griffis 已提交
935
conf_DATA += qemu/qemu.conf
936

937
augeas_DATA += qemu/libvirtd_qemu.aug
938 939
augeastest_DATA += test_libvirtd_qemu.aug
CLEANFILES += test_libvirtd_qemu.aug
940

941
endif
942
EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug \
943
		qemu/test_libvirtd_qemu.aug.in qemu/THREADS.txt
944

945 946

if WITH_LXC
E
Eric Blake 已提交
947 948 949
noinst_LTLIBRARIES += libvirt_driver_lxc_impl.la
libvirt_driver_lxc_la_SOURCES =
libvirt_driver_lxc_la_LIBADD = libvirt_driver_lxc_impl.la
950 951
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_lxc.la
E
Eric Blake 已提交
952 953
libvirt_driver_lxc_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_lxc_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
954
else
955
noinst_LTLIBRARIES += libvirt_driver_lxc.la
956
# Stateful, so linked to daemon instead
957
#libvirt_la_BUILT_LIBADD += libvirt_driver_lxc.la
958
endif
E
Eric Blake 已提交
959 960

libvirt_driver_lxc_impl_la_CFLAGS = \
S
Serge Hallyn 已提交
961
		$(LIBNL_CFLAGS) \
G
Gao feng 已提交
962
		$(FUSE_CFLAGS) \
963
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
G
Gao feng 已提交
964
libvirt_driver_lxc_impl_la_LIBADD = $(CAPNG_LIBS) $(LIBNL_LIBS) $(FUSE_LIBS)
965
if HAVE_LIBBLKID
E
Eric Blake 已提交
966 967
libvirt_driver_lxc_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_lxc_impl_la_LIBADD += $(BLKID_LIBS)
968
endif
969
if WITH_SECDRIVER_SELINUX
E
Eric Blake 已提交
970
libvirt_driver_lxc_impl_la_LIBADD += $(SELINUX_LIBS)
971 972
endif
if WITH_SECDRIVER_APPARMOR
E
Eric Blake 已提交
973
libvirt_driver_lxc_impl_la_LIBADD += $(APPARMOR_LIBS)
974
endif
E
Eric Blake 已提交
975
libvirt_driver_lxc_impl_la_SOURCES = $(LXC_DRIVER_SOURCES)
A
Amy Griffis 已提交
976 977 978

conf_DATA += lxc/lxc.conf

979
augeas_DATA += lxc/libvirtd_lxc.aug
980 981
augeastest_DATA += test_libvirtd_lxc.aug
CLEANFILES += test_libvirtd_lxc.aug
982

983
endif
984
EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug.in
985

986
if WITH_UML
E
Eric Blake 已提交
987 988 989
noinst_LTLIBRARIES += libvirt_driver_uml_impl.la
libvirt_driver_uml_la_SOURCES =
libvirt_driver_uml_la_LIBADD = libvirt_driver_uml_impl.la
990 991
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_uml.la
E
Eric Blake 已提交
992 993
libvirt_driver_uml_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_uml_la_LDFLAGS = -module -avoid-version
994
else
995 996
noinst_LTLIBRARIES += libvirt_driver_uml.la
# Stateful, so linked to daemon instead
997
#libvirt_la_BUILT_LIBADD += libvirt_driver_uml.la
998
endif
E
Eric Blake 已提交
999 1000

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
1001
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
1002 1003 1004
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)
1005
endif
1006

D
Daniel Veillard 已提交
1007

1008
BUILT_SOURCES += $(ESX_DRIVER_GENERATED)
D
Daniel Veillard 已提交
1009

1010 1011
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

E
Eric Blake 已提交
1012 1013
EXTRA_DIST += $(ESX_GENERATED_STAMP)

1014 1015 1016
$(ESX_DRIVER_GENERATED): $(ESX_GENERATED_STAMP)

$(ESX_GENERATED_STAMP): $(srcdir)/esx/esx_vi_generator.input \
1017
                         $(srcdir)/esx/esx_vi_generator.py
1018 1019 1020 1021 1022
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/esx/esx_vi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
1023

1024 1025
if WITH_ESX
noinst_LTLIBRARIES += libvirt_driver_esx.la
1026
libvirt_la_BUILT_LIBADD += libvirt_driver_esx.la
1027
libvirt_driver_esx_la_CFLAGS = $(LIBCURL_CFLAGS) \
1028
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
1029
libvirt_driver_esx_la_LDFLAGS = $(AM_LDFLAGS)
1030
libvirt_driver_esx_la_LIBADD = $(LIBCURL_LIBS)
1031
libvirt_driver_esx_la_SOURCES = $(ESX_DRIVER_SOURCES)
1032
libvirt_driver_esx_la_DEPENDENCIES = $(ESX_DRIVER_GENERATED)
1033 1034
endif

M
Matthias Bolte 已提交
1035

1036 1037
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

1038 1039
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

E
Eric Blake 已提交
1040 1041
EXTRA_DIST += $(HYPERV_GENERATED_STAMP)

1042 1043 1044
$(HYPERV_DRIVER_GENERATED): $(HYPERV_GENERATED_STAMP)

$(HYPERV_GENERATED_STAMP): $(srcdir)/hyperv/hyperv_wmi_generator.input \
1045
                            $(srcdir)/hyperv/hyperv_wmi_generator.py
1046 1047 1048 1049
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/hyperv/hyperv_wmi_generator.py \
	  && touch $@

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

M
Matthias Bolte 已提交
1051 1052 1053 1054
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
1055
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
1056 1057 1058 1059 1060
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 已提交
1061 1062 1063 1064 1065 1066 1067 1068
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

1069
if WITH_NETWORK
E
Eric Blake 已提交
1070 1071 1072
noinst_LTLIBRARIES += libvirt_driver_network_impl.la
libvirt_driver_network_la_SOURCES =
libvirt_driver_network_la_LIBADD = libvirt_driver_network_impl.la
1073 1074
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_network.la
1075
libvirt_driver_network_la_LIBADD += ../gnulib/lib/libgnu.la $(LIBNL_LIBS) $(DBUS_LIBS)
E
Eric Blake 已提交
1076
libvirt_driver_network_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1077
else
1078
noinst_LTLIBRARIES += libvirt_driver_network.la
1079
# Stateful, so linked to daemon instead
1080
#libvirt_la_BUILT_LIBADD += libvirt_driver_network.la
1081
endif
E
Eric Blake 已提交
1082 1083

libvirt_driver_network_impl_la_CFLAGS = \
1084
		$(LIBNL_CFLAGS) $(DBUS_CFLAGS) \
1085
		-I$(top_srcdir)/src/conf $(AM_CFLAGS) $(DBUS_CFLAGS)
E
Eric Blake 已提交
1086
libvirt_driver_network_impl_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
1087
endif
1088 1089 1090
EXTRA_DIST += network/default.xml


1091
if WITH_INTERFACE
1092 1093 1094 1095
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_interface.la
else
noinst_LTLIBRARIES += libvirt_driver_interface.la
1096 1097
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_interface.la
1098
endif
1099
libvirt_driver_interface_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1100
libvirt_driver_interface_la_LDFLAGS = $(AM_LDFLAGS)
1101 1102 1103 1104
libvirt_driver_interface_la_LIBADD =
if WITH_NETCF
libvirt_driver_interface_la_CFLAGS += $(NETCF_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(NETCF_LIBS)
1105 1106 1107 1108 1109
else
if HAVE_UDEV
libvirt_driver_interface_la_CFLAGS += $(UDEV_CFLAGS)
libvirt_driver_interface_la_LIBADD += $(UDEV_LIBS)
endif
1110
endif
1111
if WITH_DRIVER_MODULES
1112
libvirt_driver_interface_la_LIBADD += ../gnulib/lib/libgnu.la
1113 1114 1115
libvirt_driver_interface_la_LDFLAGS += -module -avoid-version
endif
libvirt_driver_interface_la_SOURCES = $(INTERFACE_DRIVER_SOURCES)
D
Daniel Veillard 已提交
1116 1117
endif

D
Daniel P. Berrange 已提交
1118
if WITH_SECRETS
1119 1120 1121 1122
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_secret.la
else
noinst_LTLIBRARIES += libvirt_driver_secret.la
1123
# Stateful, so linked to daemon instead
1124
#libvirt_la_BUILT_LIBADD += libvirt_driver_secret.la
1125
endif
1126
libvirt_driver_secret_la_CFLAGS = \
1127
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1128
if WITH_DRIVER_MODULES
1129
libvirt_driver_secret_la_LIBADD = ../gnulib/lib/libgnu.la
1130
libvirt_driver_secret_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1131 1132
endif
libvirt_driver_secret_la_SOURCES = $(SECRET_DRIVER_SOURCES)
D
Daniel P. Berrange 已提交
1133
endif
1134

1135
# Needed to keep automake quiet about conditionals
1136 1137
libvirt_driver_storage_impl_la_SOURCES =
libvirt_driver_storage_impl_la_CFLAGS = \
1138
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1139 1140
libvirt_driver_storage_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_storage_impl_la_LIBADD =
1141
if WITH_SECDRIVER_SELINUX
1142
libvirt_driver_storage_impl_la_LIBADD += $(SELINUX_LIBS)
1143 1144
endif
if WITH_SECDRIVER_APPARMOR
1145
libvirt_driver_storage_impl_la_LIBADD += $(APPARMOR_LIBS)
1146
endif
O
Osier Yang 已提交
1147
if HAVE_LIBBLKID
1148 1149
libvirt_driver_storage_impl_la_CFLAGS += $(BLKID_CFLAGS)
libvirt_driver_storage_impl_la_LIBADD += $(BLKID_LIBS)
O
Osier Yang 已提交
1150
endif
1151
if WITH_STORAGE
1152 1153 1154
noinst_LTLIBRARIES += libvirt_driver_storage_impl.la
libvirt_driver_storage_la_SOURCES =
libvirt_driver_storage_la_LIBADD = libvirt_driver_storage_impl.la
1155 1156
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_storage.la
1157
libvirt_driver_storage_la_LIBADD += ../gnulib/lib/libgnu.la
1158
libvirt_driver_storage_la_LDFLAGS = -module -avoid-version
1159
else
1160
noinst_LTLIBRARIES += libvirt_driver_storage.la
1161
# Stateful, so linked to daemon instead
1162
#libvirt_la_BUILT_LIBADD += libvirt_driver_storage.la
1163
endif
1164 1165
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_FS_SOURCES)
1166 1167
endif

1168
if WITH_STORAGE_LVM
1169
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
1170 1171
endif

1172
if WITH_STORAGE_ISCSI
1173
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
1174 1175
endif

1176
if WITH_STORAGE_SCSI
1177
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SCSI_SOURCES)
1178 1179
endif

D
Dave Allan 已提交
1180
if WITH_STORAGE_MPATH
1181 1182 1183
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 已提交
1184 1185
endif

1186
if WITH_STORAGE_DISK
1187
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
1188
endif
1189

1190
if WITH_STORAGE_RBD
1191 1192
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_RBD_SOURCES)
libvirt_driver_storage_impl_la_LIBADD += $(LIBRBD_LIBS)
1193 1194
endif

1195
if WITH_STORAGE_SHEEPDOG
1196
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
1197 1198
endif

1199 1200 1201 1202 1203 1204 1205
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
1206
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1207 1208 1209
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

1210
libvirt_driver_nodedev_la_CFLAGS = \
1211
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1212
libvirt_driver_nodedev_la_LDFLAGS = $(AM_LDFLAGS)
1213
libvirt_driver_nodedev_la_LIBADD =
1214

1215 1216 1217
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
1218
libvirt_driver_nodedev_la_LIBADD += $(HAL_LIBS)
1219
endif
1220 1221
if HAVE_UDEV
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_UDEV_SOURCES)
1222
libvirt_driver_nodedev_la_CFLAGS += $(UDEV_CFLAGS) $(PCIACCESS_CFLAGS)
1223
libvirt_driver_nodedev_la_LIBADD += $(UDEV_LIBS) $(PCIACCESS_LIBS)
1224
endif
1225 1226

if WITH_DRIVER_MODULES
1227
libvirt_driver_nodedev_la_LIBADD += ../gnulib/lib/libgnu.la
1228 1229 1230 1231 1232
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


1233 1234 1235 1236 1237
if WITH_NWFILTER
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_nwfilter.la
else
noinst_LTLIBRARIES += libvirt_driver_nwfilter.la
1238 1239
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_nwfilter.la
1240
endif
1241
libvirt_driver_nwfilter_la_CFLAGS = $(LIBPCAP_CFLAGS) \
1242
		-I$(top_srcdir)/src/conf $(LIBNL_CFLAGS) $(AM_CFLAGS) $(DBUS_CFLAGS)
1243
libvirt_driver_nwfilter_la_LDFLAGS = $(LD_AMFLAGS)
1244
libvirt_driver_nwfilter_la_LIBADD = $(LIBPCAP_LIBS) $(LIBNL_LIBS) $(DBUS_LIBS)
1245
if WITH_DRIVER_MODULES
1246
libvirt_driver_nwfilter_la_LIBADD += ../gnulib/lib/libgnu.la
1247
libvirt_driver_nwfilter_la_LDFLAGS += -module -avoid-version
1248 1249 1250 1251 1252
endif
libvirt_driver_nwfilter_la_SOURCES = $(NWFILTER_DRIVER_SOURCES)
endif


1253 1254 1255 1256
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 = \
1257
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1258 1259
libvirt_security_manager_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_security_manager_la_LIBADD =
1260
if WITH_SECDRIVER_SELINUX
1261 1262 1263
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
libvirt_security_manager_la_CFLAGS += $(SELINUX_CFLAGS)
libvirt_security_manager_la_LIBADD += $(SELINUX_LIBS)
1264
endif
J
Jamie Strandboge 已提交
1265
if WITH_SECDRIVER_APPARMOR
1266 1267 1268
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 已提交
1269
endif
1270

1271 1272 1273 1274 1275 1276 1277
# Add all conditional sources just in case...
EXTRA_DIST +=							\
		$(TEST_DRIVER_SOURCES)				\
		$(REMOTE_DRIVER_SOURCES)			\
		$(XEN_DRIVER_SOURCES)				\
		$(QEMU_DRIVER_SOURCES)				\
		$(LXC_DRIVER_SOURCES)				\
1278
		$(UML_DRIVER_SOURCES)				\
1279
		$(OPENVZ_DRIVER_SOURCES)			\
1280
		$(PHYP_DRIVER_SOURCES)				\
1281
		$(VBOX_DRIVER_SOURCES)				\
1282
		$(XENAPI_DRIVER_SOURCES)			\
O
Osier Yang 已提交
1283
		$(LIBXL_DRIVER_SOURCES)				\
1284
		$(ESX_DRIVER_SOURCES)				\
1285
		$(ESX_DRIVER_EXTRA_DIST)			\
M
Matthias Bolte 已提交
1286
		$(HYPERV_DRIVER_SOURCES)			\
1287
		$(HYPERV_DRIVER_EXTRA_DIST)			\
O
Osier Yang 已提交
1288
		$(PARALLELS_DRIVER_SOURCES)			\
1289
		$(NETWORK_DRIVER_SOURCES)			\
1290
		$(INTERFACE_DRIVER_SOURCES)			\
1291 1292 1293 1294
		$(STORAGE_DRIVER_SOURCES)			\
		$(STORAGE_DRIVER_FS_SOURCES)			\
		$(STORAGE_DRIVER_LVM_SOURCES)			\
		$(STORAGE_DRIVER_ISCSI_SOURCES)			\
1295
		$(STORAGE_DRIVER_SCSI_SOURCES)			\
D
Dave Allan 已提交
1296
		$(STORAGE_DRIVER_MPATH_SOURCES)			\
1297
		$(STORAGE_DRIVER_DISK_SOURCES)			\
1298
		$(STORAGE_DRIVER_RBD_SOURCES)			\
1299
		$(STORAGE_DRIVER_SHEEPDOG_SOURCES)		\
1300 1301
		$(NODE_DEVICE_DRIVER_SOURCES)			\
		$(NODE_DEVICE_DRIVER_HAL_SOURCES)		\
1302
		$(NODE_DEVICE_DRIVER_UDEV_SOURCES)		\
1303
		$(NWFILTER_DRIVER_SOURCES)			\
1304
		$(SECURITY_DRIVER_SELINUX_SOURCES)		\
J
Jamie Strandboge 已提交
1305
		$(SECURITY_DRIVER_APPARMOR_SOURCES)		\
D
Daniel P. Berrange 已提交
1306
		$(SECRET_DRIVER_SOURCES)			\
1307
		$(VBOX_DRIVER_EXTRA_DIST)			\
1308 1309
		$(VMWARE_DRIVER_SOURCES)			\
		$(XENXS_SOURCES)
1310

1311 1312
check-local: check-augeas

1313 1314 1315 1316 1317 1318
.PHONY: check-augeas \
	check-augeas-qemu \
	check-augeas-lxc \
	check-augeas-sanlock \
	check-augeas-lockd \
	$(NULL)
1319

1320
check-augeas: check-augeas-qemu check-augeas-lxc check-augeas-sanlock check-augeas-lockd
1321

1322
AUG_GENTEST = $(PERL) $(top_srcdir)/build-aux/augeas-gentest.pl
1323
EXTRA_DIST += $(top_srcdir)/build-aux/augeas-gentest.pl
1324

1325
if WITH_QEMU
1326 1327
test_libvirtd_qemu.aug: qemu/test_libvirtd_qemu.aug.in \
		$(srcdir)/qemu/qemu.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1328
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/qemu/qemu.conf $< $@
1329

1330
check-augeas-qemu: test_libvirtd_qemu.aug
1331
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1332
	    '$(AUGPARSE)' -I $(srcdir)/qemu test_libvirtd_qemu.aug; \
1333
	fi
1334 1335
else
check-augeas-qemu:
1336
endif
1337

1338
if WITH_LXC
1339 1340
test_libvirtd_lxc.aug: lxc/test_libvirtd_lxc.aug.in \
		$(srcdir)/lxc/lxc.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1341
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/lxc/lxc.conf $< $@
1342

1343
check-augeas-lxc: test_libvirtd_lxc.aug
1344
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1345
	    '$(AUGPARSE)' -I $(srcdir)/lxc test_libvirtd_lxc.aug; \
1346
	fi
1347 1348
else
check-augeas-lxc:
1349
endif
1350

1351
if HAVE_SANLOCK
1352 1353
test_libvirt_sanlock.aug: locking/test_libvirt_sanlock.aug.in \
		locking/qemu-sanlock.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1354
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-sanlock.conf $< $@
1355

1356
check-augeas-sanlock: test_libvirt_sanlock.aug
1357
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1358
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_sanlock.aug; \
1359
	fi
1360 1361 1362
else
check-augeas-sanlock:
endif
1363

1364 1365 1366 1367 1368 1369 1370 1371 1372
test_libvirt_lockd.aug: locking/test_libvirt_lockd.aug.in \
		locking/qemu-lockd.conf $(AUG_GENTEST)
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-lockd.conf $< $@

check-augeas-lockd: test_libvirt_lockd.aug
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_lockd.aug; \
	fi

1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391
#
# 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.
#

1392
if WITH_DRIVER_MODULES
1393
USED_SYM_FILES += $(srcdir)/libvirt_driver_modules.syms
1394
endif
1395

1396
if WITH_LINUX
1397
USED_SYM_FILES += $(srcdir)/libvirt_linux.syms
1398
endif
1399

1400
if WITH_ESX
1401
USED_SYM_FILES += $(srcdir)/libvirt_esx.syms
1402 1403
endif

1404
if WITH_LIBVIRTD
1405
USED_SYM_FILES += $(srcdir)/libvirt_daemon.syms
1406 1407
endif

1408
if WITH_OPENVZ
1409
USED_SYM_FILES += $(srcdir)/libvirt_openvz.syms
1410 1411
endif

1412
if WITH_VMX
1413
USED_SYM_FILES += $(srcdir)/libvirt_vmx.syms
1414 1415
endif

1416
if WITH_XENXS
1417
USED_SYM_FILES += $(srcdir)/libvirt_xenxs.syms
1418 1419
endif

E
Eric Blake 已提交
1420
if HAVE_SASL
1421
USED_SYM_FILES += $(srcdir)/libvirt_sasl.syms
E
Eric Blake 已提交
1422 1423
endif

1424
if HAVE_LIBSSH2
1425
USED_SYM_FILES += $(srcdir)/libvirt_libssh2.syms
1426 1427
endif

1428
if WITH_ATOMIC_OPS_PTHREAD
1429
USED_SYM_FILES += $(srcdir)/libvirt_atomic.syms
1430 1431
endif

1432 1433 1434
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
1435
  libvirt_atomic.syms		\
1436
  libvirt_driver_modules.syms	\
E
Eric Blake 已提交
1437
  libvirt_daemon.syms		\
1438
  libvirt_linux.syms		\
1439 1440 1441
  libvirt_esx.syms		\
  libvirt_openvz.syms		\
  libvirt_qemu.syms		\
E
Eric Blake 已提交
1442
  libvirt_sasl.syms		\
1443
  libvirt_vmx.syms		\
1444 1445
  libvirt_xenxs.syms	\
  libvirt_libssh2.syms
1446

1447 1448 1449
GENERATED_SYM_FILES = libvirt.syms libvirt.def libvirt_qemu.def

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1450

1451 1452
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
		$(top_builddir)/config.status
1453 1454 1455 1456 1457 1458
	$(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 && \
1459
	for file in $(USED_SYM_FILES); do \
J
Jiri Denemark 已提交
1460
	    cat $$file >>$@-tmp; \
1461 1462 1463
	done && \
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
	chmod a-w $@-tmp && \
1464
	mv $@-tmp libvirt.syms
1465

1466 1467 1468
libvirt.def: libvirt.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1469
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1470 1471 1472
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt.def

1473 1474 1475
libvirt_qemu.def: $(srcdir)/libvirt_qemu.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1476
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1477 1478 1479
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt_qemu.def

1480 1481
# Empty source list - it merely links a bunch of convenience libs together
libvirt_la_SOURCES =
1482
libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_SYMBOL_FILE) \
E
Eric Blake 已提交
1483
		     -version-info $(LIBVIRT_VERSION_INFO) \
1484
		    $(LIBVIRT_NODELETE) $(AM_LDFLAGS) \
1485
		    $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS)
1486
libvirt_la_BUILT_LIBADD += ../gnulib/lib/libgnu.la
1487
libvirt_la_LIBADD += \
1488
		    $(DRIVER_MODULE_LIBS) \
1489
		    $(CYGWIN_EXTRA_LIBADD)
1490
libvirt_la_CFLAGS = -DIN_LIBVIRT $(AM_CFLAGS)
1491 1492 1493 1494 1495 1496
# 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)
1497

1498
if WITH_DTRACE_PROBES
1499
libvirt_la_BUILT_LIBADD += libvirt_probes.lo
1500
libvirt_la_DEPENDENCIES += libvirt_probes.lo libvirt_probes.o
1501
nodist_libvirt_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1502
if WITH_REMOTE
E
Eric Blake 已提交
1503
nodist_libvirt_driver_remote_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1504
endif WITH_REMOTE
1505 1506 1507
if WITH_DRIVER_MODULES
DTRACE2SYSTEMTAP_FLAGS = --with-modules
endif
1508

1509 1510 1511
BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp

if WITH_QEMU
1512
libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo
1513
nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h
1514
BUILT_SOURCES += libvirt_qemu_probes.h
1515
endif
1516 1517

tapsetdir = $(datadir)/systemtap/tapset
1518
tapset_DATA = libvirt_probes.stp libvirt_qemu_probes.stp libvirt_functions.stp
1519

1520
%_probes.h: %_probes.d
1521 1522
	$(AM_V_GEN)$(DTRACE) -o $@ -h -s $<

E
Eric Blake 已提交
1523
.PRECIOUS: %_probes.o
1524
%_probes.o: %_probes.d
1525 1526
	$(AM_V_GEN)$(DTRACE) -o $@ -G -s $<

1527 1528 1529 1530 1531 1532 1533 1534 1535
%_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 已提交
1536 1537 1538 1539
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1540 1541

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

1544
%_probes.stp: %_probes.d $(srcdir)/dtrace2systemtap.pl $(top_builddir)/config.status
1545
	$(AM_V_GEN)$(PERL) -w $(srcdir)/dtrace2systemtap.pl \
1546
	  $(DTRACE2SYSTEMTAP_FLAGS) $(bindir) $(sbindir) $(libdir) $< > $@
1547

1548
CLEANFILES += libvirt_probes.h libvirt_probes.o libvirt_probes.lo \
1549
              libvirt_qemu_probes.h libvirt_qemu_probes.o \
1550
              libvirt_qemu_probes.lo\
1551 1552
              libvirt_functions.stp libvirt_probes.stp \
              libvirt_qemu_probes.stp
1553 1554
endif

1555
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1556

C
Chris Lalancette 已提交
1557 1558
libvirt_qemu_la_SOURCES = libvirt-qemu.c
libvirt_qemu_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
E
Eric Blake 已提交
1559 1560
			  -version-info $(LIBVIRT_VERSION_INFO) \
			  $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS) \
1561 1562
			  $(AM_LDFLAGS)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
C
Chris Lalancette 已提交
1563
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
E
Eric Blake 已提交
1564
EXTRA_DIST += $(LIBVIRT_QEMU_SYMBOL_FILE)
1565

1566 1567 1568
lockdriverdir = $(libdir)/libvirt/lock-driver
lockdriver_LTLIBRARIES =

1569
if WITH_LIBVIRTD
1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591
lockdriver_LTLIBRARIES += lockd.la
lockd_la_SOURCES = \
		$(LOCK_DRIVER_LOCKD_SOURCES) \
		$(LOCK_PROTOCOL_GENERATED) \
		$(NULL)
lockd_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
lockd_la_LDFLAGS = -module -avoid-version
lockd_la_LIBADD = ../gnulib/lib/libgnu.la libvirt-net-rpc.la libvirt-net-rpc-client.la
if WITH_DTRACE_PROBES
lockd_la_LIBADD += libvirt_probes.lo
endif
if WITH_QEMU
nodist_conf_DATA = locking/qemu-lockd.conf
BUILT_SOURCES += locking/qemu-lockd.conf
DISTCLEANFILES += locking/qemu-lockd.conf
endif

locking/%-lockd.conf: $(srcdir)/locking/lockd.conf
	$(AM_V_GEN)$(MKDIR_P) locking ; \
	cp $< $@


1592 1593
sbin_PROGRAMS = virtlockd

1594 1595 1596
virtlockd_SOURCES = \
		$(LOCK_DAEMON_SOURCES) \
		$(LOCK_PROTOCOL_GENERATED) \
1597
		$(LOCK_DAEMON_GENERATED) \
1598
		$(NULL)
1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618
virtlockd_CFLAGS = \
		$(AM_CFLAGS) \
		$(NULL)
virtlockd_LDFLAGS = \
		$(AM_LDFLAGS) \
		$(CYGWIN_EXTRA_LDFLAGS) \
		$(MINGW_EXTRA_LDFLAGS) \
		$(NULL)
virtlockd_LDADD = \
		libvirt-net-rpc-server.la \
		libvirt-net-rpc.la \
		libvirt_util.la \
		../gnulib/lib/libgnu.la \
		$(CYGWIN_EXTRA_LIBADD) \
		$(NULL)
if WITH_DTRACE_PROBES
virtlockd_LDADD += libvirt_probes.lo
endif

else
1619 1620
EXTRA_DIST += $(LOCK_DAEMON_SOURCES) \
              $(LOCK_DRIVER_LOCKD_SOURCES)
1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665
endif

EXTRA_DIST += locking/virtlockd.sysconf

install-sysconfig:
	mkdir -p $(DESTDIR)$(sysconfdir)/sysconfig
	$(INSTALL_DATA) $(srcdir)/locking/virtlockd.sysconf \
	  $(DESTDIR)$(sysconfdir)/sysconfig/virtlockd

uninstall-sysconfig:
	rm -f $(DESTDIR)$(sysconfdir)/sysconfig/virtlockd

EXTRA_DIST += locking/virtlockd.init.in

if WITH_LIBVIRTD
if LIBVIRT_INIT_SCRIPT_RED_HAT
install-init:: virtlockd.init install-sysconfig
	mkdir -p $(DESTDIR)$(sysconfdir)/rc.d/init.d
	$(INSTALL_SCRIPT) virtlockd.init \
	  $(DESTDIR)$(sysconfdir)/rc.d/init.d/virtlockd

uninstall-init:: uninstall-sysconfig
	rm -f $(DESTDIR)$(sysconfdir)/rc.d/init.d/libvirtd

BUILT_SOURCES += virtlockd.init
else
install-init::
uninstall-init::
endif
else
install-init::
uninstall-init::
endif

virtlockd.init: locking/virtlockd.init.in $(top_builddir)/config.status
	$(AM_V_GEN)sed					\
	    -e "s!::localstatedir::!$(localstatedir)!g"	\
	    -e "s!::sbindir::!$(sbindir)!g"		\
	    -e "s!::sysconfdir::!$(sysconfdir)!g"	\
	    < $< > $@-t &&				\
	    chmod a+x $@-t &&				\
	    mv $@-t $@



1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712
EXTRA_DIST += locking/virtlockd.service.in locking/virtlockd.socket.in

if WITH_LIBVIRTD
if LIBVIRT_INIT_SCRIPT_SYSTEMD

SYSTEMD_UNIT_DIR = /lib/systemd/system

BUILT_SOURCES += virtlockd.service virtlockd.socket

install-systemd: virtlockd.init install-sysconfig
	mkdir -p $(DESTDIR)$(SYSTEMD_UNIT_DIR)
	$(INSTALL_SCRIPT) virtlockd.service \
	  $(DESTDIR)$(SYSTEMD_UNIT_DIR)/
	$(INSTALL_SCRIPT) virtlockd.socket \
	  $(DESTDIR)$(SYSTEMD_UNIT_DIR)/

uninstall-systemd: uninstall-sysconfig
	rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/virtlockd.service
	rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/virtlockd.socket
else
install-systemd:
uninstall-systemd:
endif
else
install-systemd:
uninstall-systemd:
endif

virtlockd.service: locking/virtlockd.service.in $(top_builddir)/config.status
	$(AM_V_GEN)sed					\
	    -e "s!::localstatedir::!$(localstatedir)!g"	\
	    -e "s!::sbindir::!$(sbindir)!g"		\
	    -e "s!::sysconfdir::!$(sysconfdir)!g"	\
	    < $< > $@-t &&				\
	    chmod a+x $@-t &&				\
	    mv $@-t $@

virtlockd.socket: locking/virtlockd.socket.in $(top_builddir)/config.status
	$(AM_V_GEN)sed					\
	    -e "s!::localstatedir::!$(localstatedir)!g"	\
	    -e "s!::sbindir::!$(sbindir)!g"		\
	    -e "s!::sysconfdir::!$(sysconfdir)!g"	\
	    < $< > $@-t &&				\
	    chmod a+x $@-t &&				\
	    mv $@-t $@


1713
if HAVE_SANLOCK
1714
lockdriver_LTLIBRARIES += sanlock.la
1715
sanlock_la_SOURCES = $(LOCK_DRIVER_SANLOCK_SOURCES)
1716
sanlock_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1717
sanlock_la_LDFLAGS = -module -avoid-version
1718
sanlock_la_LIBADD = -lsanlock_client \
1719 1720 1721
		../gnulib/lib/libgnu.la

augeas_DATA += locking/libvirt_sanlock.aug
1722 1723
augeastest_DATA += test_libvirt_sanlock.aug
CLEANFILES += test_libvirt_sanlock.aug
1724

E
Eric Blake 已提交
1725
locking/%-sanlock.conf: $(srcdir)/locking/sanlock.conf
1726
	$(AM_V_GEN)$(MKDIR_P) locking ; \
1727 1728 1729
	cp $< $@

if WITH_QEMU
E
Eric Blake 已提交
1730
nodist_conf_DATA = locking/qemu-sanlock.conf
1731
BUILT_SOURCES += locking/qemu-sanlock.conf
E
Eric Blake 已提交
1732
DISTCLEANFILES += locking/qemu-sanlock.conf
1733
endif
1734
else
1735
EXTRA_DIST += $(LOCK_DRIVER_SANLOCK_SOURCES)
1736
endif
1737 1738
EXTRA_DIST += locking/sanlock.conf \
	locking/libvirt_sanlock.aug \
1739
	locking/test_libvirt_sanlock.aug.in
1740

1741 1742 1743 1744
noinst_LTLIBRARIES += \
	libvirt-net-rpc.la \
	libvirt-net-rpc-server.la \
	libvirt-net-rpc-client.la
1745

1746
EXTRA_DIST += \
E
Eric Blake 已提交
1747 1748 1749 1750
	dtrace2systemtap.pl \
	rpc/gendispatch.pl \
	rpc/genprotocol.pl \
	rpc/gensystemtap.pl \
J
Jiri Denemark 已提交
1751 1752
	rpc/virnetprotocol.x \
	rpc/virkeepaliveprotocol.x
1753

E
Eric Blake 已提交
1754 1755
VIR_NET_RPC_GENERATED = \
	$(srcdir)/rpc/virnetprotocol.h \
J
Jiri Denemark 已提交
1756 1757 1758
	$(srcdir)/rpc/virnetprotocol.c \
	$(srcdir)/rpc/virkeepaliveprotocol.h \
	$(srcdir)/rpc/virkeepaliveprotocol.c
1759

1760
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1761

1762
libvirt_net_rpc_la_SOURCES = \
1763
	rpc/virnetmessage.h rpc/virnetmessage.c \
1764
	rpc/virnetprotocol.h rpc/virnetprotocol.c \
1765
	rpc/virnetsocket.h rpc/virnetsocket.c \
J
Jiri Denemark 已提交
1766
	rpc/virnettlscontext.h rpc/virnettlscontext.c \
1767 1768
	rpc/virkeepaliveprotocol.h rpc/virkeepaliveprotocol.c \
	rpc/virkeepalive.h rpc/virkeepalive.c
1769 1770 1771 1772 1773 1774 1775
if HAVE_LIBSSH2
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
else
EXTRA_DIST += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
endif
1776 1777 1778 1779 1780 1781 1782
if HAVE_SASL
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
else
EXTRA_DIST += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
endif
1783
libvirt_net_rpc_la_CFLAGS = \
1784
			$(GNUTLS_CFLAGS) \
1785
			$(SASL_CFLAGS) \
1786
			$(LIBSSH2_CFLAGS) \
1787
			$(XDR_CFLAGS) \
1788 1789
			$(AM_CFLAGS)
libvirt_net_rpc_la_LDFLAGS = \
1790
			$(GNUTLS_LIBS) \
1791
			$(SASL_LIBS) \
1792
			$(LIBSSH2_LIBS)\
1793 1794 1795 1796 1797 1798
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1799 1800 1801 1802
libvirt_net_rpc_server_la_SOURCES = \
	rpc/virnetserverprogram.h rpc/virnetserverprogram.c \
	rpc/virnetserverservice.h rpc/virnetserverservice.c \
	rpc/virnetserverclient.h rpc/virnetserverclient.c \
1803
	rpc/virnetservermdns.h rpc/virnetservermdns.c \
1804 1805
	rpc/virnetserver.h rpc/virnetserver.c
libvirt_net_rpc_server_la_CFLAGS = \
1806
			$(AVAHI_CFLAGS) \
1807
			$(DBUS_CFLAGS) \
E
Eric Blake 已提交
1808
			$(XDR_CFLAGS) \
J
Jim Fehlig 已提交
1809 1810
			$(AM_CFLAGS) \
			$(POLKIT_CFLAGS)
1811 1812
libvirt_net_rpc_server_la_LDFLAGS = \
			$(AM_LDFLAGS) \
1813
			$(AVAHI_LIBS) \
1814
			$(DBUS_LIBS) \
J
Jim Fehlig 已提交
1815
			$(POLKIT_LIBS) \
1816 1817 1818 1819 1820
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_server_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1821 1822 1823 1824 1825
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 已提交
1826 1827
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1828 1829 1830 1831 1832 1833
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1834

1835 1836
libexec_PROGRAMS =

1837
if WITH_LIBVIRTD
1838 1839 1840 1841 1842 1843
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
1844 1845 1846
if WITH_DTRACE_PROBES
libvirt_iohelper_LDADD += libvirt_probes.lo
endif
1847 1848

libvirt_iohelper_CFLAGS = $(AM_CFLAGS)
1849
endif
1850

1851
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
1852
if WITH_LIBVIRTD
1853
libexec_PROGRAMS += libvirt_parthelper
1854

1855
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
1856
libvirt_parthelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
1857 1858 1859 1860
libvirt_parthelper_LDADD =		\
		$(LIBPARTED_LIBS)	\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la
1861 1862 1863
if WITH_DTRACE_PROBES
libvirt_parthelper_LDADD += libvirt_probes.lo
endif
1864

1865
libvirt_parthelper_CFLAGS = $(LIBPARTED_CFLAGS) $(AM_CFLAGS)
R
Richard W.M. Jones 已提交
1866
endif
1867
endif
1868 1869
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

1870

1871 1872 1873 1874 1875 1876 1877 1878 1879
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

1880 1881 1882 1883 1884 1885
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

libvirt_lxc_SOURCES =						\
		$(LXC_CONTROLLER_SOURCES)			\
O
Osier Yang 已提交
1886 1887
		$(NODE_INFO_SOURCES)				\
		$(DATATYPES_SOURCES)
1888
libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(AM_LDFLAGS)
1889 1890
libvirt_lxc_LDADD =			\
		$(NUMACTL_LIBS) \
G
Gao feng 已提交
1891
		$(FUSE_LIBS) \
1892 1893
		libvirt-net-rpc-server.la \
		libvirt-net-rpc.la \
1894
		libvirt_security_manager.la \
1895 1896
		libvirt_conf.la \
		libvirt_util.la \
1897
		../gnulib/lib/libgnu.la
1898
if WITH_DTRACE_PROBES
1899
libvirt_lxc_LDADD += libvirt_probes.lo
1900
endif
1901 1902 1903
if WITH_SECDRIVER_SELINUX
libvirt_lxc_LDADD += $(SELINUX_LIBS)
endif
J
Jiri Denemark 已提交
1904 1905 1906
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_LDADD += $(APPARMOR_LIBS)
endif
1907
libvirt_lxc_CFLAGS =				\
1908
		-I$(top_srcdir)/src/conf	\
1909
		$(AM_CFLAGS)                    \
G
Gao feng 已提交
1910 1911
		$(LIBNL_CFLAGS)			\
		$(FUSE_CFLAGS)
1912 1913 1914 1915
if HAVE_LIBBLKID
libvirt_lxc_CFLAGS += $(BLKID_CFLAGS)
libvirt_lxc_LDADD += $(BLKID_LIBS)
endif
1916 1917 1918
if WITH_SECDRIVER_SELINUX
libvirt_lxc_CFLAGS += $(SELINUX_CFLAGS)
endif
J
Jiri Denemark 已提交
1919 1920 1921
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_CFLAGS += $(APPARMOR_CFLAGS)
endif
1922 1923 1924 1925
endif
endif
EXTRA_DIST += $(LXC_CONTROLLER_SOURCES)

J
Jamie Strandboge 已提交
1926 1927 1928 1929 1930 1931
if WITH_SECDRIVER_APPARMOR
if WITH_LIBVIRTD
libexec_PROGRAMS += virt-aa-helper

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1932
virt_aa_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
J
Jamie Strandboge 已提交
1933
virt_aa_helper_LDADD =						\
C
Chris Lalancette 已提交
1934 1935 1936
		libvirt_conf.la					\
		libvirt_util.la					\
		../gnulib/lib/libgnu.la
1937
if WITH_DTRACE_PROBES
1938
virt_aa_helper_LDADD += libvirt_probes.lo
1939
endif
J
Jamie Strandboge 已提交
1940
virt_aa_helper_CFLAGS =						\
1941 1942
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/security			\
1943
		$(AM_CFLAGS)
J
Jamie Strandboge 已提交
1944 1945 1946 1947
endif
endif
EXTRA_DIST += $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1948
install-data-local: install-init install-systemd
1949 1950
if WITH_LIBVIRTD
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lockd"
1951
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lockd/files"
1952 1953
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lockd"
endif
1954 1955
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/images"
1956
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems"
1957
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/boot"
1958 1959 1960
if HAVE_SANLOCK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock"
endif
1961 1962 1963
if WITH_QEMU
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/qemu"
1964
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt/qemu"
1965
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/qemu"
1966 1967 1968 1969 1970
endif
if WITH_LXC
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lxc"
endif
J
Jim Fehlig 已提交
1971 1972 1973
if WITH_LIBXL
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/libxl"
J
Jim Fehlig 已提交
1974
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/libxl"
J
Jim Fehlig 已提交
1975
endif
1976 1977 1978 1979
if WITH_UML
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/uml"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/uml"
endif
1980 1981 1982
if WITH_XEN
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/xen"
endif
1983 1984
if WITH_NETWORK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/network"
1985
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/dnsmasq"
1986
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/network"
1987 1988 1989 1990
	$(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 已提交
1991 1992 1993 1994 1995 1996
	  { 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; }
1997
	test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
E
Eric Blake 已提交
1998
	   ln -s ../default.xml \
1999 2000 2001
	    $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
endif

2002
uninstall-local:: uninstall-init uninstall-systemd
2003
if WITH_LIBVIRTD
2004
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lockd/files" ||:
2005 2006 2007
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lockd" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lockd" ||:
endif
2008 2009
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
2010
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
2011
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
2012 2013 2014
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
2015 2016 2017 2018 2019
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" ||:
2020
endif
2021 2022 2023 2024
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
2025 2026 2027
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
2028
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
2029
endif
2030 2031 2032 2033
if WITH_UML
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/uml" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/uml" ||:
endif
2034 2035 2036
if WITH_XEN
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/xen" ||:
endif
2037 2038 2039 2040 2041 2042 2043 2044 2045
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 已提交
2046

2047 2048
CLEANFILES += *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda *.i *.s
DISTCLEANFILES += $(GENERATED_SYM_FILES)
2049
MAINTAINERCLEANFILES += $(REMOTE_DRIVER_GENERATED) $(VIR_NET_RPC_GENERATED)