| 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 |