Makefile.am 60.6 KB
Newer Older
D
Daniel Veillard 已提交
1 2
## Process this file with automake to produce Makefile.in

3
## Copyright (C) 2005-2012 Red Hat, Inc.
4 5
## See COPYING.LIB for the License of this software

6 7
# No libraries with the exception of LIBXML should be listed
# here. List them against the individual XXX_la_CFLAGS targets
8
# that actually use them. Also keep GETTEXT_CPPFLAGS at the end.
9 10
INCLUDES =	-I../gnulib/lib					\
		-I$(top_srcdir)/gnulib/lib			\
11
		-I../include					\
12 13
		-I$(top_srcdir)/include				\
		-I$(top_srcdir)/src/util			\
14 15
		-DIN_LIBVIRT					\
		$(GETTEXT_CPPFLAGS)
E
Eric Blake 已提交
16 17

AM_CFLAGS =	$(DRIVER_MODULE_CFLAGS)				\
18 19
		$(LIBXML_CFLAGS)				\
		$(WARN_CFLAGS)					\
E
Eric Blake 已提交
20 21 22
		$(LOCK_CHECKING_CFLAGS)				\
		$(WIN32_EXTRA_CFLAGS)				\
		$(COVERAGE_CFLAGS)
23 24
AM_LDFLAGS = $(COVERAGE_LDFLAGS)

L
Lai Jiangshan 已提交
25
EXTRA_DIST = $(conf_DATA) util/keymaps.csv
26

27
BUILT_SOURCES =
28 29 30
CLEANFILES =
DISTCLEANFILES =
MAINTAINERCLEANFILES =
31

E
Eric Blake 已提交
32 33
THREAD_LIBS = $(LIB_PTHREAD) $(LTLIBMULTITHREAD)

34 35 36
if WITH_NETWORK
UUID=$(shell uuidgen 2>/dev/null)
endif
37

C
Chris Lalancette 已提交
38
lib_LTLIBRARIES = libvirt.la libvirt-qemu.la
39

40
moddir = $(libdir)/libvirt/connection-driver
41 42
mod_LTLIBRARIES =

A
Amy Griffis 已提交
43
confdir = $(sysconfdir)/libvirt
44
conf_DATA = libvirt.conf
45

46 47 48 49 50 51
augeasdir = $(datadir)/augeas/lenses
augeas_DATA =

augeastestdir = $(datadir)/augeas/lenses/tests
augeastest_DATA =

52 53
# These files are not related to driver APIs. Simply generic
# helper APIs for various purposes
54
UTIL_SOURCES =							\
55
		util/bitmap.c util/bitmap.h			\
56
		util/buf.c util/buf.h				\
57
		util/command.c util/command.h			\
58 59 60
		util/conf.c util/conf.h				\
		util/cgroup.c util/cgroup.h			\
		util/event.c util/event.h			\
61
		util/event_poll.c util/event_poll.h		\
D
Daniel Veillard 已提交
62
		util/hooks.c util/hooks.h			\
63
		util/iptables.c util/iptables.h			\
G
Gerhard Stenzel 已提交
64
		util/ebtables.c util/ebtables.h			\
65
		util/dnsmasq.c util/dnsmasq.h                   \
66
		util/json.c util/json.h				\
67 68 69
		util/logging.c util/logging.h			\
		util/memory.c util/memory.h			\
		util/pci.c util/pci.h				\
70
		util/processinfo.c util/processinfo.h		\
71
		util/hostusb.c util/hostusb.h			\
M
Markus Groß 已提交
72
		util/sexpr.c util/sexpr.h			\
73
		util/stats_linux.c util/stats_linux.h		\
74
		util/storage_file.c util/storage_file.h		\
75
		util/sysinfo.c util/sysinfo.h			\
76 77 78
		util/threads.c util/threads.h			\
		util/threads-pthread.h				\
		util/threads-win32.h				\
H
Hu Tao 已提交
79
		util/threadpool.c util/threadpool.h		\
80 81
		util/uuid.c util/uuid.h				\
		util/util.c util/util.h				\
82
		util/viratomic.h util/viratomic.c		\
83
		util/viraudit.c util/viraudit.h			\
84
		util/virauth.c util/virauth.h			\
85
		util/virauthconfig.c util/virauthconfig.h	\
E
Eric Blake 已提交
86
		util/virfile.c util/virfile.h			\
87
		util/virnodesuspend.c util/virnodesuspend.h	\
88
		util/virobject.c util/virobject.h		\
89
		util/virpidfile.c util/virpidfile.h		\
90
		util/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 153 154 155 156 157
LOCK_DAEMON_SOURCES = \
		locking/lock_daemon.h \
		locking/lock_daemon.c \
		locking/lock_daemon_config.h \
		locking/lock_daemon_config.c \
		$(NULL)

158 159
NETDEV_CONF_SOURCES =						\
		conf/netdev_bandwidth_conf.h conf/netdev_bandwidth_conf.c \
160 161
		conf/netdev_vport_profile_conf.h conf/netdev_vport_profile_conf.c \
		conf/netdev_vlan_conf.h conf/netdev_vlan_conf.c
162

163
# XML configuration format handling sources
164 165
# Domain driver generic impl APIs
DOMAIN_CONF_SOURCES =						\
166
		conf/capabilities.c conf/capabilities.h		\
167
		conf/domain_conf.c conf/domain_conf.h		\
168
		conf/domain_audit.c conf/domain_audit.h		\
169 170
		conf/domain_nwfilter.c conf/domain_nwfilter.h	\
		conf/snapshot_conf.c conf/snapshot_conf.h
171 172 173

DOMAIN_EVENT_SOURCES =						\
		conf/domain_event.c conf/domain_event.h
174 175

# Network driver generic impl APIs
176
NETWORK_CONF_SOURCES =						\
177
		conf/network_conf.c conf/network_conf.h
178

179 180
# Network filter driver generic impl APIs
NWFILTER_PARAM_CONF_SOURCES =					\
181
		conf/nwfilter_params.c conf/nwfilter_params.h	\
182 183
		conf/nwfilter_ipaddrmap.c			\
		conf/nwfilter_ipaddrmap.h			\
184
		conf/nwfilter_conf.h
185

186
NWFILTER_CONF_SOURCES =						\
187 188 189
		$(NWFILTER_PARAM_CONF_SOURCES)			\
		conf/nwfilter_conf.c conf/nwfilter_conf.h

190
# Storage driver generic impl APIs
191 192
STORAGE_CONF_SOURCES =                                         \
		conf/storage_conf.h conf/storage_conf.c
193

194
# Interface driver generic impl APIs
195 196
INTERFACE_CONF_SOURCES =                                       \
		conf/interface_conf.c conf/interface_conf.h
197

198
# Secret driver generic impl APIs
199 200 201 202 203 204 205 206 207 208
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

209 210
CPU_CONF_SOURCES =						\
		conf/cpu_conf.c conf/cpu_conf.h
211

212 213 214
# Safe console handling helper APIs
CONSOLE_CONF_SOURCES =						\
		conf/virconsole.c conf/virconsole.h
215

216 217 218 219
# Device Helper APIs
DEVICE_CONF_SOURCES =                                           \
		conf/device_conf.c conf/device_conf.h

220
CONF_SOURCES =							\
221
		$(NETDEV_CONF_SOURCES)				\
222 223 224
		$(DOMAIN_CONF_SOURCES)				\
		$(DOMAIN_EVENT_SOURCES)				\
		$(NETWORK_CONF_SOURCES)				\
225
		$(NWFILTER_CONF_SOURCES)			\
226 227 228 229
		$(NODE_DEVICE_CONF_SOURCES)			\
		$(STORAGE_CONF_SOURCES)				\
		$(ENCRYPTION_CONF_SOURCES)			\
		$(INTERFACE_CONF_SOURCES)			\
230
		$(SECRET_CONF_SOURCES)				\
231
		$(CPU_CONF_SOURCES)				\
232 233
		$(CONSOLE_CONF_SOURCES)				\
		$(DEVICE_CONF_SOURCES)
234

235
# The remote RPC driver, covering domains, storage, networks, etc
236
REMOTE_DRIVER_GENERATED = \
E
Eric Blake 已提交
237 238 239 240 241 242 243 244 245
		$(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
246
REMOTE_DRIVER_PROTOCOL = $(REMOTE_PROTOCOL) $(QEMU_PROTOCOL)
247

248 249
$(srcdir)/remote/remote_client_bodies.h: $(srcdir)/rpc/gendispatch.pl \
		$(REMOTE_PROTOCOL)
250
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
251
	  -k remote REMOTE $(REMOTE_PROTOCOL) > $@
252

253 254
$(srcdir)/remote/qemu_client_bodies.h: $(srcdir)/rpc/gendispatch.pl \
		$(QEMU_PROTOCOL)
255
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/gendispatch.pl \
256
	  -k qemu QEMU $(QEMU_PROTOCOL) > $@
257 258 259 260 261

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

263
EXTRA_DIST +=  $(REMOTE_DRIVER_PROTOCOL) \
264
		$(REMOTE_DRIVER_GENERATED)
265

266 267 268 269 270 271 272 273 274 275
# 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
276 277 278 279

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

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

327
# .libs/libvirt.so is built by libtool as a side-effect of the Makefile
328 329
# rule for libvirt.la.  However, checking symbols relies on Linux ELF layout
if WITH_LINUX
330 331 332
check-symfile: libvirt.syms libvirt.la
	$(AM_V_GEN)$(PERL) $(srcdir)/check-symfile.pl libvirt.syms \
	  .libs/libvirt.so
333 334 335
else
check-symfile:
endif
336 337
check-symsorting:
	$(AM_V_GEN)$(PERL) $(srcdir)/check-symsorting.pl $(USED_SYM_FILES)
338

339 340 341
PROTOCOL_STRUCTS = \
	$(srcdir)/remote_protocol-structs \
	$(srcdir)/qemu_protocol-structs \
J
Jiri Denemark 已提交
342 343
	$(srcdir)/virnetprotocol-structs \
	$(srcdir)/virkeepaliveprotocol-structs
344
if WITH_REMOTE
345 346
check-protocol: $(PROTOCOL_STRUCTS) $(PROTOCOL_STRUCTS:structs=struct)

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

364 365
# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
366
		test/test_driver.c test/test_driver.h
367 368 369

# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
370 371 372 373 374 375
		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
376
if WITH_XEN_INOTIFY
377
XEN_DRIVER_SOURCES += xen/xen_inotify.c xen/xen_inotify.h
378
endif
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 411 412 413 414 415 416 417
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)

418
LXC_DRIVER_SOURCES =						\
419 420
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_MONITOR_GENERATED)			\
421 422
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
423
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
424
		lxc/lxc_domain.c lxc/lxc_domain.h		\
425
		lxc/lxc_monitor.c lxc/lxc_monitor.h		\
426
		lxc/lxc_process.c lxc/lxc_process.h		\
G
Gao feng 已提交
427
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
428
		lxc/lxc_driver.c lxc/lxc_driver.h
429

430
LXC_CONTROLLER_SOURCES =					\
431 432
		$(LXC_PROTOCOL_GENERATED)			\
		$(LXC_CONTROLLER_GENERATED)			\
433 434
		lxc/lxc_conf.c lxc/lxc_conf.h			\
		lxc/lxc_container.c lxc/lxc_container.h		\
435
		lxc/lxc_cgroup.c lxc/lxc_cgroup.h		\
G
Gao feng 已提交
436
		lxc/lxc_fuse.c lxc/lxc_fuse.h			\
437
		lxc/lxc_controller.c
438

J
Jamie Strandboge 已提交
439
SECURITY_DRIVER_APPARMOR_HELPER_SOURCES =			\
E
Eric Blake 已提交
440
		$(DATATYPES_SOURCES)				\
J
Jamie Strandboge 已提交
441 442
		security/virt-aa-helper.c

443 444 445
PHYP_DRIVER_SOURCES =						\
		phyp/phyp_driver.c phyp/phyp_driver.h

446
OPENVZ_DRIVER_SOURCES =						\
447
		openvz/openvz_conf.c openvz/openvz_conf.h	\
448 449
		openvz/openvz_driver.c openvz/openvz_driver.h   \
		openvz/openvz_util.c openvz/openvz_util.h
450

E
Eric Blake 已提交
451
VMWARE_DRIVER_SOURCES =						\
452
		vmware/vmware_driver.c vmware/vmware_driver.h	\
453 454
		vmware/vmware_conf.c vmware/vmware_conf.h

455
VBOX_DRIVER_SOURCES =						\
E
Eric Blake 已提交
456 457 458 459 460 461
	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			\
462 463
	vbox/vbox_V4_0.c vbox/vbox_CAPI_v4_0.h			\
	vbox/vbox_V4_1.c vbox/vbox_CAPI_v4_1.h
464

E
Eric Blake 已提交
465
VBOX_DRIVER_EXTRA_DIST =					\
466 467 468
		vbox/vbox_tmpl.c vbox/README			\
		vbox/vbox_MSCOMGlue.c vbox/vbox_MSCOMGlue.h	\
		vbox/vbox_XPCOMCGlue.c vbox/vbox_XPCOMCGlue.h
469

O
Osier Yang 已提交
470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487
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				\
488
		qemu/qemu_bridge_filter.h
R
Richard W.M. Jones 已提交
489

O
Osier Yang 已提交
490
XENAPI_DRIVER_SOURCES =						\
491
		xenapi/xenapi_driver.c xenapi/xenapi_driver.h	\
O
Osier Yang 已提交
492
		xenapi/xenapi_driver_private.h			\
493 494
		xenapi/xenapi_utils.c xenapi/xenapi_utils.h

J
Jim Fehlig 已提交
495 496 497 498
LIBXL_DRIVER_SOURCES =						\
		libxl/libxl_conf.c libxl/libxl_conf.h		\
		libxl/libxl_driver.c libxl/libxl_driver.h

499
UML_DRIVER_SOURCES =						\
D
Daniel P. Berrange 已提交
500 501
		uml/uml_conf.c uml/uml_conf.h			\
		uml/uml_driver.c uml/uml_driver.h
502

O
Osier Yang 已提交
503 504 505 506 507 508
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	\
509
		esx/esx_storage_backend_vmfs.c esx/esx_storage_backend_vmfs.h	\
510
		esx/esx_storage_backend_iscsi.c esx/esx_storage_backend_iscsi.h	\
O
Osier Yang 已提交
511
		esx/esx_device_monitor.c esx/esx_device_monitor.h	\
512
		esx/esx_secret_driver.c esx/esx_secret_driver.h		\
O
Osier Yang 已提交
513 514 515 516
		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		\
517
		esx/esx_vi_types.c esx/esx_vi_types.h
518

519
ESX_DRIVER_GENERATED =							\
520 521
		esx/esx_vi_methods.generated.c				\
		esx/esx_vi_methods.generated.h				\
522
		esx/esx_vi_methods.generated.macro			\
523 524 525 526 527
		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			\
528 529 530
		esx/esx_vi_types.generated.typefromstring		\
		esx/esx_vi.generated.c					\
		esx/esx_vi.generated.h
531

O
Osier Yang 已提交
532
ESX_DRIVER_EXTRA_DIST =							\
533 534 535 536 537
		esx/README						\
		esx/esx_vi_generator.input				\
		esx/esx_vi_generator.py					\
		$(ESX_DRIVER_GENERATED)

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

572
NETWORK_DRIVER_SOURCES =					\
573
		network/bridge_driver.h network/bridge_driver.c
574

575 576 577 578
INTERFACE_DRIVER_SOURCES =

if WITH_INTERFACE
INTERFACE_DRIVER_SOURCES +=					\
579 580
		interface/interface_driver.h        \
		interface/interface_driver.c
581 582 583 584

if WITH_NETCF
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_netcf.c
585
endif
586 587 588 589 590
if HAVE_UDEV
INTERFACE_DRIVER_SOURCES +=					\
		interface/interface_backend_udev.c
endif
endif
591

592
SECRET_DRIVER_SOURCES =						\
593
		secret/secret_driver.h secret/secret_driver.c
594

595
# Storage backend specific impls
O
Osier Yang 已提交
596 597
STORAGE_DRIVER_SOURCES =						\
		storage/storage_driver.h storage/storage_driver.c	\
598
		storage/storage_backend.h storage/storage_backend.c
599 600

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

603
STORAGE_DRIVER_LVM_SOURCES =					\
O
Osier Yang 已提交
604
		storage/storage_backend_logical.h		\
605
		storage/storage_backend_logical.c
606 607

STORAGE_DRIVER_ISCSI_SOURCES =					\
608
		storage/storage_backend_iscsi.h storage/storage_backend_iscsi.c
609

610
STORAGE_DRIVER_SCSI_SOURCES =					\
611
		storage/storage_backend_scsi.h storage/storage_backend_scsi.c
612

D
Dave Allan 已提交
613
STORAGE_DRIVER_MPATH_SOURCES =					\
614
		storage/storage_backend_mpath.h storage/storage_backend_mpath.c
D
Dave Allan 已提交
615

616
STORAGE_DRIVER_DISK_SOURCES =					\
617
		storage/storage_backend_disk.h storage/storage_backend_disk.c
618

619 620 621
STORAGE_DRIVER_RBD_SOURCES =					\
		storage/storage_backend_rbd.h storage/storage_backend_rbd.c

622 623 624
STORAGE_DRIVER_SHEEPDOG_SOURCES =				\
		storage/storage_backend_sheepdog.h storage/storage_backend_sheepdog.c

625
STORAGE_HELPER_DISK_SOURCES =					\
626
		storage/parthelper.c
627

628 629 630
UTIL_IO_HELPER_SOURCES =					\
		util/iohelper.c

631
# Network filters
O
Osier Yang 已提交
632
NWFILTER_DRIVER_SOURCES =						\
633
		nwfilter/nwfilter_driver.h nwfilter/nwfilter_driver.c	\
634 635
		nwfilter/nwfilter_gentech_driver.c			\
		nwfilter/nwfilter_gentech_driver.h			\
S
Stefan Berger 已提交
636 637
		nwfilter/nwfilter_dhcpsnoop.c				\
		nwfilter/nwfilter_dhcpsnoop.h				\
638
		nwfilter/nwfilter_ebiptables_driver.c			\
639 640 641
		nwfilter/nwfilter_ebiptables_driver.h			\
		nwfilter/nwfilter_learnipaddr.c				\
		nwfilter/nwfilter_learnipaddr.h
642

643

644
# Security framework and drivers for various models
O
Osier Yang 已提交
645 646 647 648 649
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		\
650
		security/security_manager.h security/security_manager.c
651

652
SECURITY_DRIVER_SELINUX_SOURCES =				\
653
		security/security_selinux.h security/security_selinux.c
654

J
Jamie Strandboge 已提交
655 656 657
SECURITY_DRIVER_APPARMOR_SOURCES =				\
		security/security_apparmor.h security/security_apparmor.c

658

659
NODE_DEVICE_DRIVER_SOURCES =					\
O
Osier Yang 已提交
660 661
		node_device/node_device_driver.c		\
		node_device/node_device_driver.h		\
662
		node_device/node_device_linux_sysfs.c
663 664

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
665
		node_device/node_device_hal.c			\
666
		node_device/node_device_hal.h
667

668
NODE_DEVICE_DRIVER_UDEV_SOURCES =				\
D
Daniel Veillard 已提交
669 670
		node_device/node_device_udev.c			\
		node_device/node_device_udev.h
671

J
Jiri Denemark 已提交
672 673 674 675
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 已提交
676
		cpu/cpu_s390.h cpu/cpu_s390.c			\
C
Chuck Short 已提交
677
		cpu/cpu_arm.h cpu/cpu_arm.c			\
P
Prerna Saxena 已提交
678
		cpu/cpu_map.h cpu/cpu_map.c cpu/cpu_powerpc.h	\
679
		cpu/cpu_powerpc.c cpu/cpu_ppc_data.h
680

681 682 683
VMX_SOURCES =							\
		vmx/vmx.c vmx/vmx.h

684 685
XENXS_SOURCES =							\
		xenxs/xenxs_private.h				\
686 687
		xenxs/xen_sxpr.c xenxs/xen_sxpr.h		\
		xenxs/xen_xm.c xenxs/xen_xm.h
688

J
Jiri Denemark 已提交
689 690
pkgdata_DATA =	cpu/cpu_map.xml

E
Eric Blake 已提交
691
EXTRA_DIST +=	$(pkgdata_DATA)
692

693 694 695 696 697 698
#########################
#
# Build up list of libvirt.la source files based on configure conditions
#
# First deal with sources usable in non-daemon context

699
noinst_LTLIBRARIES = libvirt_util.la
700 701
libvirt_la_LIBADD = $(libvirt_la_BUILT_LIBADD)
libvirt_la_BUILT_LIBADD = libvirt_util.la
702 703
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)
704
libvirt_util_la_CFLAGS = $(CAPNG_CFLAGS) $(YAJL_CFLAGS) $(LIBNL_CFLAGS) \
705
		$(AM_CFLAGS) $(AUDIT_CFLAGS) $(DEVMAPPER_CFLAGS) \
E
Eric Blake 已提交
706
		$(DBUS_CFLAGS) $(LDEXP_LIBM)
707
libvirt_util_la_LIBADD = $(CAPNG_LIBS) $(YAJL_LIBS) $(LIBNL_LIBS) \
708
		$(THREAD_LIBS) $(AUDIT_LIBS) $(DEVMAPPER_LIBS) \
709
		$(LIB_CLOCK_GETTIME) $(DBUS_LIBS) $(MSCOM_LIBS) $(LIBXML_LIBS)
710

711 712

noinst_LTLIBRARIES += libvirt_conf.la
713
libvirt_la_BUILT_LIBADD += libvirt_conf.la
714
libvirt_conf_la_SOURCES = $(CONF_SOURCES)
715 716
libvirt_conf_la_CFLAGS = $(AM_CFLAGS)
libvirt_conf_la_LDFLAGS = $(AM_LDFLAGS)
717

J
Jiri Denemark 已提交
718
noinst_LTLIBRARIES += libvirt_cpu.la
719
libvirt_la_BUILT_LIBADD += libvirt_cpu.la
J
Jiri Denemark 已提交
720
libvirt_cpu_la_CFLAGS = \
721
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
J
Jiri Denemark 已提交
722 723
libvirt_cpu_la_SOURCES = $(CPU_SOURCES)

724 725 726 727
if WITH_VMX
noinst_LTLIBRARIES += libvirt_vmx.la
libvirt_la_BUILT_LIBADD += libvirt_vmx.la
libvirt_vmx_la_CFLAGS = \
728
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
729 730 731
libvirt_vmx_la_SOURCES = $(VMX_SOURCES)
endif

732
if WITH_XENXS
733 734 735
noinst_LTLIBRARIES += libvirt_xenxs.la
libvirt_la_BUILT_LIBADD += libvirt_xenxs.la
libvirt_xenxs_la_CFLAGS = \
736
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
737 738 739
libvirt_xenxs_la_SOURCES = $(XENXS_SOURCES)
endif

740

741
noinst_LTLIBRARIES += libvirt_driver.la
742
libvirt_la_BUILT_LIBADD += libvirt_driver.la
743
libvirt_driver_la_SOURCES = $(DRIVER_SOURCES)
744

M
Matthias Bolte 已提交
745
libvirt_driver_la_CFLAGS = $(NUMACTL_CFLAGS) $(GNUTLS_CFLAGS) \
746
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
747
libvirt_driver_la_LIBADD = $(NUMACTL_LIBS) $(GNUTLS_LIBS) $(DLOPEN_LIBS)
748

749
USED_SYM_FILES = $(srcdir)/libvirt_private.syms
750

751
if WITH_TEST
752
noinst_LTLIBRARIES += libvirt_driver_test.la
753
libvirt_la_BUILT_LIBADD += libvirt_driver_test.la
754
libvirt_driver_test_la_CFLAGS = \
755
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
756
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
757 758 759
endif

if WITH_REMOTE
760
noinst_LTLIBRARIES += libvirt_driver_remote.la
761
libvirt_la_BUILT_LIBADD += libvirt_driver_remote.la
762 763
libvirt_driver_remote_la_CFLAGS =				\
		$(GNUTLS_CFLAGS)				\
E
Eric Blake 已提交
764
		$(XDR_CFLAGS)					\
765 766
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/rpc				\
767 768
		$(AM_CFLAGS)
libvirt_driver_remote_la_LDFLAGS = $(AM_LDFLAGS)
769 770 771 772
libvirt_driver_remote_la_LIBADD = $(GNUTLS_LIBS) \
                libvirt-net-rpc-client.la \
                libvirt-net-rpc-server.la \
                libvirt-net-rpc.la
773
libvirt_driver_remote_la_SOURCES = $(REMOTE_DRIVER_SOURCES)
774

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

777 778
endif WITH_REMOTE

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

783
%protocol.h: %protocol.x $(srcdir)/rpc/genprotocol.pl
784
	$(AM_V_GEN)$(PERL) -w $(srcdir)/rpc/genprotocol.pl $(RPCGEN) -h \
E
Eric Blake 已提交
785
	       $< $@
786

787
if WITH_XEN
E
Eric Blake 已提交
788 789 790
noinst_LTLIBRARIES += libvirt_driver_xen_impl.la
libvirt_driver_xen_la_SOURCES =
libvirt_driver_xen_la_LIBADD = libvirt_driver_xen_impl.la
791 792
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_xen.la
E
Eric Blake 已提交
793 794
libvirt_driver_xen_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_xen_la_LDFLAGS = -module -avoid-version
795
else
796
noinst_LTLIBRARIES += libvirt_driver_xen.la
797 798
# Stateful, so linked to daemon instead
#libvirt_la_BUILT_LIBADD += libvirt_driver_xen.la
799
endif
E
Eric Blake 已提交
800 801

libvirt_driver_xen_impl_la_CFLAGS =					\
802
		$(XEN_CFLAGS)					\
803 804
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
805
		$(AM_CFLAGS)
E
Eric Blake 已提交
806 807 808
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)
809 810
endif

811 812
if WITH_PHYP
noinst_LTLIBRARIES += libvirt_driver_phyp.la
813
libvirt_la_BUILT_LIBADD += libvirt_driver_phyp.la
814
libvirt_driver_phyp_la_LIBADD = $(LIBSSH2_LIBS)
815
libvirt_driver_phyp_la_CFLAGS = $(LIBSSH2_CFLAGS) \
816
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
817 818 819
libvirt_driver_phyp_la_SOURCES = $(PHYP_DRIVER_SOURCES)
endif

820
if WITH_OPENVZ
821
noinst_LTLIBRARIES += libvirt_driver_openvz.la
822
libvirt_la_BUILT_LIBADD += libvirt_driver_openvz.la
823
libvirt_driver_openvz_la_CFLAGS = \
824
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
825
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
826 827
endif

828 829 830 831
if WITH_VMWARE
noinst_LTLIBRARIES += libvirt_driver_vmware.la
libvirt_la_BUILT_LIBADD += libvirt_driver_vmware.la
libvirt_driver_vmware_la_CFLAGS = \
832
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
833 834 835
libvirt_driver_vmware_la_SOURCES = $(VMWARE_DRIVER_SOURCES)
endif

836 837
if WITH_VBOX
noinst_LTLIBRARIES += libvirt_driver_vbox.la
838
libvirt_la_BUILT_LIBADD += libvirt_driver_vbox.la
839
libvirt_driver_vbox_la_CFLAGS = \
840
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
841
libvirt_driver_vbox_la_LIBADD = $(DLOPEN_LIBS) $(MSCOM_LIBS)
842 843 844
libvirt_driver_vbox_la_SOURCES = $(VBOX_DRIVER_SOURCES)
endif

845 846
if WITH_XENAPI
noinst_LTLIBRARIES += libvirt_driver_xenapi.la
847
libvirt_la_BUILT_LIBADD += libvirt_driver_xenapi.la
848
libvirt_driver_xenapi_la_CFLAGS = $(LIBXENSERVER_CFLAGS) $(LIBCURL_CFLAGS) \
849
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
850
libvirt_driver_xenapi_la_LDFLAGS = $(AM_LDFLAGS)
851
libvirt_driver_xenapi_la_LIBADD = $(LIBXENSERVER_LIBS) $(LIBCURL_LIBS)
852 853 854
libvirt_driver_xenapi_la_SOURCES = $(XENAPI_DRIVER_SOURCES)
endif

J
Jim Fehlig 已提交
855
if WITH_LIBXL
E
Eric Blake 已提交
856 857 858
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 已提交
859 860
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_libxl.la
E
Eric Blake 已提交
861 862
libvirt_driver_libxl_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_libxl_la_LDFLAGS = -module -avoid-version
J
Jim Fehlig 已提交
863 864 865 866 867
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 已提交
868 869

libvirt_driver_libxl_impl_la_CFLAGS = $(LIBXL_CFLAGS)		\
870 871
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/xenxs			\
872
		$(AM_CFLAGS)
E
Eric Blake 已提交
873 874 875
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 已提交
876 877
endif

878
if WITH_QEMU
E
Eric Blake 已提交
879 880 881
noinst_LTLIBRARIES += libvirt_driver_qemu_impl.la
libvirt_driver_qemu_la_SOURCES =
libvirt_driver_qemu_la_LIBADD = libvirt_driver_qemu_impl.la
882 883
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_qemu.la
E
Eric Blake 已提交
884 885
libvirt_driver_qemu_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_qemu_la_LDFLAGS = -module -avoid-version
886
else
887
noinst_LTLIBRARIES += libvirt_driver_qemu.la
888
# Stateful, so linked to daemon instead
889
#libvirt_la_BUILT_LIBADD += libvirt_driver_qemu.la
890
endif
E
Eric Blake 已提交
891 892

libvirt_driver_qemu_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
893
                                $(GNUTLS_CFLAGS) \
S
Serge Hallyn 已提交
894
                                $(LIBNL_CFLAGS) \
895
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
896 897
libvirt_driver_qemu_impl_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_driver_qemu_impl_la_LIBADD = $(NUMACTL_LIBS) \
898 899
				$(CAPNG_LIBS) \
                                $(GNUTLS_LIBS) \
S
Serge Hallyn 已提交
900
				$(LIBNL_LIBS)
E
Eric Blake 已提交
901
libvirt_driver_qemu_impl_la_SOURCES = $(QEMU_DRIVER_SOURCES)
902

A
Amy Griffis 已提交
903
conf_DATA += qemu/qemu.conf
904

905
augeas_DATA += qemu/libvirtd_qemu.aug
906 907
augeastest_DATA += test_libvirtd_qemu.aug
CLEANFILES += test_libvirtd_qemu.aug
908

909
endif
910
EXTRA_DIST += qemu/qemu.conf qemu/libvirtd_qemu.aug \
911
		qemu/test_libvirtd_qemu.aug.in qemu/THREADS.txt
912

913 914

if WITH_LXC
E
Eric Blake 已提交
915 916 917
noinst_LTLIBRARIES += libvirt_driver_lxc_impl.la
libvirt_driver_lxc_la_SOURCES =
libvirt_driver_lxc_la_LIBADD = libvirt_driver_lxc_impl.la
918 919
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_lxc.la
E
Eric Blake 已提交
920 921
libvirt_driver_lxc_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_lxc_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
922
else
923
noinst_LTLIBRARIES += libvirt_driver_lxc.la
924
# Stateful, so linked to daemon instead
925
#libvirt_la_BUILT_LIBADD += libvirt_driver_lxc.la
926
endif
E
Eric Blake 已提交
927 928

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

conf_DATA += lxc/lxc.conf

947
augeas_DATA += lxc/libvirtd_lxc.aug
948 949
augeastest_DATA += test_libvirtd_lxc.aug
CLEANFILES += test_libvirtd_lxc.aug
950

951
endif
952
EXTRA_DIST += lxc/lxc.conf lxc/libvirtd_lxc.aug lxc/test_libvirtd_lxc.aug.in
953

954
if WITH_UML
E
Eric Blake 已提交
955 956 957
noinst_LTLIBRARIES += libvirt_driver_uml_impl.la
libvirt_driver_uml_la_SOURCES =
libvirt_driver_uml_la_LIBADD = libvirt_driver_uml_impl.la
958 959
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_uml.la
E
Eric Blake 已提交
960 961
libvirt_driver_uml_la_LIBADD += ../gnulib/lib/libgnu.la
libvirt_driver_uml_la_LDFLAGS = -module -avoid-version
962
else
963 964
noinst_LTLIBRARIES += libvirt_driver_uml.la
# Stateful, so linked to daemon instead
965
#libvirt_la_BUILT_LIBADD += libvirt_driver_uml.la
966
endif
E
Eric Blake 已提交
967 968

libvirt_driver_uml_impl_la_CFLAGS = $(NUMACTL_CFLAGS) \
969
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
E
Eric Blake 已提交
970 971 972
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)
973
endif
974

D
Daniel Veillard 已提交
975

976
BUILT_SOURCES += $(ESX_DRIVER_GENERATED)
D
Daniel Veillard 已提交
977

978 979
ESX_GENERATED_STAMP = .esx_vi_generator.stamp

E
Eric Blake 已提交
980 981
EXTRA_DIST += $(ESX_GENERATED_STAMP)

982 983 984
$(ESX_DRIVER_GENERATED): $(ESX_GENERATED_STAMP)

$(ESX_GENERATED_STAMP): $(srcdir)/esx/esx_vi_generator.input \
985
                         $(srcdir)/esx/esx_vi_generator.py
986 987 988 989 990
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/esx/esx_vi_generator.py \
	  && touch $@

MAINTAINERCLEANFILES += $(ESX_DRIVER_GENERATED) $(ESX_GENERATED_STAMP)

D
Daniel Veillard 已提交
991

992 993
if WITH_ESX
noinst_LTLIBRARIES += libvirt_driver_esx.la
994
libvirt_la_BUILT_LIBADD += libvirt_driver_esx.la
995
libvirt_driver_esx_la_CFLAGS = $(LIBCURL_CFLAGS) \
996
		-I$(top_srcdir)/src/conf -I$(top_srcdir)/src/vmx $(AM_CFLAGS)
997
libvirt_driver_esx_la_LDFLAGS = $(AM_LDFLAGS)
998
libvirt_driver_esx_la_LIBADD = $(LIBCURL_LIBS)
999
libvirt_driver_esx_la_SOURCES = $(ESX_DRIVER_SOURCES)
1000
libvirt_driver_esx_la_DEPENDENCIES = $(ESX_DRIVER_GENERATED)
1001 1002
endif

M
Matthias Bolte 已提交
1003

1004 1005
BUILT_SOURCES += $(HYPERV_DRIVER_GENERATED)

1006 1007
HYPERV_GENERATED_STAMP = .hyperv_wmi_generator.stamp

E
Eric Blake 已提交
1008 1009
EXTRA_DIST += $(HYPERV_GENERATED_STAMP)

1010 1011 1012
$(HYPERV_DRIVER_GENERATED): $(HYPERV_GENERATED_STAMP)

$(HYPERV_GENERATED_STAMP): $(srcdir)/hyperv/hyperv_wmi_generator.input \
1013
                            $(srcdir)/hyperv/hyperv_wmi_generator.py
1014 1015 1016 1017
	$(AM_V_GEN)srcdir=$(srcdir) $(PYTHON) $(srcdir)/hyperv/hyperv_wmi_generator.py \
	  && touch $@

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

M
Matthias Bolte 已提交
1019 1020 1021 1022
if WITH_HYPERV
noinst_LTLIBRARIES += libvirt_driver_hyperv.la
libvirt_la_BUILT_LIBADD += libvirt_driver_hyperv.la
libvirt_driver_hyperv_la_CFLAGS = $(OPENWSMAN_CFLAGS) \
1023
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
M
Matthias Bolte 已提交
1024 1025 1026 1027 1028
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 已提交
1029 1030 1031 1032 1033 1034 1035 1036
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

1037
if WITH_NETWORK
E
Eric Blake 已提交
1038 1039 1040
noinst_LTLIBRARIES += libvirt_driver_network_impl.la
libvirt_driver_network_la_SOURCES =
libvirt_driver_network_la_LIBADD = libvirt_driver_network_impl.la
1041 1042
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_network.la
1043
libvirt_driver_network_la_LIBADD += ../gnulib/lib/libgnu.la $(LIBNL_LIBS) $(DBUS_LIBS)
E
Eric Blake 已提交
1044
libvirt_driver_network_la_LDFLAGS = -module -avoid-version $(AM_LDFLAGS)
1045
else
1046
noinst_LTLIBRARIES += libvirt_driver_network.la
1047
# Stateful, so linked to daemon instead
1048
#libvirt_la_BUILT_LIBADD += libvirt_driver_network.la
1049
endif
E
Eric Blake 已提交
1050 1051

libvirt_driver_network_impl_la_CFLAGS = \
1052
		$(LIBNL_CFLAGS) $(DBUS_CFLAGS) \
1053
		-I$(top_srcdir)/src/conf $(AM_CFLAGS) $(DBUS_CFLAGS)
E
Eric Blake 已提交
1054
libvirt_driver_network_impl_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
1055
endif
1056 1057 1058
EXTRA_DIST += network/default.xml


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

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

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

1136
if WITH_STORAGE_LVM
1137
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
1138 1139
endif

1140
if WITH_STORAGE_ISCSI
1141
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
1142 1143
endif

1144
if WITH_STORAGE_SCSI
1145
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SCSI_SOURCES)
1146 1147
endif

D
Dave Allan 已提交
1148
if WITH_STORAGE_MPATH
1149 1150 1151
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 已提交
1152 1153
endif

1154
if WITH_STORAGE_DISK
1155
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
1156
endif
1157

1158
if WITH_STORAGE_RBD
1159 1160
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_RBD_SOURCES)
libvirt_driver_storage_impl_la_LIBADD += $(LIBRBD_LIBS)
1161 1162
endif

1163
if WITH_STORAGE_SHEEPDOG
1164
libvirt_driver_storage_impl_la_SOURCES += $(STORAGE_DRIVER_SHEEPDOG_SOURCES)
1165 1166
endif

1167 1168 1169 1170 1171 1172 1173
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
1174
#libvirt_la_BUILT_LIBADD += libvirt_driver_nodedev.la
1175 1176 1177
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

1178
libvirt_driver_nodedev_la_CFLAGS = \
1179
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1180
libvirt_driver_nodedev_la_LDFLAGS = $(AM_LDFLAGS)
1181
libvirt_driver_nodedev_la_LIBADD =
1182

1183 1184 1185
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
1186
libvirt_driver_nodedev_la_LIBADD += $(HAL_LIBS)
1187
endif
1188 1189
if HAVE_UDEV
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_UDEV_SOURCES)
1190
libvirt_driver_nodedev_la_CFLAGS += $(UDEV_CFLAGS) $(PCIACCESS_CFLAGS)
1191
libvirt_driver_nodedev_la_LIBADD += $(UDEV_LIBS) $(PCIACCESS_LIBS)
1192
endif
1193 1194

if WITH_DRIVER_MODULES
1195
libvirt_driver_nodedev_la_LIBADD += ../gnulib/lib/libgnu.la
1196 1197 1198 1199 1200
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


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


1221 1222 1223 1224
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 = \
1225
		-I$(top_srcdir)/src/conf $(AM_CFLAGS)
1226 1227
libvirt_security_manager_la_LDFLAGS = $(AM_LDFLAGS)
libvirt_security_manager_la_LIBADD =
1228
if WITH_SECDRIVER_SELINUX
1229 1230 1231
libvirt_security_manager_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
libvirt_security_manager_la_CFLAGS += $(SELINUX_CFLAGS)
libvirt_security_manager_la_LIBADD += $(SELINUX_LIBS)
1232
endif
J
Jamie Strandboge 已提交
1233
if WITH_SECDRIVER_APPARMOR
1234 1235 1236
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 已提交
1237
endif
1238

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

1279 1280 1281 1282 1283 1284
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

1285
AUG_GENTEST = $(PERL) $(top_srcdir)/build-aux/augeas-gentest.pl
1286
EXTRA_DIST += $(top_srcdir)/build-aux/augeas-gentest.pl
1287

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

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

1301
if WITH_LXC
1302 1303
test_libvirtd_lxc.aug: lxc/test_libvirtd_lxc.aug.in \
		$(srcdir)/lxc/lxc.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1304
	$(AM_V_GEN)$(AUG_GENTEST) $(srcdir)/lxc/lxc.conf $< $@
1305

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

1314
if HAVE_SANLOCK
1315 1316
test_libvirt_sanlock.aug: locking/test_libvirt_sanlock.aug.in \
		locking/qemu-sanlock.conf $(AUG_GENTEST)
E
Eric Blake 已提交
1317
	$(AM_V_GEN)$(AUG_GENTEST) locking/qemu-sanlock.conf $< $@
1318

1319
check-augeas-sanlock: test_libvirt_sanlock.aug
1320
	$(AM_V_GEN)if test -x '$(AUGPARSE)'; then \
1321
	    '$(AUGPARSE)' -I $(srcdir)/locking test_libvirt_sanlock.aug; \
1322
	fi
1323 1324 1325
else
check-augeas-sanlock:
endif
1326

1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345
#
# 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.
#

1346
if WITH_DRIVER_MODULES
1347
USED_SYM_FILES += $(srcdir)/libvirt_driver_modules.syms
1348
endif
1349

1350
if WITH_LINUX
1351
USED_SYM_FILES += $(srcdir)/libvirt_linux.syms
1352
endif
1353

1354
if WITH_ESX
1355
USED_SYM_FILES += $(srcdir)/libvirt_esx.syms
1356 1357
endif

1358
if WITH_LIBVIRTD
1359
USED_SYM_FILES += $(srcdir)/libvirt_daemon.syms
1360 1361
endif

1362
if WITH_OPENVZ
1363
USED_SYM_FILES += $(srcdir)/libvirt_openvz.syms
1364 1365
endif

1366
if WITH_VMX
1367
USED_SYM_FILES += $(srcdir)/libvirt_vmx.syms
1368 1369
endif

1370
if WITH_XENXS
1371
USED_SYM_FILES += $(srcdir)/libvirt_xenxs.syms
1372 1373
endif

E
Eric Blake 已提交
1374
if HAVE_SASL
1375
USED_SYM_FILES += $(srcdir)/libvirt_sasl.syms
E
Eric Blake 已提交
1376 1377
endif

1378
if HAVE_LIBSSH2
1379
USED_SYM_FILES += $(srcdir)/libvirt_libssh2.syms
1380 1381
endif

1382
if WITH_ATOMIC_OPS_PTHREAD
1383
USED_SYM_FILES += $(srcdir)/libvirt_atomic.syms
1384 1385
endif

1386 1387 1388
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
1389
  libvirt_atomic.syms		\
1390
  libvirt_driver_modules.syms	\
E
Eric Blake 已提交
1391
  libvirt_daemon.syms		\
1392
  libvirt_linux.syms		\
1393 1394 1395
  libvirt_esx.syms		\
  libvirt_openvz.syms		\
  libvirt_qemu.syms		\
E
Eric Blake 已提交
1396
  libvirt_sasl.syms		\
1397
  libvirt_vmx.syms		\
1398 1399
  libvirt_xenxs.syms	\
  libvirt_libssh2.syms
1400

1401 1402 1403
GENERATED_SYM_FILES = libvirt.syms libvirt.def libvirt_qemu.def

BUILT_SOURCES += $(GENERATED_SYM_FILES)
1404

1405 1406
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES) \
		$(top_builddir)/config.status
1407 1408 1409 1410 1411 1412
	$(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 && \
1413
	for file in $(USED_SYM_FILES); do \
1414
	    cat $(srcdir)/$$file >>$@-tmp; \
1415 1416 1417
	done && \
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp && \
	chmod a-w $@-tmp && \
1418
	mv $@-tmp libvirt.syms
1419

1420 1421 1422
libvirt.def: libvirt.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.def

1427 1428 1429
libvirt_qemu.def: $(srcdir)/libvirt_qemu.syms
	$(AM_V_GEN)rm -f -- $@-tmp $@ ; \
	printf 'EXPORTS\n' > $@-tmp && \
E
Eric Blake 已提交
1430
	sed -e '/^$$/d; /#/d; /:/d; /}/d; /\*/d; /LIBVIRT_/d; s/[	 ]*\(.*\)\;/    \1/g' $^ >> $@-tmp && \
1431 1432 1433
	chmod a-w $@-tmp && \
	mv $@-tmp libvirt_qemu.def

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

1452
if WITH_DTRACE_PROBES
1453
libvirt_la_BUILT_LIBADD += libvirt_probes.lo
1454
libvirt_la_DEPENDENCIES += libvirt_probes.lo libvirt_probes.o
1455
nodist_libvirt_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1456
if WITH_REMOTE
E
Eric Blake 已提交
1457
nodist_libvirt_driver_remote_la_SOURCES = libvirt_probes.h
E
Eric Blake 已提交
1458
endif WITH_REMOTE
1459 1460 1461
if WITH_DRIVER_MODULES
DTRACE2SYSTEMTAP_FLAGS = --with-modules
endif
1462

1463 1464 1465
BUILT_SOURCES += libvirt_probes.h libvirt_probes.stp libvirt_functions.stp

if WITH_QEMU
1466
libvirt_driver_qemu_la_LIBADD += libvirt_qemu_probes.lo
1467
nodist_libvirt_driver_qemu_la_SOURCES = libvirt_qemu_probes.h
1468
BUILT_SOURCES += libvirt_qemu_probes.h
1469
endif
1470 1471

tapsetdir = $(datadir)/systemtap/tapset
1472
tapset_DATA = libvirt_probes.stp libvirt_qemu_probes.stp libvirt_functions.stp
1473

1474
%_probes.h: %_probes.d
1475 1476
	$(AM_V_GEN)$(DTRACE) -o $@ -h -s $<

E
Eric Blake 已提交
1477
.PRECIOUS: %_probes.o
1478
%_probes.o: %_probes.d
1479 1480
	$(AM_V_GEN)$(DTRACE) -o $@ -G -s $<

1481 1482 1483 1484 1485 1486 1487 1488 1489
%_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 已提交
1490 1491 1492 1493
RPC_PROBE_FILES = $(srcdir)/rpc/virnetprotocol.x \
		  $(srcdir)/rpc/virkeepaliveprotocol.x \
		  $(srcdir)/remote/remote_protocol.x \
		  $(srcdir)/remote/qemu_protocol.x
1494 1495

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

1498
%_probes.stp: %_probes.d $(srcdir)/dtrace2systemtap.pl $(top_builddir)/config.status
1499
	$(AM_V_GEN)$(PERL) -w $(srcdir)/dtrace2systemtap.pl \
1500
	  $(DTRACE2SYSTEMTAP_FLAGS) $(bindir) $(sbindir) $(libdir) $< > $@
1501

1502
CLEANFILES += libvirt_probes.h libvirt_probes.o libvirt_probes.lo \
1503
              libvirt_qemu_probes.h libvirt_qemu_probes.o \
1504
              libvirt_qemu_probes.lo\
1505 1506
              libvirt_functions.stp libvirt_probes.stp \
              libvirt_qemu_probes.stp
1507 1508
endif

1509
EXTRA_DIST += libvirt_probes.d libvirt_qemu_probes.d
1510

C
Chris Lalancette 已提交
1511 1512
libvirt_qemu_la_SOURCES = libvirt-qemu.c
libvirt_qemu_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)$(LIBVIRT_QEMU_SYMBOL_FILE) \
E
Eric Blake 已提交
1513 1514
			  -version-info $(LIBVIRT_VERSION_INFO) \
			  $(CYGWIN_EXTRA_LDFLAGS) $(MINGW_EXTRA_LDFLAGS) \
1515 1516
			  $(AM_LDFLAGS)
libvirt_qemu_la_CFLAGS = $(AM_CFLAGS)
C
Chris Lalancette 已提交
1517
libvirt_qemu_la_LIBADD = libvirt.la $(CYGWIN_EXTRA_LIBADD)
E
Eric Blake 已提交
1518
EXTRA_DIST += $(LIBVIRT_QEMU_SYMBOL_FILE)
1519

1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589
if WITH_LIBVIRTD
sbin_PROGRAMS = virtlockd

virtlockd_SOURCES = $(LOCK_DAEMON_SOURCES)
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
EXTRA_DIST += $(LOCK_DAEMON_SOURCES)
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 $@



1590 1591 1592 1593 1594
if HAVE_SANLOCK
lockdriverdir = $(libdir)/libvirt/lock-driver
lockdriver_LTLIBRARIES = sanlock.la

sanlock_la_SOURCES = $(LOCK_DRIVER_SANLOCK_SOURCES)
1595
sanlock_la_CFLAGS = -I$(top_srcdir)/src/conf $(AM_CFLAGS)
1596
sanlock_la_LDFLAGS = -module -avoid-version
1597
sanlock_la_LIBADD = -lsanlock_client \
1598 1599 1600
		../gnulib/lib/libgnu.la

augeas_DATA += locking/libvirt_sanlock.aug
1601 1602
augeastest_DATA += test_libvirt_sanlock.aug
CLEANFILES += test_libvirt_sanlock.aug
1603

E
Eric Blake 已提交
1604
locking/%-sanlock.conf: $(srcdir)/locking/sanlock.conf
1605
	$(AM_V_GEN)$(MKDIR_P) locking ; \
1606 1607 1608
	cp $< $@

if WITH_QEMU
E
Eric Blake 已提交
1609
nodist_conf_DATA = locking/qemu-sanlock.conf
1610
BUILT_SOURCES += locking/qemu-sanlock.conf
E
Eric Blake 已提交
1611
DISTCLEANFILES += locking/qemu-sanlock.conf
1612
endif
1613
else
1614
EXTRA_DIST += $(LOCK_DRIVER_SANLOCK_SOURCES)
1615
endif
1616 1617
EXTRA_DIST += locking/sanlock.conf \
	locking/libvirt_sanlock.aug \
1618
	locking/test_libvirt_sanlock.aug.in
1619

1620 1621 1622 1623
noinst_LTLIBRARIES += \
	libvirt-net-rpc.la \
	libvirt-net-rpc-server.la \
	libvirt-net-rpc-client.la
1624

1625
EXTRA_DIST += \
E
Eric Blake 已提交
1626 1627 1628 1629
	dtrace2systemtap.pl \
	rpc/gendispatch.pl \
	rpc/genprotocol.pl \
	rpc/gensystemtap.pl \
J
Jiri Denemark 已提交
1630 1631
	rpc/virnetprotocol.x \
	rpc/virkeepaliveprotocol.x
1632

E
Eric Blake 已提交
1633 1634
VIR_NET_RPC_GENERATED = \
	$(srcdir)/rpc/virnetprotocol.h \
J
Jiri Denemark 已提交
1635 1636 1637
	$(srcdir)/rpc/virnetprotocol.c \
	$(srcdir)/rpc/virkeepaliveprotocol.h \
	$(srcdir)/rpc/virkeepaliveprotocol.c
1638

1639
BUILT_SOURCES += $(VIR_NET_RPC_GENERATED)
1640

1641
libvirt_net_rpc_la_SOURCES = \
1642
	rpc/virnetmessage.h rpc/virnetmessage.c \
1643
	rpc/virnetprotocol.h rpc/virnetprotocol.c \
1644
	rpc/virnetsocket.h rpc/virnetsocket.c \
J
Jiri Denemark 已提交
1645
	rpc/virnettlscontext.h rpc/virnettlscontext.c \
1646 1647
	rpc/virkeepaliveprotocol.h rpc/virkeepaliveprotocol.c \
	rpc/virkeepalive.h rpc/virkeepalive.c
1648 1649 1650 1651 1652 1653 1654
if HAVE_LIBSSH2
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
else
EXTRA_DIST += \
	rpc/virnetsshsession.h rpc/virnetsshsession.c
endif
1655 1656 1657 1658 1659 1660 1661
if HAVE_SASL
libvirt_net_rpc_la_SOURCES += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
else
EXTRA_DIST += \
	rpc/virnetsaslcontext.h rpc/virnetsaslcontext.c
endif
1662
libvirt_net_rpc_la_CFLAGS = \
1663
			$(GNUTLS_CFLAGS) \
1664
			$(SASL_CFLAGS) \
1665
			$(LIBSSH2_CFLAGS) \
1666
			$(XDR_CFLAGS) \
1667 1668
			$(AM_CFLAGS)
libvirt_net_rpc_la_LDFLAGS = \
1669
			$(GNUTLS_LIBS) \
1670
			$(SASL_LIBS) \
1671
			$(LIBSSH2_LIBS)\
1672 1673 1674 1675 1676 1677
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1678 1679 1680 1681
libvirt_net_rpc_server_la_SOURCES = \
	rpc/virnetserverprogram.h rpc/virnetserverprogram.c \
	rpc/virnetserverservice.h rpc/virnetserverservice.c \
	rpc/virnetserverclient.h rpc/virnetserverclient.c \
1682
	rpc/virnetservermdns.h rpc/virnetservermdns.c \
1683 1684
	rpc/virnetserver.h rpc/virnetserver.c
libvirt_net_rpc_server_la_CFLAGS = \
1685
			$(AVAHI_CFLAGS) \
1686
			$(DBUS_CFLAGS) \
E
Eric Blake 已提交
1687
			$(XDR_CFLAGS) \
J
Jim Fehlig 已提交
1688 1689
			$(AM_CFLAGS) \
			$(POLKIT_CFLAGS)
1690 1691
libvirt_net_rpc_server_la_LDFLAGS = \
			$(AM_LDFLAGS) \
1692
			$(AVAHI_LIBS) \
1693
			$(DBUS_LIBS) \
J
Jim Fehlig 已提交
1694
			$(POLKIT_LIBS) \
1695 1696 1697 1698 1699
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_server_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)

1700 1701 1702 1703 1704
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 已提交
1705 1706
			$(AM_CFLAGS) \
			$(XDR_CFLAGS)
1707 1708 1709 1710 1711 1712
libvirt_net_rpc_client_la_LDFLAGS = \
			$(AM_LDFLAGS) \
			$(CYGWIN_EXTRA_LDFLAGS) \
			$(MINGW_EXTRA_LDFLAGS)
libvirt_net_rpc_client_la_LIBADD = \
			$(CYGWIN_EXTRA_LIBADD)
1713

1714 1715
libexec_PROGRAMS =

1716
if WITH_LIBVIRTD
1717 1718 1719 1720 1721 1722
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
1723 1724 1725
if WITH_DTRACE_PROBES
libvirt_iohelper_LDADD += libvirt_probes.lo
endif
1726 1727

libvirt_iohelper_CFLAGS = $(AM_CFLAGS)
1728
endif
1729

1730
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
1731
if WITH_LIBVIRTD
1732
libexec_PROGRAMS += libvirt_parthelper
1733

1734
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
1735
libvirt_parthelper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
1736 1737 1738 1739
libvirt_parthelper_LDADD =		\
		$(LIBPARTED_LIBS)	\
		libvirt_util.la		\
		../gnulib/lib/libgnu.la
1740 1741 1742
if WITH_DTRACE_PROBES
libvirt_parthelper_LDADD += libvirt_probes.lo
endif
1743

1744
libvirt_parthelper_CFLAGS = $(LIBPARTED_CFLAGS) $(AM_CFLAGS)
R
Richard W.M. Jones 已提交
1745
endif
1746
endif
1747 1748
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

1749

1750 1751 1752 1753 1754 1755 1756 1757 1758
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

1759 1760 1761 1762 1763 1764
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

libvirt_lxc_SOURCES =						\
		$(LXC_CONTROLLER_SOURCES)			\
O
Osier Yang 已提交
1765 1766
		$(NODE_INFO_SOURCES)				\
		$(DATATYPES_SOURCES)
1767
libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(AM_LDFLAGS)
1768 1769
libvirt_lxc_LDADD =			\
		$(NUMACTL_LIBS) \
G
Gao feng 已提交
1770
		$(FUSE_LIBS) \
1771 1772
		libvirt-net-rpc-server.la \
		libvirt-net-rpc.la \
1773
		libvirt_security_manager.la \
1774 1775
		libvirt_conf.la \
		libvirt_util.la \
1776
		../gnulib/lib/libgnu.la
1777
if WITH_DTRACE_PROBES
1778
libvirt_lxc_LDADD += libvirt_probes.lo
1779
endif
1780 1781 1782
if WITH_SECDRIVER_SELINUX
libvirt_lxc_LDADD += $(SELINUX_LIBS)
endif
J
Jiri Denemark 已提交
1783 1784 1785
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_LDADD += $(APPARMOR_LIBS)
endif
1786
libvirt_lxc_CFLAGS =				\
1787
		-I$(top_srcdir)/src/conf	\
1788
		$(AM_CFLAGS)                    \
G
Gao feng 已提交
1789 1790
		$(LIBNL_CFLAGS)			\
		$(FUSE_CFLAGS)
1791 1792 1793 1794
if HAVE_LIBBLKID
libvirt_lxc_CFLAGS += $(BLKID_CFLAGS)
libvirt_lxc_LDADD += $(BLKID_LIBS)
endif
1795 1796 1797
if WITH_SECDRIVER_SELINUX
libvirt_lxc_CFLAGS += $(SELINUX_CFLAGS)
endif
J
Jiri Denemark 已提交
1798 1799 1800
if WITH_SECDRIVER_APPARMOR
libvirt_lxc_CFLAGS += $(APPARMOR_CFLAGS)
endif
1801 1802 1803 1804
endif
endif
EXTRA_DIST += $(LXC_CONTROLLER_SOURCES)

J
Jamie Strandboge 已提交
1805 1806 1807 1808 1809 1810
if WITH_SECDRIVER_APPARMOR
if WITH_LIBVIRTD
libexec_PROGRAMS += virt-aa-helper

virt_aa_helper_SOURCES = $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1811
virt_aa_helper_LDFLAGS = $(WARN_LDFLAGS) $(AM_LDFLAGS)
J
Jamie Strandboge 已提交
1812
virt_aa_helper_LDADD =						\
C
Chris Lalancette 已提交
1813 1814 1815
		libvirt_conf.la					\
		libvirt_util.la					\
		../gnulib/lib/libgnu.la
1816
if WITH_DTRACE_PROBES
1817
virt_aa_helper_LDADD += libvirt_probes.lo
1818
endif
J
Jamie Strandboge 已提交
1819
virt_aa_helper_CFLAGS =						\
1820 1821
		-I$(top_srcdir)/src/conf			\
		-I$(top_srcdir)/src/security			\
1822
		$(AM_CFLAGS)
J
Jamie Strandboge 已提交
1823 1824 1825 1826
endif
endif
EXTRA_DIST += $(SECURITY_DRIVER_APPARMOR_HELPER_SOURCES)

1827 1828 1829 1830 1831
install-data-local: install-init
if WITH_LIBVIRTD
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lockd"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lockd"
endif
1832 1833
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/images"
1834
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems"
1835
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/boot"
1836 1837 1838
if HAVE_SANLOCK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock"
endif
1839 1840 1841
if WITH_QEMU
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/qemu"
1842
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt/qemu"
1843
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/qemu"
1844 1845 1846 1847 1848
endif
if WITH_LXC
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lxc"
endif
J
Jim Fehlig 已提交
1849 1850 1851
if WITH_LIBXL
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/libxl"
J
Jim Fehlig 已提交
1852
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/log/libvirt/libxl"
J
Jim Fehlig 已提交
1853
endif
1854 1855 1856 1857
if WITH_UML
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/uml"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/uml"
endif
1858 1859 1860
if WITH_XEN
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/xen"
endif
1861 1862
if WITH_NETWORK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/network"
1863
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/dnsmasq"
1864
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/network"
1865 1866 1867 1868
	$(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 已提交
1869 1870 1871 1872 1873 1874
	  { 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; }
1875
	test -e $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml || \
E
Eric Blake 已提交
1876
	   ln -s ../default.xml \
1877 1878 1879
	    $(DESTDIR)$(sysconfdir)/libvirt/qemu/networks/autostart/default.xml
endif

1880 1881 1882 1883 1884
uninstall-local:: uninstall-init
if WITH_LIBVIRTD
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lockd" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lockd" ||:
endif
1885 1886
	rmdir "$(DESTDIR)$(localstatedir)/cache/libvirt" ||:
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/images" ||:
1887
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/filesystems" ||:
1888
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/boot" ||:
1889 1890 1891
if HAVE_SANLOCK
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/sanlock" ||:
endif
1892 1893 1894 1895 1896
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" ||:
1897
endif
1898 1899 1900 1901
if WITH_LXC
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/lxc" ||:
endif
J
Jim Fehlig 已提交
1902 1903 1904
if WITH_LIBXL
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/libxl" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1905
	rmdir "$(DESTDIR)$(localstatedir)/log/libvirt/libxl" ||:
J
Jim Fehlig 已提交
1906
endif
1907 1908 1909 1910
if WITH_UML
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/uml" ||:
	rmdir "$(DESTDIR)$(localstatedir)/run/libvirt/uml" ||:
endif
1911 1912 1913
if WITH_XEN
	rmdir "$(DESTDIR)$(localstatedir)/lib/libvirt/xen" ||:
endif
1914 1915 1916 1917 1918 1919 1920 1921 1922
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 已提交
1923

1924 1925
CLEANFILES += *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda *.i *.s
DISTCLEANFILES += $(GENERATED_SYM_FILES)
1926
MAINTAINERCLEANFILES += $(REMOTE_DRIVER_GENERATED) $(VIR_NET_RPC_GENERATED)