1 # This Makefile builds the support programs for the Exim test suite.
3 ##############################################################################
4 # These variables are set by the configure script.
7 CFLAGS
=@CFLAGS@ @CPPFLAGS@ @BIND_8_COMPAT@ @DEFS@
9 CLIENT_OPENSSL
=@CLIENT_OPENSSL@
10 CLIENT_GNUTLS
=@CLIENT_GNUTLS@
11 CLIENT_ANYTLS
=@CLIENT_ANYTLS@
13 LOADED_OPT
=@LOADED_OPT@
18 ##############################################################################
20 BINARIES
= bin
/cf bin
/client
$(CLIENT_OPENSSL
) $(CLIENT_GNUTLS
) $(CLIENT_ANYTLS
) \
21 bin
/checkaccess bin
/fakens bin
/fd bin
/iefbr14
$(LOADED
) \
22 bin
/mtpscript bin
/server bin
/showids bin
/locate \
26 all: binaries sysbinaries
30 sysbinaries
: FORCE binaries
31 bin
/locate initdb postgres pg_ctl mysqld
34 # Compile and link the programs:
36 # bin/cf a "compare" program
37 # bin/checkaccess tests whether the exim uid/gid can access the files
38 # bin/client an SMTP script-driven client, without TLS support
39 # bin/client-gnutls ditto, with GnuTLS support
40 # bin/client-ssl ditto, with OpenSSL support
41 # bin/fakens a fake nameserver
42 # bin/fd output details of open file descriptors
43 # bin/iefbr14 a program that does nothing and returns 0
44 # bin/loaded a dynamically loaded test module
45 # bin/mtpscript an LMTP/SMTP "server" that works on stdin/stdout
46 # bin/server an SMTP (socket) script-driven server (no TLS support)
47 # bin/showids output current uid, gid, euid, egid
49 bin
/cf
: $(SRC
)/cf.c Makefile
50 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/cf
$(SRC
)/cf.c
52 bin
/client
: $(SRC
)/client.c Makefile
53 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/client
$(SRC
)/client.c
$(LIBS
)
55 bin
/client-gnutls
: $(SRC
)/client.c Makefile
56 $(CC
) $(CFLAGS
) -DHAVE_GNUTLS
$(LDFLAGS
) -o bin
/client-gnutls
$(SRC
)/client.c
-lgnutls
-lgcrypt
$(LIBS
)
58 bin
/client-ssl
: $(SRC
)/client.c Makefile
59 $(CC
) $(CFLAGS
) -DHAVE_OPENSSL
$(LDFLAGS
) -o bin
/client-ssl
$(SRC
)/client.c
-lssl
-lcrypto
$(LIBS
)
61 $(CLIENT_ANYTLS
): $(CLIENT_GNUTLS
) $(CLIENT_OPENSSL
)
62 [ -n
"$(CLIENT_GNUTLS)" ] && ln
-sf
`basename $(CLIENT_GNUTLS)` $@ || ln
-sf
`basename $(CLIENT_OPENSSL)` $@
64 bin
/checkaccess
:$(SRC
)/checkaccess.c Makefile
65 $(CC
) $(CFLAGS
) -DNO_TLS
$(LDFLAGS
) -o bin
/checkaccess
$(SRC
)/checkaccess.c
67 bin
/fakens
: $(SRC
)/fakens.c Makefile
68 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/fakens
$(SRC
)/fakens.c
$(LIBS
)
70 bin
/fd
: $(SRC
)/fd.c Makefile
71 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/fd
$(SRC
)/fd.c
73 bin
/iefbr14
: $(SRC
)/iefbr14.c Makefile
74 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/iefbr14
$(SRC
)/iefbr14.c
76 bin
/loaded
: $(SRC
)/loaded.c Makefile
77 $(CC
) $(CFLAGS
) $(LDFLAGS
) $(LOADED_OPT
) -o bin
/loaded
$(SRC
)/loaded.c
79 bin
/mtpscript
: $(SRC
)/mtpscript.c Makefile
80 $(CC
) $(CFLAGS
) $(LDFLAGS
) $(mtpscript_OPT
) -o bin
/mtpscript
$(SRC
)/mtpscript.c
82 bin
/server
: $(SRC
)/server.c Makefile
83 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/server
$(SRC
)/server.c
$(LIBS
)
85 bin
/showids
: $(SRC
)/showids.c Makefile
86 $(CC
) $(CFLAGS
) $(LDFLAGS
) -o bin
/showids
$(SRC
)/showids.c
88 bin
/locate
: $(SRC
)/locate.sh Makefile
89 cp
$(SRC
)/locate.pl bin
/locate
92 clean:; rm -rf
$(BINARIES
) bin.sys