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

3 4 5
INCLUDES = \
	   -I$(top_srcdir)/gnulib/lib -I../gnulib/lib \
	   -I../include \
6 7
	   -I@top_srcdir@/include \
	   -I@top_srcdir@/qemud \
8
	   $(LIBXML_CFLAGS) \
9
	   $(XEN_CFLAGS) \
10
	   $(SELINUX_CFLAGS) \
11 12
	   $(DRIVER_MODULE_CFLAGS) \
	   -DLIBDIR=\""$(libdir)"\" \
13 14 15 16
	   -DBINDIR=\""$(libexecdir)"\" \
	   -DSBINDIR=\""$(sbindir)"\" \
	   -DSYSCONF_DIR="\"$(sysconfdir)\"" \
	   -DLOCALEBASEDIR=\""$(datadir)/locale"\" \
D
Daniel P. Berrange 已提交
17
           -DLOCAL_STATE_DIR=\""$(localstatedir)"\" \
18
           -DGETTEXT_PACKAGE=\"$(PACKAGE)\" \
19 20
	   $(WARN_CFLAGS)

21 22 23
confdir = $(sysconfdir)/libvirt/
conf_DATA = qemu.conf

24 25 26 27 28 29 30
ICON_FILES = \
	libvirt_win_icon_16x16.ico \
	libvirt_win_icon_32x32.ico \
	libvirt_win_icon_48x48.ico \
	libvirt_win_icon_64x64.ico \
	virsh_win_icon.rc

31
EXTRA_DIST = $(conf_DATA) $(ICON_FILES)
32

33

34
lib_LTLIBRARIES = libvirt.la
35

36 37 38 39
moddir = $(libdir)/libvirt/drivers
mod_LTLIBRARIES =


40 41
# These files are not related to driver APIs. Simply generic
# helper APIs for various purposes
42
UTIL_SOURCES =							\
43 44 45
		bridge.c bridge.h				\
		buf.c buf.h					\
		conf.c conf.h					\
46
		event.c event.h					\
47
		hash.c hash.h					\
48
		iptables.c iptables.h				\
49
		logging.c logging.h				\
50
		memory.c memory.h				\
51
		pci.c pci.h					\
52
		qparams.c qparams.h				\
53 54 55
		threads.c threads.h				\
		threads-pthread.h				\
		threads-win32.h					\
56 57
		uuid.c uuid.h					\
		util.c util.h					\
58
		virterror.c virterror_internal.h		\
59 60
		xml.c xml.h

61 62
EXTRA_DIST += threads-pthread.c threads-win32.c

63
# Internal generic driver infrastructure
64
DRIVER_SOURCES =						\
65
		driver.c driver.h				\
66 67 68 69 70 71 72
		internal.h					\
		datatypes.c datatypes.h				\
		domain_event.c domain_event.h			\
		stats_linux.c stats_linux.h			\
		libvirt.c libvirt_internal.h


73 74 75 76 77 78 79 80 81 82 83 84
# Domain driver generic impl APIs
DOMAIN_CONF_SOURCES =						\
		capabilities.c capabilities.h			\
		domain_conf.c domain_conf.h			\
		nodeinfo.h nodeinfo.c

# Network driver generic impl APIs
NETWORK_CONF_SOURCES =						\
		network_conf.c network_conf.h

# Storage driver generic impl APIs
STORAGE_CONF_SOURCES =						\
85
		storage_conf.h storage_conf.c
86 87 88 89 90


# The remote RPC driver, covering domains, storage, networks, etc
REMOTE_DRIVER_SOURCES =						\
		gnutls_1_0_compat.h				\
91
		remote_internal.c remote_internal.h		\
92
		../qemud/remote_protocol.c			\
93
		../qemud/remote_protocol.h
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109

# Mock driver, covering domains, storage, networks, etc
TEST_DRIVER_SOURCES =						\
		test.c test.h



# Now the Hypervisor specific drivers
XEN_DRIVER_SOURCES =						\
		proxy_internal.c proxy_internal.h		\
		sexpr.c sexpr.h					\
		xen_internal.c xen_internal.h			\
		xen_unified.c xen_unified.h			\
		xend_internal.c xend_internal.h			\
		xm_internal.c xm_internal.h			\
		xs_internal.c xs_internal.h
110 111 112
if WITH_XEN_INOTIFY
XEN_DRIVER_SOURCES += xen_inotify.c xen_inotify.h
endif
113 114

LXC_DRIVER_SOURCES =						\
D
Daniel Veillard 已提交
115
		lxc_conf.c lxc_conf.h				\
R
Richard W.M. Jones 已提交
116
		lxc_container.c lxc_container.h			\
117
		lxc_driver.c lxc_driver.h			\
D
Dan Smith 已提交
118 119
		veth.c veth.h					\
		cgroup.c cgroup.h
120

121 122 123 124
LXC_CONTROLLER_SOURCES =					\
		lxc_conf.c lxc_conf.h				\
		lxc_container.c lxc_container.h			\
		lxc_controller.c				\
D
Dan Smith 已提交
125 126
		veth.c veth.h                                   \
		cgroup.c cgroup.h
127

128 129 130
OPENVZ_DRIVER_SOURCES =						\
		openvz_conf.c openvz_conf.h			\
		openvz_driver.c openvz_driver.h
131

132 133 134
QEMU_DRIVER_SOURCES =						\
		qemu_conf.c qemu_conf.h				\
		qemu_driver.c qemu_driver.h
R
Richard W.M. Jones 已提交
135

136 137 138 139
UML_DRIVER_SOURCES =						\
		uml_conf.c uml_conf.h				\
		uml_driver.c uml_driver.h

140 141
NETWORK_DRIVER_SOURCES =					\
		network_driver.h network_driver.c
142

143
# Storage backend specific impls
144
STORAGE_DRIVER_SOURCES =					\
145 146
		storage_driver.h storage_driver.c		\
		storage_backend.h storage_backend.c
147

148 149 150 151
# Network driver generic impl APIs
NODE_DEVICE_CONF_SOURCES =					\
		node_device_conf.c node_device_conf.h

152
STORAGE_DRIVER_FS_SOURCES =					\
R
Richard W.M. Jones 已提交
153 154
		storage_backend_fs.h storage_backend_fs.c

155
STORAGE_DRIVER_LVM_SOURCES =					\
156
		storage_backend_logical.h			\
157 158 159 160 161 162 163 164 165 166 167 168
		storage_backend_logical.c

STORAGE_DRIVER_ISCSI_SOURCES =					\
		storage_backend_iscsi.h storage_backend_iscsi.c

STORAGE_DRIVER_DISK_SOURCES =					\
		storage_backend_disk.h storage_backend_disk.c

STORAGE_HELPER_DISK_SOURCES =					\
		parthelper.c


169 170 171 172
# Security framework and drivers for various models
SECURITY_DRIVER_SOURCES =                                      \
		security.h security.c

173 174 175
SECURITY_DRIVER_SELINUX_SOURCES =				\
		security_selinux.h security_selinux.c

176

177 178 179 180 181 182 183 184
NODE_DEVICE_DRIVER_SOURCES =					\
		node_device.c node_device.h

NODE_DEVICE_DRIVER_HAL_SOURCES =				\
		node_device_hal.c
NODE_DEVICE_DRIVER_DEVKIT_SOURCES =				\
		node_device_devkit.c

185 186 187 188 189 190 191

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

192 193 194 195 196 197 198 199 200
noinst_LTLIBRARIES = libvirt_util.la
libvirt_la_LIBADD = libvirt_util.la
libvirt_util_la_SOURCES =					\
		$(UTIL_SOURCES)

noinst_LTLIBRARIES += libvirt_driver.la
libvirt_la_LIBADD += libvirt_driver.la
libvirt_driver_la_SOURCES =					\
		$(DRIVER_SOURCES)				\
201 202
		$(DOMAIN_CONF_SOURCES)				\
		$(NETWORK_CONF_SOURCES)				\
203 204 205
		$(STORAGE_CONF_SOURCES)				\
		$(NODE_DEVICE_CONF_SOURCES)

206 207
libvirt_driver_la_CFLAGS = $(XEN_CFLAGS) $(NUMACTL_CFLAGS)
libvirt_driver_la_LDFLAGS = $(XEN_LIBS) $(NUMACTL_LIBS)
208

209
USED_SYM_FILES = libvirt_private.syms
210

211
if WITH_TEST
212 213 214
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_test.la
else
215 216
noinst_LTLIBRARIES += libvirt_driver_test.la
libvirt_la_LIBADD += libvirt_driver_test.la
217 218 219 220
endif
if WITH_DRIVER_MODULES
libvirt_driver_test_la_LDFLAGS = -module -avoid-version
endif
221
libvirt_driver_test_la_SOURCES = $(TEST_DRIVER_SOURCES)
222 223 224
endif

if WITH_REMOTE
225 226 227
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_remote.la
else
228 229
noinst_LTLIBRARIES += libvirt_driver_remote.la
libvirt_la_LIBADD += libvirt_driver_remote.la
230
endif
231 232 233 234 235 236
libvirt_driver_remote_la_CFLAGS =				\
		$(GNUTLS_CFLAGS)				\
		$(SASL_CFLAGS)
libvirt_driver_remote_la_LDFLAGS =				\
		$(GNUTLS_LIBS)					\
		$(SASL_LIBS)
237 238 239
if WITH_DRIVER_MODULES
libvirt_driver_remote_la_LDFLAGS += -module -avoid-version
endif
240
libvirt_driver_remote_la_SOURCES = $(REMOTE_DRIVER_SOURCES)
241 242 243
endif

if WITH_XEN
244 245 246
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_xen.la
else
247 248
noinst_LTLIBRARIES += libvirt_driver_xen.la
libvirt_la_LIBADD += libvirt_driver_xen.la
249
endif
250 251
libvirt_driver_xen_la_CFLAGS = $(XEN_CFLAGS)
libvirt_driver_xen_la_LDFLAGS = $(XEN_LIBS)
252 253 254
if WITH_DRIVER_MODULES
libvirt_driver_xen_la_LDFLAGS += -module -avoid-version
endif
255
libvirt_driver_xen_la_SOURCES = $(XEN_DRIVER_SOURCES)
256 257
endif

258
if WITH_OPENVZ
259 260 261
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_openvz.la
else
262 263
noinst_LTLIBRARIES += libvirt_driver_openvz.la
libvirt_la_LIBADD += libvirt_driver_openvz.la
264 265 266 267
endif
if WITH_DRIVER_MODULES
libvirt_driver_openvz_la_LDFLAGS = -module -avoid-version
endif
268
libvirt_driver_openvz_la_SOURCES = $(OPENVZ_DRIVER_SOURCES)
269 270
endif

271
if WITH_QEMU
272 273 274
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_qemu.la
else
275
noinst_LTLIBRARIES += libvirt_driver_qemu.la
276 277
# Stateful, so linked to daemon instead
#libvirt_la_LIBADD += libvirt_driver_qemu.la
278
endif
279 280
libvirt_driver_qemu_la_CFLAGS = $(NUMACTL_CFLAGS)
libvirt_driver_qemu_la_LDFLAGS = $(NUMACTL_LIBS)
281 282 283
if WITH_DRIVER_MODULES
libvirt_driver_qemu_la_LDFLAGS += -module -avoid-version
endif
284
libvirt_driver_qemu_la_SOURCES = $(QEMU_DRIVER_SOURCES)
285 286 287
endif

if WITH_LXC
288 289 290
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_lxc.la
else
291
noinst_LTLIBRARIES += libvirt_driver_lxc.la
292 293
# Stateful, so linked to daemon instead
#libvirt_la_LIBADD += libvirt_driver_lxc.la
294 295 296 297
endif
if WITH_DRIVER_MODULES
libvirt_driver_lxc_la_LDFLAGS = -module -avoid-version
endif
298
libvirt_driver_lxc_la_SOURCES = $(LXC_DRIVER_SOURCES)
299 300
endif

301
if WITH_UML
302 303 304
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_uml.la
else
305 306 307
noinst_LTLIBRARIES += libvirt_driver_uml.la
# Stateful, so linked to daemon instead
#libvirt_la_LIBADD += libvirt_driver_uml.la
308 309 310 311 312 313
endif
libvirt_driver_uml_la_CFLAGS = $(NUMACTL_CFLAGS)
libvirt_driver_uml_la_LDFLAGS = $(NUMACTL_LIBS)
if WITH_DRIVER_MODULES
libvirt_driver_uml_la_LDFLAGS += -module -avoid-version
endif
314 315
libvirt_driver_uml_la_SOURCES = $(UML_DRIVER_SOURCES)
endif
316 317

if WITH_NETWORK
318 319 320
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_network.la
else
321
noinst_LTLIBRARIES += libvirt_driver_network.la
322 323
# Stateful, so linked to daemon instead
#libvirt_la_LIBADD += libvirt_driver_network.la
324 325 326 327
endif
if WITH_DRIVER_MODULES
libvirt_driver_network_la_LDFLAGS = -module -avoid-version
endif
328
libvirt_driver_network_la_SOURCES = $(NETWORK_DRIVER_SOURCES)
329 330
endif

331 332
# Needed to keep automake quiet about conditionals
libvirt_driver_storage_la_SOURCES =
333
if WITH_STORAGE_DIR
334 335 336
if WITH_DRIVER_MODULES
mod_LTLIBRARIES += libvirt_driver_storage.la
else
337
noinst_LTLIBRARIES += libvirt_driver_storage.la
338 339
# Stateful, so linked to daemon instead
#libvirt_la_LIBADD += libvirt_driver_storage.la
340 341 342 343
endif
if WITH_DRIVER_MODULES
libvirt_driver_storage_la_LDFLAGS = -module -avoid-version
endif
344 345
libvirt_driver_storage_la_SOURCES += $(STORAGE_DRIVER_SOURCES)
libvirt_driver_storage_la_SOURCES += $(STORAGE_DRIVER_FS_SOURCES)
346 347
endif

348
if WITH_STORAGE_LVM
349
libvirt_driver_storage_la_SOURCES += $(STORAGE_DRIVER_LVM_SOURCES)
350 351
endif

352
if WITH_STORAGE_ISCSI
353
libvirt_driver_storage_la_SOURCES += $(STORAGE_DRIVER_ISCSI_SOURCES)
354 355
endif

356
if WITH_STORAGE_DISK
357
libvirt_driver_storage_la_SOURCES += $(STORAGE_DRIVER_DISK_SOURCES)
358
endif
359

360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389
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
#libvirt_la_LIBADD += libvirt_driver_nodedev.la
endif
libvirt_driver_nodedev_la_SOURCES = $(NODE_DEVICE_DRIVER_SOURCES)

libvirt_driver_nodedev_la_CFLAGS =
libvirt_driver_nodedev_la_LDFLAGS =
if HAVE_HAL
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_HAL_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(HAL_CFLAGS)
libvirt_driver_nodedev_la_LDFLAGS += $(HAL_LIBS)
endif
if HAVE_DEVKIT
libvirt_driver_nodedev_la_SOURCES += $(NODE_DEVICE_DRIVER_DEVKIT_SOURCES)
libvirt_driver_nodedev_la_CFLAGS += $(DEVKIT_CFLAGS)
libvirt_driver_nodedev_la_LDFLAGS += $(DEVKIT_LIBS)
endif

if WITH_DRIVER_MODULES
libvirt_driver_nodedev_la_LDFLAGS += -module -avoid-version
endif
endif


390 391 392
libvirt_driver_security_la_SOURCES = $(SECURITY_DRIVER_SOURCES)
noinst_LTLIBRARIES += libvirt_driver_security.la
libvirt_la_LIBADD += libvirt_driver_security.la
393 394 395
if WITH_SECDRIVER_SELINUX
libvirt_driver_security_la_SOURCES += $(SECURITY_DRIVER_SELINUX_SOURCES)
endif
396

397 398 399 400 401 402 403
# Add all conditional sources just in case...
EXTRA_DIST +=							\
		$(TEST_DRIVER_SOURCES)				\
		$(REMOTE_DRIVER_SOURCES)			\
		$(XEN_DRIVER_SOURCES)				\
		$(QEMU_DRIVER_SOURCES)				\
		$(LXC_DRIVER_SOURCES)				\
404
		$(UML_DRIVER_SOURCES)				\
405
		$(OPENVZ_DRIVER_SOURCES)			\
406
		$(NETWORK_DRIVER_SOURCES)			\
407 408 409 410
		$(STORAGE_DRIVER_SOURCES)			\
		$(STORAGE_DRIVER_FS_SOURCES)			\
		$(STORAGE_DRIVER_LVM_SOURCES)			\
		$(STORAGE_DRIVER_ISCSI_SOURCES)			\
411 412 413 414
		$(STORAGE_DRIVER_DISK_SOURCES)			\
		$(NODE_DEVICE_DRIVER_SOURCES)			\
		$(NODE_DEVICE_DRIVER_HAL_SOURCES)		\
		$(NODE_DEVICE_DRIVER_DEVKIT_SOURCES)
415

416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435
#
# 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.
#

if ENABLE_DEBUG
436
USED_SYM_FILES += libvirt_debug.syms
437
endif
438 439

if WITH_DRIVER_MODULES
440
USED_SYM_FILES += libvirt_driver_modules.syms
441
endif
442 443

if WITH_BRIDGE
444
USED_SYM_FILES += libvirt_bridge.syms
445
endif
446 447

if WITH_LINUX
448
USED_SYM_FILES += libvirt_linux.syms
449
endif
450

451 452 453 454 455 456 457
EXTRA_DIST += \
  libvirt_public.syms		\
  libvirt_private.syms		\
  libvirt_debug.syms		\
  libvirt_driver_modules.syms	\
  libvirt_bridge.syms		\
  libvirt_linux.syms
458

459
libvirt.syms: libvirt_public.syms $(USED_SYM_FILES)
460 461 462 463 464 465
	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
466
	for file in $(USED_SYM_FILES); do \
467 468 469 470 471
	    cat $(srcdir)/$$file >>$@-tmp; \
	done
	printf '\n\nlocal:\n*;\n\n};' >>$@-tmp
	chmod a-w $@-tmp
	mv $@-tmp libvirt.syms
472

473 474
# Empty source list - it merely links a bunch of convenience libs together
libvirt_la_SOURCES =
475
libvirt_la_LIBADD += \
476
		    @CYGWIN_EXTRA_LIBADD@ ../gnulib/lib/libgnu.la
477
libvirt_la_LDFLAGS = $(VERSION_SCRIPT_FLAGS)libvirt.syms \
478 479
                     -version-info @LIBVIRT_VERSION_INFO@ \
                    $(COVERAGE_CFLAGS:-f%=-Wc,-f%) \
480
                    $(LIBXML_LIBS) $(SELINUX_LIBS) \
481
		    $(XEN_LIBS) $(DRIVER_MODULE_LIBS) \
482
		    @CYGWIN_EXTRA_LDFLAGS@ @MINGW_EXTRA_LDFLAGS@
483
libvirt_la_CFLAGS = $(COVERAGE_CFLAGS) -DIN_LIBVIRT
484
libvirt_la_DEPENDENCIES = $(libvirt_la_LIBADD) libvirt.syms
485

486 487 488
# Create an automake "convenience library" version of libvirt_la,
# just for testing, since the test harness requires access to internal
# bits and pieces that we don't want to make publicly accessible.
489
noinst_LTLIBRARIES += libvirt_test.la
490

491
# Remove version script from convenience library
492 493
test_LDFLAGS =						\
  $$(echo '$(libvirt_la_LDFLAGS)'			\
494
     |sed 's!@VERSION_SCRIPT_FLAGS@libvirt.syms!!'	\
495 496 497 498 499 500 501 502
     |sed 's!-version-info @LIBVIRT_VERSION_INFO@!!')

# Just like the above, but with a slightly different set of public symbols.
libvirt_test_la_SOURCES = $(libvirt_la_SOURCES)
libvirt_test_la_LIBADD = $(libvirt_la_LIBADD)
libvirt_test_la_LDFLAGS = $(test_LDFLAGS)
libvirt_test_la_CFLAGS = $(COVERAGE_CFLAGS)

K
Karel Zak 已提交
503
bin_PROGRAMS = virsh
504

505 506 507 508
virsh_SOURCES =							\
		console.c console.h				\
		virsh.c

509
virsh_LDFLAGS = $(WARN_CFLAGS) $(COVERAGE_LDFLAGS)
510 511
virsh_LDADD =							\
		$(STATIC_BINARIES)				\
512
		$(WARN_CFLAGS)					\
513
		$(NUMACTL_LIBS)					\
514 515 516
		libvirt.la					\
		../gnulib/lib/libgnu.la				\
		$(VIRSH_LIBS)
517
virsh_CFLAGS = $(COVERAGE_CFLAGS) $(READLINE_CFLAGS) $(NUMACTL_CFLAGS)
518
BUILT_SOURCES = virsh-net-edit.c virsh-pool-edit.c libvirt.syms
519 520 521 522 523 524 525 526 527 528

virsh-net-edit.c: virsh.c Makefile.am
	rm -f $@-tmp
	echo '/* Automatically generated from: $^ */' > $@-tmp
	echo 'static int' >> $@-tmp
	awk '/^cmdEdit/, /^}/' $< \
	  | sed -e 's/domain/network/g' \
	      -e 's/Domain/Network/g' \
	      -e 's/cmdEdit/cmdNetworkEdit/g' \
	      -e 's/dom/network/g' \
529
	      -e 's/int flags.*/int flags = 0;/g' \
530 531 532 533 534 535 536 537 538 539 540 541 542
	>> $@-tmp
	chmod a-w $@-tmp
	rm -f $@
	mv $@-tmp $@

virsh-pool-edit.c: virsh.c Makefile.am
	rm -f $@-tmp
	echo '/* Automatically generated from: $^ */' > $@-tmp
	echo 'static int' >> $@-tmp
	awk '/^cmdEdit/, /^}/' $< \
	  | sed -e 's/domain/pool/g' \
	      -e 's/vshCommandOptDomain/vshCommandOptPool/g' \
	      -e 's/Domain %s/Pool %s/g' \
J
Jim Meyering 已提交
543
	      -e 's/(ctl, cmd, NULL);/(ctl, cmd, "pool", NULL);/' \
544 545 546 547
	      -e 's/Domain/StoragePool/g' \
	      -e 's/cmdEdit/cmdPoolEdit/g' \
	      -e 's/\(virStoragePoolDefineXML.*\));/\1, 0);/' \
	      -e 's/dom/pool/g' \
548
	      -e 's/int flags.*/int flags = 0;/g' \
549 550 551 552
	>> $@-tmp
	chmod a-w $@-tmp
	rm -f $@
	mv $@-tmp $@
553

554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579
if WITH_WIN_ICON
virsh_LDADD += virsh_win_icon.$(OBJEXT)

# Before you edit virsh_win_icon.rc, please note the following
# limitations of the resource file format:
#
# (1) '..' is not permitted in the icon filename field.
# (2) '-' is not permitted in the icon filename field.
# (3) Comments are not permitted in the file.
#
# Windows appears to choose the first <= 32x32 icon it finds
# in the resource file.  Therefore you should list the available
# icons from largest to smallest, and make sure that the 32x32
# icon is the most legible.
#
# Windows .ICO is a special MS-only format.  GIMP and other
# tools can write it.  However there are several variations,
# and Windows seems to do its own colour quantization.  More
# information is needed in this area.

virsh_win_icon.$(OBJEXT): virsh_win_icon.rc
	$(WINDRES) \
	  --input-format rc --input $< \
	  --output-format coff --output $@
endif

580 581
libexec_PROGRAMS =

582
if WITH_STORAGE_DISK
R
Richard W.M. Jones 已提交
583
if WITH_LIBVIRTD
584
libexec_PROGRAMS += libvirt_parthelper
585

586
libvirt_parthelper_SOURCES = $(STORAGE_HELPER_DISK_SOURCES)
587 588 589
libvirt_parthelper_LDFLAGS = $(WARN_CFLAGS) $(COVERAGE_LDCFLAGS)
libvirt_parthelper_LDADD = $(LIBPARTED_LIBS)
libvirt_parthelper_CFLAGS =  $(LIBPARTED_CFLAGS)
R
Richard W.M. Jones 已提交
590
endif
591
endif
592 593
EXTRA_DIST += $(STORAGE_HELPER_DISK_SOURCES)

594

595 596 597 598 599 600
if WITH_LXC
if WITH_LIBVIRTD
libexec_PROGRAMS += libvirt_lxc

libvirt_lxc_SOURCES =						\
		$(LXC_CONTROLLER_SOURCES)			\
601
		$(UTIL_SOURCES)					\
602 603
		$(DOMAIN_CONF_SOURCES)
libvirt_lxc_LDFLAGS = $(WARN_CFLAGS) $(COVERAGE_LDCFLAGS)
604 605
libvirt_lxc_LDADD = $(LIBXML_LIBS) $(NUMACTL_LIBS) ../gnulib/lib/libgnu.la
libvirt_lxc_CFLAGS =  $(LIBPARTED_CFLAGS) $(NUMACTL_CFLAGS)
606 607 608 609
endif
endif
EXTRA_DIST += $(LXC_CONTROLLER_SOURCES)

R
Richard W.M. Jones 已提交
610
install-exec-local:
611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/cache/libvirt"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/images"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/boot"
if WITH_QEMU
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/qemu"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/qemu"
endif
if WITH_LXC
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/lxc"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/lxc"
endif
if WITH_UML
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/uml"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/uml"
endif
if WITH_NETWORK
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/iptables/filter"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/iptables/nat"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/lib/libvirt/network"
	$(MKDIR_P) "$(DESTDIR)$(localstatedir)/run/libvirt/network"
endif

R
Richard W.M. Jones 已提交
633

634
CLEANFILES = *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
635
DISTCLEANFILES = $(BUILT_SOURCES)