Version 1.11.19.
[libguestfs.git] / daemon / Makefile.am
index 2b585c2..3fe8c88 100644 (file)
@@ -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 $< $@
@@ -69,14 +86,21 @@ 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 \
@@ -91,8 +115,6 @@ guestfsd_SOURCES = \
        dropcaches.c \
        du.c \
        echo_daemon.c \
-       errnostring.h \
-       errnostring.c \
        ext2.c \
        fallocate.c \
        file.c \
@@ -148,6 +170,7 @@ guestfsd_SOURCES = \
        zero.c \
        zerofree.c
 guestfsd_LDADD = \
+       liberrnostring.a \
        libprotocol.a \
        lib/libgnu.a \
        $(GETADDRINFO_LIB) \