daemon/Win32: use gnulib modules connect, socket and symlinkat (for readlinkat).
[libguestfs.git] / daemon / Makefile.am
index dce868a..04d50eb 100644 (file)
@@ -19,9 +19,49 @@ ACLOCAL_AMFLAGS = -I m4
 
 SUBDIRS = lib tests .
 
+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
+
+EXTRA_DIST = $(BUILT_SOURCES)
+
+# 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 =
+
+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
+
 noinst_PROGRAMS = guestfsd
 guestfsd_SOURCES = \
        actions.h \
+       available.c \
        augeas.c \
        blkid.c \
        blockdev.c \
@@ -30,6 +70,7 @@ guestfsd_SOURCES = \
        command.c \
        cpmv.c \
        daemon.h \
+       dd.c \
        debug.c \
        devsparts.c \
        df.c \
@@ -41,6 +82,7 @@ guestfsd_SOURCES = \
        ext2.c \
        fallocate.c \
        file.c \
+       fill.c \
        find.c \
        fsck.c \
        glob.c \
@@ -49,6 +91,7 @@ guestfsd_SOURCES = \
        guestfsd.c \
        headtail.c \
        hexdump.c \
+       htonl.c \
        initrd.c \
        inotify.c \
        link.c \
@@ -60,6 +103,9 @@ guestfsd_SOURCES = \
        mount.c \
        names.c \
        ntfs.c \
+       optgroups.c \
+       optgroups.h \
+       parted.c \
        pingdaemon.c \
        proto.c \
        readdir.c \
@@ -69,21 +115,30 @@ guestfsd_SOURCES = \
        sfdisk.c \
        sleep.c \
        stat.c \
+       statvfs.c \
        strings.c \
        stubs.c \
        swap.c \
        sync.c \
        tar.c \
+       truncate.c \
        umask.c \
        upload.c \
+       utimens.c \
        wc.c \
        xattr.c \
        zero.c \
-       zerofree.c \
-       $(top_builddir)/../src/guestfs_protocol.h \
-       $(top_builddir)/../src/guestfs_protocol.c
+       zerofree.c
+guestfsd_LDADD = \
+       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)
-
-LDADD = lib/libgnu.a