X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=daemon%2FMakefile.am;h=8fb070f63fc4302251b1e444b47ed4829a444223;hb=16da7589e91b0030fb5564553447f80b97c0b18c;hp=2b585c276175d84b5909019917602a4b4240a55a;hpb=d859c283c469b9d9124d90d0ac32024671372ed5;p=libguestfs.git diff --git a/daemon/Makefile.am b/daemon/Makefile.am index 2b585c2..8fb070f 100644 --- a/daemon/Makefile.am +++ b/daemon/Makefile.am @@ -37,19 +37,20 @@ 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 -# 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 $@ @@ -62,6 +63,22 @@ $(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 $< $@ @@ -91,8 +108,6 @@ guestfsd_SOURCES = \ dropcaches.c \ du.c \ echo_daemon.c \ - errnostring.h \ - errnostring.c \ ext2.c \ fallocate.c \ file.c \ @@ -148,6 +163,7 @@ guestfsd_SOURCES = \ zero.c \ zerofree.c guestfsd_LDADD = \ + liberrnostring.a \ libprotocol.a \ lib/libgnu.a \ $(GETADDRINFO_LIB) \