X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2FMakefile.am;h=3fe8c8827b0466926ebac04c492e5684d8be4d35;hp=8636891441440fc7b6cb0428369aaa246e7a6c75;hb=463a739bf0475cf45bf03ad2c4130b2ed656686e;hpb=fafd87038bdbca159b67efa6ee1b52861daed1f4 diff --git a/daemon/Makefile.am b/daemon/Makefile.am index 8636891..3fe8c88 100644 --- a/daemon/Makefile.am +++ b/daemon/Makefile.am @@ -1,5 +1,5 @@ # libguestfs-daemon -# Copyright (C) 2009 Red Hat Inc. +# Copyright (C) 2010 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 @@ -20,6 +20,7 @@ ACLOCAL_AMFLAGS = -I m4 SUBDIRS = lib tests . libsrcdir = $(top_builddir)/../src +generatorsrcdir = $(top_builddir)/../generator generator_built = \ actions.h \ @@ -28,24 +29,78 @@ generator_built = \ .PHONY: force -$(generator_build): $(libsrcdir)/stamp-generator -$(libsrcdir)/stamp-generator: force - $(MAKE) -C $(libsrcdir) stamp-generator +$(generator_built): $(generatorsrcdir)/stamp-generator +$(generatorsrcdir)/stamp-generator: force + $(MAKE) -C $(generatorsrcdir) stamp-generator -BUILT_SOURCES = $(generator_built) +BUILT_SOURCES = \ + $(generator_built) \ + guestfs_protocol.c \ + guestfs_protocol.h \ + errnostring_gperf.c \ + errnostring_gperf.gperf \ + errnostring.c \ + errnostring.h -EXTRA_DIST = $(BUILT_SOURCES) +EXTRA_DIST = $(BUILT_SOURCES) \ + .gitignore -$(libsrcdir)/guestfs_protocol.o: force - $(MAKE) -C $(libsrcdir) guestfs_protocol.o +noinst_LIBRARIES = libprotocol.a +# 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 $@ + 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 + +# 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 \ @@ -63,6 +118,7 @@ guestfsd_SOURCES = \ ext2.c \ fallocate.c \ file.c \ + findfs.c \ fill.c \ find.c \ fsck.c \ @@ -72,11 +128,15 @@ 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 \ @@ -110,8 +170,16 @@ guestfsd_SOURCES = \ zero.c \ zerofree.c guestfsd_LDADD = \ - $(libsrcdir)/guestfs_protocol.o \ - lib/libgnu.a $(LIB_CLOCK_GETTIME) + liberrnostring.a \ + libprotocol.a \ + lib/libgnu.a \ + $(GETADDRINFO_LIB) \ + $(HOSTENT_LIB) \ + $(INET_NTOP_LIB) \ + $(LIBSOCKET) \ + $(LIB_CLOCK_GETTIME) \ + $(LIBINTL) \ + $(SERVENT_LIB) AM_CPPFLAGS = -I$(srcdir)/lib -Ilib guestfsd_CFLAGS = $(WARN_CFLAGS) $(WERROR_CFLAGS)