X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2FMakefile.am;h=2fe6573b21f98a5ac5431017c40bfc973d5a6f8e;hp=2f4344870143e60dec1262e76461d182a1426eb3;hb=18ee38e1eac132b91706771285d1764641179804;hpb=fd84feb8229f792e22e3cbfa9bf7e8156947eb2f diff --git a/daemon/Makefile.am b/daemon/Makefile.am index 2f43448..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,37 +15,33 @@ # 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 - -$(generator_built): $(libsrcdir)/stamp-generator -$(libsrcdir)/stamp-generator: force - $(MAKE) -C $(libsrcdir) stamp-generator - BUILT_SOURCES = \ $(generator_built) \ guestfs_protocol.c \ - guestfs_protocol.h + guestfs_protocol.h \ + errnostring_gperf.c \ + errnostring_gperf.gperf \ + errnostring.c \ + errnostring.h -EXTRA_DIST = $(BUILT_SOURCES) +EXTRA_DIST = $(BUILT_SOURCES) \ + .gitignore -# This convenience library is solely to avoid compiler warnings -# in its generated sources. noinst_LIBRARIES = libprotocol.a -libprotocol_a_SOURCES = \ - guestfs_protocol.c \ - guestfs_protocol.h -libprotocol_a_CFLAGS = + +# 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 guestfs_protocol.c: $(libsrcdir)/guestfs_protocol.c rm -f $@ @@ -58,13 +54,44 @@ $(libsrcdir)/guestfs_protocol.c: force $(libsrcdir)/guestfs_protocol.h: force $(MAKE) -C $(libsrcdir) guestfs_protocol.h +# 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 = + +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 \ @@ -82,6 +109,7 @@ guestfsd_SOURCES = \ ext2.c \ fallocate.c \ file.c \ + findfs.c \ fill.c \ find.c \ fsck.c \ @@ -94,9 +122,12 @@ guestfsd_SOURCES = \ 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 \ @@ -130,8 +161,20 @@ guestfsd_SOURCES = \ zero.c \ zerofree.c guestfsd_LDADD = \ + liberrnostring.a \ libprotocol.a \ - lib/libgnu.a $(LIB_CLOCK_GETTIME) + $(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