Lookups: lazy-load modules
[exim.git] / test / Makefile.in
index 70b14753a79f0ba0d71a0d892327d4d9eb8974da..f7a2a4695b68df277dd446a5c9badba5ba5a2a22 100644 (file)
@@ -4,34 +4,42 @@
 # These variables are set by the configure script.
 
 CC=@CC@
 # These variables are set by the configure script.
 
 CC=@CC@
-CFLAGS=@CFLAGS@ @BIND_8_COMPAT@ @DEFS@
+CFLAGS=@CFLAGS@ @CPPFLAGS@ @BIND_8_COMPAT@ @DEFS@
 LDFLAGS=@LDFLAGS@
 LDFLAGS=@LDFLAGS@
-CLIENT_SSL=@CLIENT_SSL@
+CLIENT_OPENSSL=@CLIENT_OPENSSL@
 CLIENT_GNUTLS=@CLIENT_GNUTLS@
 CLIENT_GNUTLS=@CLIENT_GNUTLS@
+CLIENT_ANYTLS=@CLIENT_ANYTLS@
 LOADED=@LOADED@
 LOADED_OPT=@LOADED_OPT@
 LIBS=@LIBS@
 
 LOADED=@LOADED@
 LOADED_OPT=@LOADED_OPT@
 LIBS=@LIBS@
 
+SRC = @srcdir@/src
+
 ##############################################################################
 
 ##############################################################################
 
+BINARIES =     bin/cf bin/client $(CLIENT_OPENSSL) $(CLIENT_GNUTLS) $(CLIENT_ANYTLS) \
+                bin/checkaccess bin/fakens bin/fd bin/iefbr14 $(LOADED) \
+                bin/mtpscript bin/server bin/showids bin/locate \
+
 # List of targets
 
 # List of targets
 
-all:            makebin bin/cf bin/client $(CLIENT_SSL) $(CLIENT_GNUTLS) \
-                bin/checkaccess bin/fakens bin/fd bin/iefbr14 $(LOADED) \
-                bin/mtpscript bin/server bin/showids
+all:            binaries sysbinaries
 
 
-# Ensure the bin directory exists
+binaries:      $(BINARIES)
 
 
-makebin:;       @if [ ! -e bin ] ; then mkdir bin 2>/dev/null; echo ""; fi
+sysbinaries:   FORCE binaries
+               rm -f bin.sys/*
+               bin/locate initdb postgres pg_ctl psql mysqld mysql
+               ls -la bin.sys
 
 # Compile and link the programs:
 #
 
 # Compile and link the programs:
 #
-# bin/cf              a "compare" program 
+# bin/cf              a "compare" program
 # bin/checkaccess     tests whether the exim uid/gid can access the files
 # bin/client          an SMTP script-driven client, without TLS support
 # bin/client-gnutls   ditto, with GnuTLS support
 # bin/client-ssl      ditto, with OpenSSL support
 # bin/checkaccess     tests whether the exim uid/gid can access the files
 # bin/client          an SMTP script-driven client, without TLS support
 # bin/client-gnutls   ditto, with GnuTLS support
 # bin/client-ssl      ditto, with OpenSSL support
-# bin/fakens          a fake namserver
+# bin/fakens          a fake nameserver
 # bin/fd              output details of open file descriptors
 # bin/iefbr14         a program that does nothing and returns 0
 # bin/loaded          a dynamically loaded test module
 # bin/fd              output details of open file descriptors
 # bin/iefbr14         a program that does nothing and returns 0
 # bin/loaded          a dynamically loaded test module
@@ -39,66 +47,51 @@ makebin:;       @if [ ! -e bin ] ; then mkdir bin 2>/dev/null; echo ""; fi
 # bin/server          an SMTP (socket) script-driven server (no TLS support)
 # bin/showids         output current uid, gid, euid, egid
 
 # bin/server          an SMTP (socket) script-driven server (no TLS support)
 # bin/showids         output current uid, gid, euid, egid
 
-bin/cf:         src/cf.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/cf src/cf.c
-               @echo ">>> bin/cf command build"
-               @echo " "
-
-bin/client:     src/client.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/client src/client.c $(LIBS)
-               @echo ">>> bin/client command built"
-               @echo " "
-
-bin/client-gnutls: src/client.c Makefile
-               $(CC) $(CFLAGS) -DHAVE_GNUTLS $(LDFLAGS) -o bin/client-gnutls src/client.c -lgnutls -lgcrypt $(LIBS)
-               @echo ">>> bin/client-gnutls command built"
-               @echo " "
-
-bin/client-ssl: src/client.c Makefile
-               $(CC) $(CFLAGS) -DHAVE_OPENSSL $(LDFLAGS) -o bin/client-ssl src/client.c -lssl -lcrypto $(LIBS)
-               @echo ">>> bin/client-ssl command built"
-               @echo " "
-
-bin/checkaccess:src/checkaccess.c Makefile
-               $(CC) $(CFLAGS) -DNO_TLS $(LDFLAGS) -o bin/checkaccess src/checkaccess.c
-               @echo ">>> bin/checkaccess command built"
-               @echo " "
-
-bin/fakens:     src/fakens.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fakens src/fakens.c $(LIBS)
-               @echo ">>> bin/fakens command built"
-               @echo " "
-
-bin/fd:         src/fd.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fd src/fd.c
-               @echo ">>> bin/fd command built"
-               @echo " "
-
-bin/iefbr14:    src/iefbr14.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/iefbr14 src/iefbr14.c
-               @echo ">>> bin/iefbr14 command built"
-               @echo " "
-
-bin/loaded:     src/loaded.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) $(LOADED_OPT) -o bin/loaded src/loaded.c
-               @echo ">>> bin/loaded command built"
-               @echo " "
-
-bin/mtpscript:  src/mtpscript.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) $(mtpscript_OPT) -o bin/mtpscript src/mtpscript.c
-               @echo ">>> bin/mtpscript command built"
-               @echo " "
-
-bin/server:     src/server.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/server src/server.c $(LIBS)
-               @echo ">>> bin/server command built"
-               @echo " "
-
-bin/showids:    src/showids.c Makefile
-               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/showids src/showids.c
-               @echo ">>> bin/showids command built"
-               @echo " "
-                
-clean:;         rm -rf bin/* 
+bin/cf:         $(SRC)/cf.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/cf $(SRC)/cf.c
+
+bin/client:     $(SRC)/client.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/client $(SRC)/client.c $(LIBS)
+
+bin/client-gnutls: $(SRC)/client.c Makefile
+               $(CC) $(CFLAGS) -DHAVE_GNUTLS $(LDFLAGS) -o bin/client-gnutls $(SRC)/client.c -lgnutls -lgcrypt $(LIBS)
+
+bin/client-ssl: $(SRC)/client.c Makefile
+               $(CC) $(CFLAGS) -DHAVE_OPENSSL $(LDFLAGS) -o bin/client-ssl $(SRC)/client.c -lssl -lcrypto $(LIBS)
+
+$(CLIENT_ANYTLS): $(CLIENT_GNUTLS) $(CLIENT_OPENSSL)
+               [ -n "$(CLIENT_GNUTLS)" ] && ln -sf `basename $(CLIENT_GNUTLS)` $@ || ln -sf `basename $(CLIENT_OPENSSL)` $@
+
+bin/checkaccess:$(SRC)/checkaccess.c Makefile
+               $(CC) $(CFLAGS) -DNO_TLS $(LDFLAGS) -o bin/checkaccess $(SRC)/checkaccess.c
+
+bin/fakens:     $(SRC)/fakens.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fakens $(SRC)/fakens.c $(LIBS)
+
+bin/fd:         $(SRC)/fd.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fd $(SRC)/fd.c
+
+bin/iefbr14:    $(SRC)/iefbr14.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/iefbr14 $(SRC)/iefbr14.c
+
+bin/loaded:     $(SRC)/loaded.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) $(LOADED_OPT) -o bin/loaded $(SRC)/loaded.c
+
+bin/mtpscript:  $(SRC)/mtpscript.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) $(mtpscript_OPT) -o bin/mtpscript $(SRC)/mtpscript.c
+
+bin/server:     $(SRC)/server.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/server $(SRC)/server.c $(LIBS)
+
+bin/showids:    $(SRC)/showids.c Makefile
+               $(CC) $(CFLAGS) $(LDFLAGS) -o bin/showids $(SRC)/showids.c
+
+bin/locate:     $(SRC)/locate.sh Makefile
+               cp $(SRC)/locate.pl bin/locate
+               chmod 0755 bin/locate
+
+clean:;         rm -rf $(BINARIES) bin.sys
+
+FORCE:
 
 # End
 
 # End