Use conditional compilation for device.c.
[tinc] / src / Makefile.am
index eb7d3f2..c1f51f1 100644 (file)
@@ -1,33 +1,85 @@
 ## Produce this file with automake to get Makefile.in
-# $Id: Makefile.am,v 1.12 2002/05/02 13:11:55 zarq Exp $
 
-SUBDIRS = pokey
+sbin_PROGRAMS = tincd tinc sptps_test
 
-sbin_PROGRAMS = tincd
+EXTRA_DIST = linux bsd solaris cygwin mingw openssl gcrypt
 
-EXTRA_DIST = linux/device.c freebsd/device.c openbsd/device.c solaris/device.c
+tincd_SOURCES = \
+       utils.c getopt.c getopt1.c list.c splay_tree.c dropin.c fake-getaddrinfo.c fake-getnameinfo.c hash.c \
+       buffer.c conf.c connection.c control.c edge.c graph.c logger.c meta.c net.c net_packet.c net_setup.c \
+       net_socket.c netutl.c node.c process.c protocol.c protocol_auth.c protocol_edge.c protocol_misc.c \
+       protocol_key.c protocol_subnet.c route.c sptps.c subnet.c subnet_parse.c event.c tincd.c \
+       dummy_device.c raw_socket_device.c multicast_device.c names.c
 
-tincd_SOURCES = read_conf.c device.c   meta.c net_packet.c net_setup.c \
-       net_socket.c process.c protocol.c protocol_auth.c protocol_edge.c protocol_misc.c       \
-       protocol_key.c protocol_subnet.c route.c tincd.c net.c callbacks.c
+## Conditionally compile device drivers
+       
+if LINUX
+tincd_SOURCES += linux/device.c
+endif
 
-INCLUDES = @INCLUDES@ -I$(top_builddir) -I$(top_srcdir)/lib -I$(top_srcdir)/intl
+if BSD
+tincd_SOURCES += bsd/device.c
+endif
 
-noinst_HEADERS = read_conf.h  device.h   meta.h process.h      \
-       protocol.h route.h callbacks.h
+if SOLARIS
+tincd_SOURCES += solaris/device.c
+endif
 
-LIBS = @LIBS@ @INTLLIBS@
+if MINGW
+tincd_SOURCES += mingw/device.c
+endif
 
-tincd_LDADD = \
-       $(top_builddir)/lib/libtinc.a -lgcrypt
+if CYGWIN
+tincd_SOURCES += cygwin/device.c
+endif
 
-localedir = $(datadir)/locale
+if UML
+tincd_SOURCES += uml_device.c
+endif
 
-CFLAGS = @CFLAGS@ -DPKGLIBDIR=$(pkglibdir) -DCONFDIR=\"$(sysconfdir)\" \
-       -DLOCALEDIR=\"$(localedir)\" -DLOCALSTATEDIR=\"$(localstatedir)\"
+if VDE
+tincd_SOURCES += vde_device.c
+endif
+
+nodist_tincd_SOURCES = \
+       cipher.c crypto.c ecdh.c ecdsa.c digest.c prf.c rsa.c
+
+tinc_SOURCES = \
+       utils.c getopt.c getopt1.c dropin.c \
+       info.c list.c subnet_parse.c tincctl.c top.c names.c
+
+nodist_tinc_SOURCES = \
+       ecdsagen.c rsagen.c
+
+sptps_test_SOURCES = \
+       logger.c cipher.c crypto.c ecdh.c ecdsa.c digest.c prf.c \
+       sptps.c sptps_test.c utils.c
+
+if TUNEMU
+tincd_SOURCES += bsd/tunemu.c
+endif
+
+tinc_LDADD = $(READLINE_LIBS) $(CURSES_LIBS)
+
+DEFAULT_INCLUDES =
+
+INCLUDES = @INCLUDES@
+
+noinst_HEADERS = \
+       xalloc.h utils.h getopt.h list.h splay_tree.h dropin.h fake-getaddrinfo.h fake-getnameinfo.h fake-gai-errnos.h ipv6.h ipv4.h ethernet.h \
+       buffer.h conf.h connection.h control.h control_common.h device.h edge.h graph.h info.h logger.h meta.h net.h netutl.h node.h process.h \
+       protocol.h route.h subnet.h sptps.h tincctl.h top.h bsd/tunemu.h hash.h event.h names.h
+
+nodist_noinst_HEADERS = \
+       cipher.h crypto.h ecdh.h ecdsa.h digest.h prf.h rsa.h ecdsagen.h rsagen.h
+
+LIBS = @LIBS@ @LIBGCRYPT_LIBS@
+
+if TUNEMU
+LIBS += -lpcap
+endif
+
+AM_CFLAGS = -DCONFDIR=\"$(sysconfdir)\" -DLOCALSTATEDIR=\"$(localstatedir)\" -DSBINDIR=\"$(sbindir)\"
 
 dist-hook:
        rm -f `find . -type l`
-
-lint: $(tincd_SOURCES)
-       lclint -nullassign -nullret +trytorecover +posixlib -skipansiheaders -skipposixheaders +gnuextensions -I/usr/include -I/usr/lib/gcc-lib/i386-linux/2.95.2/include -I. -I/home/zarq/p/tinc/cvs/cabal/src -I.. -I.. -I/home/zarq/p/tinc/cvs/cabal/lib -I/home/zarq/p/tinc/cvs/cabal/intl -D_POSIX_SOURCE -D__ELF__ -Dunix -D__i386__ -Dlinux -DHAVE_CONFIG_H -DPKGLIBDIR=/usr/local/lib/tinc -DCONFDIR=\"/usr/local/etc\" -DLOCALEDIR=\"/usr/local/share/locale\" $^