ph10 2007/01/23 11:01:10 GMT
Modified files:
exim-doc/doc-txt ChangeLog
exim-test Makefile.in README configure.ac
Log:
Tidies to the test-suite infrastructure for compiling auxiliary
programs.
Revision Changes Path
1.458 +6 -0 exim/exim-doc/doc-txt/ChangeLog
1.2 +27 -20 exim/exim-test/Makefile.in
1.6 +13 -4 exim/exim-test/README
1.2 +10 -1 exim/exim-test/configure.ac
Index: ChangeLog
===================================================================
RCS file: /home/cvs/exim/exim-doc/doc-txt/ChangeLog,v
retrieving revision 1.457
retrieving revision 1.458
diff -u -r1.457 -r1.458
--- ChangeLog 22 Jan 2007 16:29:54 -0000 1.457
+++ ChangeLog 23 Jan 2007 11:01:09 -0000 1.458
@@ -1,4 +1,4 @@
-$Cambridge: exim/exim-doc/doc-txt/ChangeLog,v 1.457 2007/01/22 16:29:54 ph10 Exp $
+$Cambridge: exim/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
-------------------------------------------
@@ -34,6 +34,12 @@
bypassing fsync(). The documentation is heavily laced with warnings.
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: Makefile.in
===================================================================
RCS file: /home/cvs/exim/exim-test/Makefile.in,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Makefile.in 6 Feb 2006 16:07:10 -0000 1.1
+++ Makefile.in 23 Jan 2007 11:01:10 -0000 1.2
@@ -1,11 +1,11 @@
-# $Cambridge: exim/exim-test/Makefile.in,v 1.1 2006/02/06 16:07:10 ph10 Exp $
+# $Cambridge: exim/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 @@
# 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 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
+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: README
===================================================================
RCS file: /home/cvs/exim/exim-test/README,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- README 31 Oct 2006 11:37:47 -0000 1.5
+++ README 23 Jan 2007 11:01:10 -0000 1.6
@@ -1,12 +1,12 @@
-$Cambridge: exim/exim-test/README,v 1.5 2006/10/31 11:37:47 ph10 Exp $
+$Cambridge: exim/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/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 @@
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
@@ -973,6 +977,11 @@
"exim" command is reached. The "exim" command attempts to deliver one or more
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: configure.ac
===================================================================
RCS file: /home/cvs/exim/exim-test/configure.ac,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- configure.ac 6 Feb 2006 16:07:10 -0000 1.1
+++ configure.ac 23 Jan 2007 11:01:10 -0000 1.2
@@ -1,4 +1,4 @@
-dnl $Cambridge: exim/exim-test/configure.ac,v 1.1 2006/02/06 16:07:10 ph10 Exp $
+dnl $Cambridge: exim/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 @@
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 @@
;;
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)