Make autoconnect try to heal network splits.
[oweals/tinc.git] / src / Makefile.am
index 04fe2f80e313cf00b6edd8618305501b47990907..7be46d97a9002b1c5d63bf78c3cc7f455e1b5881 100644 (file)
@@ -1,22 +1,29 @@
 ## Produce this file with automake to get Makefile.in
 
-sbin_PROGRAMS = tincd tinc sptps_test sptps_keypair
+sbin_PROGRAMS = tincd tinc
+check_PROGRAMS = sptps_test sptps_keypair
+EXTRA_PROGRAMS = sptps_test sptps_keypair
 
-## Make sure version.c is always rebuilt with the latest git information
-.PHONY: version.c version_git.h
-version_git.h:
-       echo >$@
-       -git describe && echo '#define GIT_DESCRIPTION "'`git describe | sed 's/release-//'`'"' >$@
-version.c: version_git.h
+CLEANFILES = version_git.h
 
-if LINUX
-sbin_PROGRAMS += sptps_speed
+.PHONY: version-stamp
+version-stamp:
+
+version_git.h: version-stamp
+       $(AM_V_GEN)echo >$@
+       @-(cd $(srcdir) && git describe 2>/dev/null >/dev/null) && echo '#define GIT_DESCRIPTION "'`(cd $(srcdir) && git describe) | sed 's/release-//'`'"' >$@ ||:
+${srcdir}/version.c: version_git.h
+
+## Now a hack to appease some versions of BSD make that don't understand that "./foo" is the same as "foo".
+if BSD
+version.c: ${srcdir}/version.c
 endif
 
-DEFAULT_INCLUDES =
+if LINUX
+EXTRA_PROGRAMS += sptps_speed
+endif
 
 ed25519_SOURCES = \
-       ed25519/add_scalar.c \
        ed25519/ed25519.h \
        ed25519/fe.c ed25519/fe.h \
        ed25519/fixedint.h \
@@ -35,6 +42,7 @@ chacha_poly1305_SOURCES = \
        chacha-poly1305/poly1305.c chacha-poly1305/poly1305.h
 
 tincd_SOURCES = \
+       autoconnect.c autoconnect.h \
        buffer.c buffer.h \
        cipher.h \
        conf.c conf.h \
@@ -52,11 +60,7 @@ tincd_SOURCES = \
        edge.c edge.h \
        ethernet.h \
        event.c event.h \
-       fake-gai-errnos.h \
-       fake-getaddrinfo.c fake-getaddrinfo.h \
-       fake-getnameinfo.c fake-getnameinfo.h \
-       getopt.c getopt.h \
-       getopt1.c \
+       fd_device.c \
        graph.c graph.h \
        hash.c hash.h \
        have.h \
@@ -102,9 +106,8 @@ tincd_SOURCES = \
 
 tinc_SOURCES = \
        dropin.c dropin.h \
-       getopt.c getopt.h \
-       getopt1.c \
        fsck.c fsck.h \
+       ifconfig.c ifconfig.h \
        info.c info.h \
        invitation.c invitation.h \
        list.c list.h \
@@ -151,7 +154,22 @@ sptps_speed_SOURCES = \
        $(chacha_poly1305_SOURCES)
 
 ## Conditionally compile device drivers
-       
+
+if !GETOPT
+tincd_SOURCES += \
+       getopt.c getopt.h \
+       getopt1.c
+tinc_SOURCES += \
+       getopt.c getopt.h \
+       getopt1.c
+sptps_test_SOURCES += \
+       getopt.c getopt.h \
+       getopt1.c
+sptps_keypair_SOURCES += \
+       getopt.c getopt.h \
+       getopt1.c
+endif
+
 if LINUX
 tincd_SOURCES += linux/device.c
 endif
@@ -251,6 +269,12 @@ sptps_speed_SOURCES += \
 endif
 endif
 
+if MINIUPNPC
+tincd_SOURCES += upnp.h upnp.c
+tincd_LDADD = $(MINIUPNPC_LIBS)
+tincd_LDFLAGS = -pthread
+endif
+
 tinc_LDADD = $(READLINE_LIBS) $(CURSES_LIBS)
 sptps_speed_LDADD = -lrt
 
@@ -260,4 +284,4 @@ if TUNEMU
 LIBS += -lpcap
 endif
 
-AM_CFLAGS = -DCONFDIR=\"$(sysconfdir)\" -DLOCALSTATEDIR=\"$(localstatedir)\" -DSBINDIR=\"$(sbindir)\"
+AM_CFLAGS = -DCONFDIR=\"$(sysconfdir)\" -DLOCALSTATEDIR=\"$(localstatedir)\" -DSBINDIR=\"$(sbindir)\" -iquote.