Tidies to the test-suite infrastructure for compiling auxiliary
authorPhilip Hazel <ph10@hermes.cam.ac.uk>
Tue, 23 Jan 2007 11:01:09 +0000 (11:01 +0000)
committerPhilip Hazel <ph10@hermes.cam.ac.uk>
Tue, 23 Jan 2007 11:01:09 +0000 (11:01 +0000)
programs.

doc/doc-txt/ChangeLog
test/Makefile.in
test/README
test/configure.ac

index 6db4096a781d3964f9303816985cec0a99285567..16ca18252384d96b69f027bc19130eee9b39b043 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.457 2007/01/22 16:29:54 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.458 2007/01/23 11:01:09 ph10 Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
@@ -35,6 +35,12 @@ PH/05 After discussion on the list, added a compile time option ENABLE_DISABLE_
 
 SC/01 Updated eximstats to collate all SpamAssassin rejects into one bucket.
 
+PH/06 Some tidies to the infrastructure of the Test Suite that is concerned
+      with the auxiliary C programs that it uses: (1) Arrange for BIND_8_COMPAT
+      to be defined when compiling on OSX (Darwin); (2) Tidies to the Makefile,
+      including adding "make clean"; (3) Added -fPIC when compiling the test
+      dynamically loaded module, to get rid of a warning.
+
 
 Exim version 4.66
 -----------------
index 58affa2ba32289ee25210c52ca89e9d24f6415be..da72101d44b334957eb099213d45074336be3f17 100644 (file)
@@ -1,11 +1,11 @@
-# $Cambridge: exim/test/Makefile.in,v 1.1 2006/02/06 16:07:10 ph10 Exp $
+# $Cambridge: exim/test/Makefile.in,v 1.2 2007/01/23 11:01:10 ph10 Exp $
 # This Makefile builds the support programs for the Exim test suite.
 
 ##############################################################################
 # These variables are set by the configure script.
 
 CC=@CC@
-CFLAGS=@CFLAGS@
+CFLAGS=@CFLAGS@ @BIND_8_COMPAT@
 LDFLAGS=@LDFLAGS@
 CLIENT_SSL=@CLIENT_SSL@
 CLIENT_GNUTLS=@CLIENT_GNUTLS@
@@ -26,72 +26,79 @@ makebin:;       @if [ ! -e bin ] ; then mkdir bin 2>/dev/null; echo ""; fi
 
 # Compile and link the programs:
 #
-# bin/client        is the SMTP script-driven client, without TLS support
-# bin/client-ssl    is with OpenSSL support
-#                   there isn't yet a version with GnuTLS support
-# bin/checkaccess   tests whether the exim uid/gid can access the files
-# bin/iefbr14       a program that does nothing and returns 0
-# bin/loaded        is a dynamically loaded test module
-# bin/server        is the SMTP script-driven server (no TLS support)
-
-bin/cf:         src/cf.c
+# 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/fakens          a fake namserver
+# 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/mtpscript       an LMTP/SMTP "server" that works on stdin/stdout
+# 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
+bin/client:     src/client.c Makefile
                $(CC) $(CFLAGS) $(LDFLAGS) -o bin/client src/client.c
                @echo ">>> bin/client command built"
                @echo " "
 
-bin/client-gnutls: src/client.c
+bin/client-gnutls: src/client.c Makefile
                $(CC) $(CFLAGS) -DHAVE_GNUTLS $(LDFLAGS) -lgnutls -lgcrypt -o bin/client-gnutls src/client.c
                @echo ">>> bin/client-gnutls command built"
                @echo " "
 
-bin/client-ssl: src/client.c
+bin/client-ssl: src/client.c Makefile
                $(CC) $(CFLAGS) -DHAVE_OPENSSL $(LDFLAGS) -lssl -lcrypto -o bin/client-ssl src/client.c
                @echo ">>> bin/client-ssl command built"
                @echo " "
 
-bin/checkaccess:src/checkaccess.c
+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
+bin/fakens:     src/fakens.c Makefile
                $(CC) $(CFLAGS) $(LDFLAGS) -o bin/fakens src/fakens.c
                @echo ">>> bin/fakens command built"
                @echo " "
 
-bin/fd:         src/fd.c
+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
+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
+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
+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
+bin/server:     src/server.c Makefile
                $(CC) $(CFLAGS) $(LDFLAGS) -o bin/server src/server.c
                @echo ">>> bin/server command built"
                @echo " "
 
-bin/showids:    src/showids.c 
+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/* 
 
 # End
index 43d641375f2d6ddf935ccb2581dc491d5d4a93b6..e1f8048f79766659a730b70a76f461c468bba1ea 100644 (file)
@@ -1,12 +1,12 @@
-$Cambridge: exim/test/README,v 1.5 2006/10/31 11:37:47 ph10 Exp $
+$Cambridge: exim/test/README,v 1.6 2007/01/23 11:01:10 ph10 Exp $
 
 EXPORTABLE EXIM TEST SUITE
 --------------------------
 
 This document last updated for:
 
-Test Suite Version: 4.64
-Date: 31 October 2006
+Test Suite Version: 4.67
+Date: 23 January 2007
 
 
 BACKGROUND
@@ -436,7 +436,11 @@ bin/iefbr14        A program that does nothing, and returns 0. It's just like
 
 bin/loaded         Some dynamically loaded functions for testing dlfunc support.
 
-bin/server         A script-driven SMTP server simulation.
+bin/mtpscript      A script-driven SMTP/LMTP server simulation, on std{in,out}.
+
+bin/server         A script-driven SMTP server simulation, over a socket.
+
+bin/showids        Output the current uid, gid, euid, egid.
 
 The runtest script also makes use of a number of ordinary commands such as
 "cp", "kill", "more", and "rm", via the system() call. In some cases these are
@@ -951,7 +955,7 @@ are of the following kinds:
     may start with '<', which is not taken as part of the input data. If the
     input does not match, the server bombs out with an error message.
 
-Here is a simple server example:
+Here is a simple example of server use in a test script:
 
   server PORT_S
   220 Greetings
@@ -974,6 +978,11 @@ After a "server" command in a test script, the server runs in parallel until an
 messages to port PORT_S on the local host. When it has finished, the test
 script waits for the "server" process to finish.
 
+The "mtpscript" program is like "server", except that it uses stdin/stdout for
+its input and output instead of a script. However, it is not called from test
+scripts; instead it is used as the command for pipe transports in some
+configurations, to simulate non-socket LMTP servers.
+
 
 AUXILIARY DATA FILES
 --------------------
index 8b318034d090eb3dda842bb269e5a8e698a17ebc..6467a0da9206f02fc3f49f60cd14d3386bd5592e 100644 (file)
@@ -1,4 +1,4 @@
-dnl $Cambridge: exim/test/configure.ac,v 1.1 2006/02/06 16:07:10 ph10 Exp $
+dnl $Cambridge: exim/test/configure.ac,v 1.2 2007/01/23 11:01:10 ph10 Exp $
 
 dnl Process this file with autoconf to produce a configure script.
 
@@ -33,7 +33,7 @@ host_os=`uname -s`
 case $CC-$host_os in
   gcc-*linux* | gcc-*Linux* | gcc-*LINUX* | gcc-FreeBSD)
     LOADED=bin/loaded
-    LOADED_OPT=-shared
+    LOADED_OPT="-shared -fPIC"
     echo "Using gcc on $host_os: will compile dynamically loaded module"
     ;;
   *)
@@ -42,8 +42,17 @@ case $CC-$host_os in
     ;;
 esac
 
+dnl At least one operating system needs BIND_8_COMPAT to be defined.
+
+case $host_os in
+  Darwin)
+    BIND_8_COMPAT=-DBIND_8_COMPAT
+    ;;
+esac
+
 dnl "Export" these variables
 
+AC_SUBST(BIND_8_COMPAT)
 AC_SUBST(CLIENT_SSL)
 AC_SUBST(CLIENT_GNUTLS)
 AC_SUBST(LOADED)