## Produce this file with automake to get Makefile.in
-sbin_PROGRAMS = tincd tinc sptps_test
+sbin_PROGRAMS = tincd tinc sptps_test sptps_keypair
+
+CLEANFILES = version_git.h
+
+.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
if LINUX
sbin_PROGRAMS += sptps_speed
endif
-DEFAULT_INCLUDES =
+ed25519_SOURCES = \
+ ed25519/add_scalar.c \
+ ed25519/ed25519.h \
+ ed25519/fe.c ed25519/fe.h \
+ ed25519/fixedint.h \
+ ed25519/ge.c ed25519/ge.h \
+ ed25519/key_exchange.c \
+ ed25519/keypair.c \
+ ed25519/precomp_data.h \
+ ed25519/sc.c ed25519/sc.h \
+ ed25519/sha512.c ed25519/sha512.h \
+ ed25519/sign.c \
+ ed25519/verify.c
+
+chacha_poly1305_SOURCES = \
+ chacha-poly1305/chacha.c chacha-poly1305/chacha.h \
+ chacha-poly1305/chacha-poly1305.c chacha-poly1305/chacha-poly1305.h \
+ chacha-poly1305/poly1305.c chacha-poly1305/poly1305.h
tincd_SOURCES = \
buffer.c buffer.h \
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 \
graph.c graph.h \
hash.c hash.h \
have.h \
system.h \
tincd.c \
utils.c utils.h \
- xalloc.h
+ xalloc.h \
+ version.c version.h \
+ ed25519/ecdh.c \
+ ed25519/ecdsa.c \
+ $(ed25519_SOURCES) \
+ $(chacha_poly1305_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 \
subnet_parse.c subnet.h \
tincctl.c tincctl.h \
top.c top.h \
- utils.c utils.h
+ utils.c utils.h \
+ version.c version.h \
+ ed25519/ecdh.c \
+ ed25519/ecdsa.c \
+ ed25519/ecdsagen.c \
+ $(ed25519_SOURCES) \
+ $(chacha_poly1305_SOURCES)
sptps_test_SOURCES = \
logger.c logger.h \
sptps.c sptps.h \
sptps_test.c \
- utils.c utils.h
+ utils.c utils.h \
+ ed25519/ecdh.c \
+ ed25519/ecdsa.c \
+ $(ed25519_SOURCES) \
+ $(chacha_poly1305_SOURCES)
+
+sptps_keypair_SOURCES = \
+ sptps_keypair.c \
+ utils.c utils.h \
+ ed25519/ecdsagen.c \
+ $(ed25519_SOURCES)
sptps_speed_SOURCES = \
logger.c logger.h \
sptps.c sptps.h \
sptps_speed.c \
- utils.c utils.h
+ utils.c utils.h \
+ ed25519/ecdh.c \
+ ed25519/ecdsa.c \
+ ed25519/ecdsagen.c \
+ $(ed25519_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
openssl/cipher.c \
openssl/crypto.c \
openssl/digest.c openssl/digest.h \
- openssl/ecdh.c \
- openssl/ecdsa.c \
openssl/prf.c \
openssl/rsa.c
tinc_SOURCES += \
openssl/cipher.c \
openssl/crypto.c \
openssl/digest.c openssl/digest.h \
- openssl/ecdh.c \
- openssl/ecdsa.c \
- openssl/ecdsagen.c \
openssl/prf.c \
openssl/rsa.c \
openssl/rsagen.c
sptps_test_SOURCES += \
- openssl/cipher.c \
openssl/crypto.c \
openssl/digest.c openssl/digest.h \
- openssl/ecdh.c \
- openssl/ecdsa.c \
openssl/prf.c
+sptps_keypair_SOURCES += \
+ openssl/crypto.c
sptps_speed_SOURCES += \
- openssl/cipher.c \
openssl/crypto.c \
openssl/digest.c openssl/digest.h \
- openssl/ecdh.c \
- openssl/ecdsa.c \
- openssl/ecdsagen.c \
openssl/prf.c
-endif
-
+else
if GCRYPT
tincd_SOURCES += \
gcrypt/cipher.c \
gcrypt/crypto.c \
gcrypt/digest.c gcrypt/digest.h \
- gcrypt/ecdh.c \
- gcrypt/ecdsa.c \
gcrypt/prf.c \
gcrypt/rsa.c
tinc_SOURCES += \
gcrypt/cipher.c \
gcrypt/crypto.c \
gcrypt/digest.c gcrypt/digest.h \
- gcrypt/ecdh.c \
- gcrypt/ecdsa.c \
- gcrypt/ecdsagen.c \
gcrypt/prf.c \
gcrypt/rsa.c \
gcrypt/rsagen.c
gcrypt/cipher.c \
gcrypt/crypto.c \
gcrypt/digest.c gcrypt/digest.h \
- gcrypt/ecdh.c \
- gcrypt/ecdsa.c \
gcrypt/prf.c
+sptps_keypair_SOURCES += \
+ openssl/crypto.c
+sptps_speed_SOURCES += \
+ openssl/crypto.c \
+ openssl/digest.c openssl/digest.h \
+ openssl/prf.c
+else
+tincd_SOURCES += \
+ nolegacy/crypto.c \
+ nolegacy/prf.c
+tinc_SOURCES += \
+ nolegacy/crypto.c \
+ nolegacy/prf.c
+sptps_test_SOURCES += \
+ nolegacy/crypto.c \
+ nolegacy/prf.c
+sptps_keypair_SOURCES += \
+ nolegacy/crypto.c
+sptps_speed_SOURCES += \
+ nolegacy/crypto.c \
+ nolegacy/prf.c
+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
-LIBS = @LIBS@
+LIBS = @LIBS@ -lm
if TUNEMU
LIBS += -lpcap
endif
-AM_CFLAGS = -DCONFDIR=\"$(sysconfdir)\" -DLOCALSTATEDIR=\"$(localstatedir)\" -DSBINDIR=\"$(sbindir)\"
+AM_CFLAGS = -DCONFDIR=\"$(sysconfdir)\" -DLOCALSTATEDIR=\"$(localstatedir)\" -DSBINDIR=\"$(sbindir)\" -iquote.