2007-02-14 04:40:09 +03:00
## Process this file with automake to produce Makefile.in
2008-08-21 00:48:35 +04:00
DAEMON_SOURCES = \
event.c event.h \
qemud.c qemud.h \
remote.c \
remote_dispatch_prototypes.h \
2008-12-05 01:03:24 +03:00
remote_dispatch_table.h \
remote_dispatch_args.h \
remote_dispatch_ret.h \
2008-11-17 14:03:25 +03:00
remote_protocol.h remote_protocol.c
2008-08-21 00:48:35 +04:00
AVAHI_SOURCES = \
mdns.c mdns.h
2008-12-10 22:21:00 +03:00
DISTCLEANFILES =
2008-08-21 00:48:35 +04:00
EXTRA_DIST = \
default-network.xml \
remote_generate_stubs.pl rpcgen_fix.pl \
remote_protocol.x \
libvirtd.conf \
libvirtd.init.in \
libvirtd.policy \
libvirtd.sasl \
libvirtd.sysconf \
2008-09-04 14:44:23 +04:00
libvirtd.aug \
libvirtd_qemu.aug \
2008-12-10 22:21:00 +03:00
libvirtd.logrotate.in \
2008-09-04 14:44:23 +04:00
test_libvirtd.aug \
test_libvirtd_qemu.aug \
2008-08-21 00:48:35 +04:00
$( AVAHI_SOURCES) \
$( DAEMON_SOURCES)
2007-12-06 19:34:48 +03:00
2009-01-29 00:33:56 +03:00
i f H A V E _ R P C G E N
#
# Maintainer-only target for re-generating the derived .c/.h source
# files, which are actually derived from the .x file.
#
# For committing protocol changes to CVS, the GLIBC rpcgen *must*
# be used.
#
# Support for non-GLIB rpcgen is here as a convenience for
# non-Linux people needing to test changes during dev.
#
rpcgen :
rm -f rp.c-t rp.h-t rp.c-t1 rp.c-t2 rp.h-t1
$( RPCGEN) -h -o rp.h-t $( srcdir) /remote_protocol.x
$( RPCGEN) -c -o rp.c-t $( srcdir) /remote_protocol.x
i f H A V E _ G L I B C _ R P C G E N
perl -w $( srcdir) /rpcgen_fix.pl rp.h-t > rp.h-t1
perl -w $( srcdir) /rpcgen_fix.pl rp.c-t > rp.c-t1
( echo '#include <config.h>' ; cat rp.c-t1) > rp.c-t2
chmod 0444 rp.c-t2 rp.h-t1
mv -f rp.h-t1 $( srcdir) /remote_protocol.h
mv -f rp.c-t2 $( srcdir) /remote_protocol.c
rm -f rp.c-t rp.h-t rp.c-t1
2009-01-12 22:19:22 +03:00
e l s e
2009-01-29 00:33:56 +03:00
chmod 0444 rp.c-t rp.h-t
mv -f rp.h-t $( srcdir) /remote_protocol.h
mv -f rp.c-t $( srcdir) /remote_protocol.c
2009-01-12 22:19:22 +03:00
e n d i f
2008-05-22 19:20:25 +04:00
e n d i f
2007-12-06 19:34:48 +03:00
remote_protocol.c : remote_protocol .h
i f W I T H _ L I B V I R T D
2008-12-18 14:54:34 +03:00
UUID = $( shell uuidgen 2>/dev/null)
2007-12-06 19:34:48 +03:00
sbin_PROGRAMS = libvirtd
confdir = $( sysconfdir) /libvirt/
conf_DATA = libvirtd.conf
2007-09-19 05:56:55 +04:00
2008-09-04 14:44:23 +04:00
augeasdir = $( datadir) /augeas/lenses
augeas_DATA = libvirtd.aug libvirtd_qemu.aug
augeastestsdir = $( datadir) /augeas/lenses/tests
augeastests_DATA = test_libvirtd.aug test_libvirtd_qemu.aug
2008-08-21 00:48:35 +04:00
libvirtd_SOURCES = $( DAEMON_SOURCES)
2007-09-19 05:56:55 +04:00
2007-02-14 04:40:09 +03:00
#-D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED=1 -D_POSIX_C_SOURCE=199506L
2007-06-27 03:04:49 +04:00
libvirtd_CFLAGS = \
2008-02-28 20:06:32 +03:00
-I$( top_srcdir) /gnulib/lib -I../gnulib/lib \
-I$( top_srcdir) /include -I$( top_builddir) /include \
Standardize use of header files, making internal.h primary.
* qemud/internal.h, qemud/qemud.h: Rename this file so it
doesn't conflict with src/internal.h.
* HACKING: Document how header files should be used.
* qemud/Makefile.am: Add src/ directory to includes.
* qemud/event.c, qemud/mdns.c, qemud/qemud.c, qemud/remote.c,
qemud/remote_protocol.c, qemud/remote_protocol.h,
qemud/remote_protocol.x, src/buf.c, src/libvirt.c,
src/nodeinfo.c, src/qemu_conf.c, src/qemu_driver.c,
src/stats_linux.c, src/storage_backend.c, src/storage_backend_fs.c,
src/storage_backend_iscsi.c, src/storage_backend_logical.c,
src/storage_conf.c, src/storage_driver.c, src/util.c,
src/util.h, src/virsh.c, src/virterror.c, src/xend_internal.c,
src/xml.c, tests/reconnect.c, tests/xmlrpctest.c,
tests/qparamtest.c: Standardize use of header files.
* docs/*, po/*: Rebuild docs.
2008-05-23 12:24:41 +04:00
-I$( top_srcdir) /src \
2008-02-28 20:06:32 +03:00
$( LIBXML_CFLAGS) $( GNUTLS_CFLAGS) $( SASL_CFLAGS) \
$( POLKIT_CFLAGS) \
$( WARN_CFLAGS) -DLOCAL_STATE_DIR= " \" $( localstatedir) \" " \
$( COVERAGE_CFLAGS) \
-DSYSCONF_DIR= " \" $( sysconfdir) \" " \
2007-06-11 16:04:54 +04:00
-DQEMUD_PID_FILE= " \" $( QEMUD_PID_FILE) \" " \
2007-06-27 00:51:00 +04:00
-DREMOTE_PID_FILE= " \" $( REMOTE_PID_FILE) \" " \
2008-02-28 20:06:32 +03:00
-DGETTEXT_PACKAGE= \" $( PACKAGE) \"
2008-12-08 15:04:27 +03:00
libvirtd_LDFLAGS = \
$( WARN_CFLAGS) \
$( COVERAGE_LDFLAGS)
2007-06-27 00:51:00 +04:00
2008-11-17 15:18:18 +03:00
libvirtd_LDADD = \
2008-12-08 15:04:27 +03:00
$( LIBXML_LIBS) \
$( GNUTLS_LIBS) \
$( SASL_LIBS) \
2008-12-11 21:11:41 +03:00
$( POLKIT_LIBS)
2008-11-17 15:18:18 +03:00
2008-11-21 15:16:08 +03:00
i f ! W I T H _ D R I V E R _ M O D U L E S
2008-11-17 15:18:18 +03:00
i f W I T H _ Q E M U
libvirtd_LDADD += ../src/libvirt_driver_qemu.la
e n d i f
i f W I T H _ L X C
libvirtd_LDADD += ../src/libvirt_driver_lxc.la
e n d i f
2008-11-19 19:58:23 +03:00
i f W I T H _ U M L
libvirtd_LDADD += ../src/libvirt_driver_uml.la
e n d i f
2008-11-17 15:18:18 +03:00
i f W I T H _ S T O R A G E _ D I R
libvirtd_LDADD += ../src/libvirt_driver_storage.la
e n d i f
i f W I T H _ N E T W O R K
libvirtd_LDADD += ../src/libvirt_driver_network.la
e n d i f
2008-11-21 15:27:11 +03:00
i f W I T H _ N O D E _ D E V I C E S
libvirtd_LDADD += ../src/libvirt_driver_nodedev.la
e n d i f
2008-11-21 15:16:08 +03:00
e n d i f
2008-11-17 15:18:18 +03:00
libvirtd_LDADD += ../src/libvirt.la
2007-02-14 04:40:09 +03:00
2007-12-05 21:21:27 +03:00
i f H A V E _ P O L K I T
policydir = $( datadir) /PolicyKit/policy
e n d i f
2007-09-19 05:56:55 +04:00
i f H A V E _ A V A H I
2008-08-21 00:48:35 +04:00
libvirtd_SOURCES += $( AVAHI_SOURCES)
2007-09-19 05:56:55 +04:00
libvirtd_CFLAGS += $( AVAHI_CFLAGS)
libvirtd_LDADD += $( AVAHI_LIBS)
e n d i f
2008-11-28 14:20:27 +03:00
2007-11-15 16:04:28 +03:00
default_xml_dest = libvirt/qemu/networks/default.xml
2008-12-09 23:22:39 +03:00
install-data-local : install -init install -data -sasl install -data -polkit \
install-logrotate
2007-03-07 14:54:29 +03:00
mkdir -p $( DESTDIR) $( sysconfdir) /libvirt/qemu/networks/autostart
2007-11-15 16:04:28 +03:00
$( INSTALL_DATA) $( srcdir) /default-network.xml \
$( DESTDIR) $( sysconfdir) /$( default_xml_dest)
2008-12-18 14:54:34 +03:00
test -z " $( UUID) " || \
sed -i -e " s,</name>,</name>\n <uuid> $( UUID) </uuid>, " \
$( DESTDIR) $( sysconfdir) /$( default_xml_dest)
2007-03-08 17:00:00 +03:00
test -e $( DESTDIR) $( sysconfdir) /libvirt/qemu/networks/autostart/default.xml || \
2007-11-15 16:04:28 +03:00
ln -s ../default.xml \
$( DESTDIR) $( sysconfdir) /libvirt/qemu/networks/autostart/default.xml
2007-05-18 22:36:24 +04:00
mkdir -p $( DESTDIR) $( localstatedir) /log/libvirt/qemu
2007-03-09 02:31:28 +03:00
mkdir -p $( DESTDIR) $( localstatedir) /run/libvirt
2007-03-14 01:43:22 +03:00
mkdir -p $( DESTDIR) $( localstatedir) /lib/libvirt
2007-03-07 14:54:29 +03:00
2008-07-11 13:51:25 +04:00
uninstall-local :: uninstall -init uninstall -data -sasl install -data -polkit
2007-03-07 14:54:29 +03:00
rm -f $( DESTDIR) $( sysconfdir) /libvirt/qemu/networks/autostart/default.xml
2007-11-15 16:04:28 +03:00
rm -f $( DESTDIR) $( sysconfdir) /$( default_xml_dest)
2007-03-07 14:54:29 +03:00
rmdir $( DESTDIR) $( sysconfdir) /libvirt/qemu/networks/autostart || :
2007-05-18 22:36:24 +04:00
rmdir $( DESTDIR) $( localstatedir) /log/libvirt/qemu || :
2007-03-09 02:31:28 +03:00
rmdir $( DESTDIR) $( localstatedir) /run/libvirt || :
2007-03-14 01:43:22 +03:00
rmdir $( DESTDIR) $( localstatedir) /lib/libvirt || :
2007-03-07 14:54:29 +03:00
2007-12-05 18:24:15 +03:00
i f H A V E _ S A S L
install-data-sasl :: install -init
mkdir -p $( DESTDIR) $( sysconfdir) /sasl2/
$( INSTALL_DATA) $( srcdir) /libvirtd.sasl $( DESTDIR) $( sysconfdir) /sasl2/libvirt.conf
uninstall-data-sasl :: install -init
rm -f $( DESTDIR) $( sysconfdir) /sasl2/libvirt.conf
rmdir $( DESTDIR) $( sysconfdir) /sasl2/
e l s e
install-data-sasl :
uninstall-data-sasl :
e n d i f
2007-06-11 16:04:54 +04:00
2008-07-11 13:51:25 +04:00
i f H A V E _ P O L K I T
install-data-polkit :: install -init
mkdir -p $( DESTDIR) $( policydir)
2008-10-06 14:24:31 +04:00
$( INSTALL_DATA) $( srcdir) /libvirtd.policy $( DESTDIR) $( policydir) /org.libvirt.unix.policy
2008-07-11 13:51:25 +04:00
uninstall-data-polkit :: install -init
rm -f $( DESTDIR) $( policydir) /org.libvirt.unix.policy
e l s e
install-data-polkit ::
uninstall-data-polkit ::
e n d i f
2007-06-11 16:04:54 +04:00
remote.c : remote_dispatch_prototypes .h \
2008-12-05 01:03:24 +03:00
remote_dispatch_table.h \
remote_dispatch_args.h \
remote_dispatch_ret.h
2007-06-11 16:04:54 +04:00
2007-12-05 18:34:05 +03:00
remote_dispatch_prototypes.h : $( srcdir ) /remote_generate_stubs .pl remote_protocol .x
2008-12-05 01:03:24 +03:00
perl -w $( srcdir) /remote_generate_stubs.pl -p $( srcdir) /remote_protocol.x > $@
2007-06-11 16:04:54 +04:00
2008-12-05 01:03:24 +03:00
remote_dispatch_table.h : $( srcdir ) /remote_generate_stubs .pl remote_protocol .x
perl -w $( srcdir) /remote_generate_stubs.pl -t $( srcdir) /remote_protocol.x > $@
remote_dispatch_args.h : $( srcdir ) /remote_generate_stubs .pl remote_protocol .x
perl -w $( srcdir) /remote_generate_stubs.pl -a $( srcdir) /remote_protocol.x > $@
remote_dispatch_ret.h : $( srcdir ) /remote_generate_stubs .pl remote_protocol .x
perl -w $( srcdir) /remote_generate_stubs.pl -r $( srcdir) /remote_protocol.x > $@
2007-06-11 16:04:54 +04:00
2008-12-10 22:21:00 +03:00
DISTCLEANFILES += libvirtd.logrotate
2008-12-09 23:22:39 +03:00
libvirtd.logrotate : libvirtd .logrotate .in
sed \
-e s!\@ localstatedir\@ !@localstatedir@!g \
< $< > $@ -t
mv $@ -t $@
install-logrotate : libvirtd .logrotate
mkdir -p $( DESTDIR) $( localstatedir) /log/libvirt/qemu/
mkdir -p $( DESTDIR) $( sysconfdir) /logrotate.d/
$( INSTALL_DATA) $< $( DESTDIR) $( sysconfdir) /logrotate.d/libvirtd
2007-02-23 15:50:58 +03:00
i f L I B V I R T _ I N I T _ S C R I P T S _ R E D _ H A T
2007-06-27 03:03:48 +04:00
install-init : libvirtd .init
mkdir -p $( DESTDIR) $( sysconfdir) /rc.d/init.d
2007-11-15 16:04:28 +03:00
$( INSTALL_SCRIPT) libvirtd.init \
$( DESTDIR) $( sysconfdir) /rc.d/init.d/libvirtd
2007-06-27 03:48:46 +04:00
mkdir -p $( DESTDIR) $( sysconfdir) /sysconfig
2007-11-15 16:04:28 +03:00
$( INSTALL_SCRIPT) $( srcdir) /libvirtd.sysconf \
$( DESTDIR) $( sysconfdir) /sysconfig/libvirtd
2007-02-23 15:50:58 +03:00
2007-06-27 03:03:48 +04:00
uninstall-init :
2007-11-15 16:04:28 +03:00
rm -f $( DESTDIR) $( sysconfdir) /rc.d/init.d/libvirtd \
$( DESTDIR) $( sysconfdir) /sysconfig/libvirtd
2007-06-27 03:03:48 +04:00
libvirtd.init : libvirtd .init .in
2007-02-23 15:50:58 +03:00
sed \
2007-06-27 04:12:29 +04:00
-e s!\@ localstatedir\@ !@localstatedir@!g \
-e s!\@ sbindir\@ !@sbindir@!g \
-e s!\@ sysconfdir\@ !@sysconfdir@!g \
2007-11-15 16:04:28 +03:00
< $< > $@ -t
chmod a+x $@ -t
mv $@ -t $@
2007-06-27 03:03:48 +04:00
2008-09-04 14:44:23 +04:00
check-local :
2009-01-12 21:21:49 +03:00
test -x '$(AUGPARSE)' \
&& '$(AUGPARSE)' -I $( srcdir) $( srcdir) /test_libvirtd.aug || :
2009-01-29 20:50:00 +03:00
test -x '$(AUGPARSE)' \
&& '$(AUGPARSE)' -I $( srcdir) $( srcdir) /test_libvirtd_qemu.aug || :
2008-09-04 14:44:23 +04:00
2007-06-27 03:03:48 +04:00
e l s e
install-init :
uninstall-init :
2007-02-23 15:50:58 +03:00
e n d i f # DBUS_INIT_SCRIPTS_RED_HAT
2007-12-06 19:34:48 +03:00
2008-12-11 21:11:41 +03:00
# This must be added last, since functions it provides/replaces
# are used by nearly every other library.
2009-01-08 23:42:01 +03:00
libvirtd_LDADD += ../gnulib/lib/libgnu.la $( LIBSOCKET)
2008-12-11 21:11:41 +03:00
Move safewrite and saferead to a separate file.
We currently use safewrite from inside libvirt and don't want to publish
any such function name. However, we do want to use it in applications
like virsh, libvirtd and libvirt_proxy that link with libvirt. To that
end, this change moves that function definition (along with the nearly
identical saferead) into a new file, util-lib.c. To avoid maintaining
separate copies of even such small functions, we simply include that new
file from util.c. Then, the separate applications that need to use
safewrite simply compile and link with util-lib.c.
Of course, this does mean that each of those applications will
containing two copies of these functions. However, the functions
are so small that it's not worth worrying about that.
* src/util.c (saferead, safewrite): Move function definitions to
util-lib.c and include that .c file.
* src/util-lib.c (saferead, safewrite): New file. Functions from src/util.c
with slight change (s/int r =/ssize_t r =/) to reflect read/write return type.
* src/util-lib.h: Declare the two moved functions.
* src/util.h: Remove declarations. Include src/util-lib.h.
* proxy/Makefile.am (libvirt_proxy_SOURCES): Add src/util-lib.c.
* qemud/Makefile.am (libvirtd_SOURCES): Likewise.
* src/Makefile.am (virsh_SOURCES): Add util-lib.c. Remove some SP-before-TAB.
2008-02-22 18:53:13 +03:00
e n d i f # WITH_LIBVIRTD
2008-02-28 20:06:32 +03:00
CLEANFILES = libvirtd.init
CLEANFILES += *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda