X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2FMakefile.am;h=2fe6573b21f98a5ac5431017c40bfc973d5a6f8e;hp=1716c2f57450da535665f4a74270e2abd71ff67a;hb=60d5a50f4d3d9e2c2f5a7d42a6859de709bda3f6;hpb=c477e2fb78347728aaacbbc89666dcda1481a4b9 diff --git a/daemon/Makefile.am b/daemon/Makefile.am index 1716c2f..2fe6573 100644 --- a/daemon/Makefile.am +++ b/daemon/Makefile.am @@ -1,5 +1,5 @@ # libguestfs-daemon -# Copyright (C) 2009 Red Hat Inc. +# Copyright (C) 2011 Red Hat Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -15,40 +15,89 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -ACLOCAL_AMFLAGS = -I m4 +include $(top_srcdir)/subdir-rules.mk -SUBDIRS = lib tests . - -libsrcdir = $(top_builddir)/../src +libsrcdir = $(top_builddir)/src generator_built = \ actions.h \ stubs.c \ names.c -.PHONY: force +BUILT_SOURCES = \ + $(generator_built) \ + guestfs_protocol.c \ + guestfs_protocol.h \ + errnostring_gperf.c \ + errnostring_gperf.gperf \ + errnostring.c \ + errnostring.h + +EXTRA_DIST = $(BUILT_SOURCES) \ + .gitignore + +noinst_LIBRARIES = libprotocol.a -$(generator_built): force - $(MAKE) -C $(libsrcdir) stamp-generator +# This convenience library is solely to compile its generated sources with +# custom flags. +libprotocol_a_SOURCES = guestfs_protocol.c guestfs_protocol.h +libprotocol_a_CFLAGS = -Wall -Wno-unused -fno-strict-aliasing -BUILT_SOURCES = $(generator_built) +guestfs_protocol.c: $(libsrcdir)/guestfs_protocol.c + rm -f $@ + ln $< $@ +guestfs_protocol.h: $(libsrcdir)/guestfs_protocol.h + rm -f $@ + ln $< $@ +$(libsrcdir)/guestfs_protocol.c: force + $(MAKE) -C $(libsrcdir) guestfs_protocol.c +$(libsrcdir)/guestfs_protocol.h: force + $(MAKE) -C $(libsrcdir) guestfs_protocol.h -EXTRA_DIST = $(BUILT_SOURCES) +# Build the errnostring perfect hash code. The generated code has lots +# of warnings so we must compile it in a separate mini-library. +noinst_LIBRARIES += liberrnostring.a +liberrnostring_a_SOURCES = \ + errnostring_gperf.c \ + errnostring.h \ + errnostring.c +liberrnostring_a_CFLAGS = -$(libsrcdir)/guestfs_protocol.o: force - $(MAKE) -C $(libsrcdir) guestfs_protocol.o +errnostring_gperf.c: errnostring_gperf.gperf + rm -f $@ + $(GPERF) -t $< > $@-t + mv $@-t $@ +errnostring_gperf.gperf: $(libsrcdir)/errnostring_gperf.gperf + rm -f $@ + ln $< $@ +errnostring.c: $(libsrcdir)/errnostring.c + rm -f $@ + ln $< $@ +errnostring.h: $(libsrcdir)/errnostring.h + rm -f $@ + ln $< $@ +if INSTALL_DAEMON +sbin_PROGRAMS = guestfsd +else noinst_PROGRAMS = guestfsd +endif + guestfsd_SOURCES = \ + 9p.c \ actions.h \ + available.c \ augeas.c \ + base64.c \ blkid.c \ blockdev.c \ + btrfs.c \ checksum.c \ cmp.c \ command.c \ cpmv.c \ daemon.h \ + dd.c \ debug.c \ devsparts.c \ df.c \ @@ -60,6 +109,7 @@ guestfsd_SOURCES = \ ext2.c \ fallocate.c \ file.c \ + findfs.c \ fill.c \ find.c \ fsck.c \ @@ -69,17 +119,23 @@ guestfsd_SOURCES = \ guestfsd.c \ headtail.c \ hexdump.c \ + htonl.c \ initrd.c \ inotify.c \ + is.c \ link.c \ ls.c \ + luks.c \ lvm.c \ + lvm-filter.c \ mkfs.c \ mknod.c \ modprobe.c \ mount.c \ names.c \ ntfs.c \ + optgroups.c \ + optgroups.h \ parted.c \ pingdaemon.c \ proto.c \ @@ -90,6 +146,7 @@ guestfsd_SOURCES = \ sfdisk.c \ sleep.c \ stat.c \ + statvfs.c \ strings.c \ stubs.c \ swap.c \ @@ -103,7 +160,21 @@ guestfsd_SOURCES = \ xattr.c \ zero.c \ zerofree.c -guestfsd_LDADD = $(libsrcdir)/guestfs_protocol.o lib/libgnu.a +guestfsd_LDADD = \ + liberrnostring.a \ + libprotocol.a \ + $(SELINUX_LIB) \ + $(AUGEAS_LIB) \ + $(top_builddir)/gnulib/lib/.libs/libgnu.a \ + $(GETADDRINFO_LIB) \ + $(HOSTENT_LIB) \ + $(INET_NTOP_LIB) \ + $(LIBSOCKET) \ + $(LIB_CLOCK_GETTIME) \ + $(LIBINTL) \ + $(SERVENT_LIB) -AM_CPPFLAGS = -I$(srcdir)/lib -Ilib +guestfsd_CPPFLAGS = -I$(top_srcdir)/gnulib/lib guestfsd_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS) + +.PHONY: force