Harden string-list handling
[exim.git] / test / Makefile.in
1 # This Makefile builds the support programs for the Exim test suite.
2
3 ##############################################################################
4 # These variables are set by the configure script.
5
6 CC=@CC@
7 CFLAGS=@CFLAGS@ @CPPFLAGS@ @BIND_8_COMPAT@ @DEFS@
8 LDFLAGS=@LDFLAGS@
9 CLIENT_SSL=@CLIENT_SSL@
10 CLIENT_GNUTLS=@CLIENT_GNUTLS@
11 LOADED=@LOADED@
12 LOADED_OPT=@LOADED_OPT@
13 LIBS=@LIBS@
14
15 SRC = @srcdir@/src
16
17 ##############################################################################
18
19 BINARIES =      bin/cf bin/client $(CLIENT_SSL) $(CLIENT_GNUTLS) \
20                 bin/checkaccess bin/fakens bin/fd bin/iefbr14 $(LOADED) \
21                 bin/mtpscript bin/server bin/showids bin/locate
22
23 # List of targets
24
25 all:            binaries sysbinaries
26
27 binaries:       $(BINARIES)
28
29 sysbinaries:    FORCE binaries
30                 bin/locate initdb postgres pg_ctl mysqld
31                 ls -la bin.sys
32
33 # Compile and link the programs:
34 #
35 # bin/cf              a "compare" program
36 # bin/checkaccess     tests whether the exim uid/gid can access the files
37 # bin/client          an SMTP script-driven client, without TLS support
38 # bin/client-gnutls   ditto, with GnuTLS support
39 # bin/client-ssl      ditto, with OpenSSL support
40 # bin/fakens          a fake nameserver
41 # bin/fd              output details of open file descriptors
42 # bin/iefbr14         a program that does nothing and returns 0
43 # bin/loaded          a dynamically loaded test module
44 # bin/mtpscript       an LMTP/SMTP "server" that works on stdin/stdout
45 # bin/server          an SMTP (socket) script-driven server (no TLS support)
46 # bin/showids         output current uid, gid, euid, egid
47
48 bin/cf:         $(SRC)/cf.c Makefile
49                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/cf $(SRC)/cf.c
50
51 bin/client:     $(SRC)/client.c Makefile
52                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/client $(SRC)/client.c $(LIBS)
53
54 bin/client-gnutls: $(SRC)/client.c Makefile
55                 $(CC) $(CFLAGS) -DHAVE_GNUTLS $(LDFLAGS) -o bin/client-gnutls $(SRC)/client.c -lgnutls -lgcrypt $(LIBS)
56
57 bin/client-ssl: $(SRC)/client.c Makefile
58                 $(CC) $(CFLAGS) -DHAVE_OPENSSL $(LDFLAGS) -o bin/client-ssl $(SRC)/client.c -lssl -lcrypto $(LIBS)
59
60 bin/checkaccess:$(SRC)/checkaccess.c Makefile
61                 $(CC) $(CFLAGS) -DNO_TLS $(LDFLAGS) -o bin/checkaccess $(SRC)/checkaccess.c
62
63 bin/fakens:     $(SRC)/fakens.c Makefile
64                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fakens $(SRC)/fakens.c $(LIBS)
65
66 bin/fd:         $(SRC)/fd.c Makefile
67                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fd $(SRC)/fd.c
68
69 bin/iefbr14:    $(SRC)/iefbr14.c Makefile
70                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/iefbr14 $(SRC)/iefbr14.c
71
72 bin/loaded:     $(SRC)/loaded.c Makefile
73                 $(CC) $(CFLAGS) $(LDFLAGS) $(LOADED_OPT) -o bin/loaded $(SRC)/loaded.c
74
75 bin/mtpscript:  $(SRC)/mtpscript.c Makefile
76                 $(CC) $(CFLAGS) $(LDFLAGS) $(mtpscript_OPT) -o bin/mtpscript $(SRC)/mtpscript.c
77
78 bin/server:     $(SRC)/server.c Makefile
79                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/server $(SRC)/server.c $(LIBS)
80
81 bin/showids:    $(SRC)/showids.c Makefile
82                 $(CC) $(CFLAGS) $(LDFLAGS) -o bin/showids $(SRC)/showids.c
83
84 bin/locate:     $(SRC)/locate.sh Makefile
85                 cp $(SRC)/locate.pl bin/locate
86                 chmod 0755 bin/locate
87
88 clean:;         rm -rf $(BINARIES) bin.sys
89
90 FORCE:
91
92 # End