summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/doc-txt/ChangeLog7
-rw-r--r--src/OS/Makefile-Linux-libc523
-rw-r--r--src/OS/os.c-Linux-libc539
-rw-r--r--src/OS/os.h-Linux-libc513
-rwxr-xr-xsrc/scripts/os-type23
5 files changed, 12 insertions, 93 deletions
diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog
index cd6c2f0e3..f75b02fbb 100644
--- a/doc/doc-txt/ChangeLog
+++ b/doc/doc-txt/ChangeLog
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.171 2005/06/27 10:21:38 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.172 2005/06/27 10:40:14 ph10 Exp $
Change log file for Exim from version 4.21
-------------------------------------------
@@ -198,6 +198,11 @@ PH/28 Changed -d+all to exclude +memory, because that information is very
rarely of interest, but it makes the output a lot bigger. People tend to
do -d+all out of habit.
+PH/29 Removed support for the Linux-libc5 build, as it is obsolete and the
+ code in os-type was giving problems when libc.so lives in lib64, like on
+ x86_64 Fedora Core.
+
+
Exim version 4.51
-----------------
diff --git a/src/OS/Makefile-Linux-libc5 b/src/OS/Makefile-Linux-libc5
deleted file mode 100644
index 7ae2152e8..000000000
--- a/src/OS/Makefile-Linux-libc5
+++ /dev/null
@@ -1,23 +0,0 @@
-# $Cambridge: exim/src/OS/Makefile-Linux-libc5,v 1.1 2004/10/06 15:07:39 ph10 Exp $
-
-# Exim: OS-specific make file for Linux systems using the old libc5
-# version of the C library.
-
-BASENAME_COMMAND=look_for_it
-CHOWN_COMMAND=look_for_it
-CHGRP_COMMAND=look_for_it
-
-CFLAGS=-O
-
-DBMLIB = -lndbm
-
-X11=/usr/X11R6
-XINCLUDE=-I$(X11)/include
-XLFLAGS=-L$(X11)/lib
-X11_LD_LIB=$(X11)/lib
-
-EXIWHAT_PS_ARG=-ax
-EXIWHAT_EGREP_ARG='/exim( |$$)'
-EXIWHAT_KILL_SIGNAL=-USR1
-
-# End
diff --git a/src/OS/os.c-Linux-libc5 b/src/OS/os.c-Linux-libc5
deleted file mode 100644
index cbda9e6fa..000000000
--- a/src/OS/os.c-Linux-libc5
+++ /dev/null
@@ -1,39 +0,0 @@
-/* $Cambridge: exim/src/OS/os.c-Linux-libc5,v 1.1 2004/10/06 15:07:39 ph10 Exp $ */
-
-/*************************************************
-* Exim - an Internet mail transport agent *
-*************************************************/
-
-/* Copyright (c) University of Cambridge 2001 */
-/* See the file NOTICE for conditions of use and distribution. */
-
-/* Linux-specific code. This is concatenated onto the generic src/os.c file.
-Linux has an apparently unique way of getting the load average, so we provide a
-unique function here, and define OS_LOAD_AVERAGE to stop src/os.c trying to
-provide the function. The macro may be set initially anyway, when compiling os.
-for utilities that don't want this function. */
-
-#ifndef OS_LOAD_AVERAGE
-#define OS_LOAD_AVERAGE
-
-int
-os_getloadavg(void)
-{
-char buffer[40];
-double avg;
-int count;
-int fd = open ("/proc/loadavg", O_RDONLY);
-if (fd == -1) return -1;
-count = read (fd, buffer, sizeof(buffer));
-(void)close (fd);
-if (count <= 0) return -1;
-count = sscanf (buffer, "%lf", &avg);
-if (count < 1) return -1;
-
-return (int)(avg * 1000.0);
-}
-
-#endif /* OS_LOAD_AVERAGE */
-
-/* End of os.c-Linux */
-
diff --git a/src/OS/os.h-Linux-libc5 b/src/OS/os.h-Linux-libc5
deleted file mode 100644
index 56bbd50d1..000000000
--- a/src/OS/os.h-Linux-libc5
+++ /dev/null
@@ -1,13 +0,0 @@
-/* $Cambridge: exim/src/OS/os.h-Linux-libc5,v 1.1 2004/10/06 15:07:39 ph10 Exp $ */
-
-/* Exim: OS-specific C header file for Linux */
-
-#define HAVE_MMAP
-#define HAVE_SYS_VFS_H
-#define NO_IP_VAR_H
-#define GLIBC_IP_OPTIONS
-
-#define F_FREESP O_TRUNC
-typedef struct flock flock_t;
-
-/* End */
diff --git a/src/scripts/os-type b/src/scripts/os-type
index 60d1730df..8fe574d93 100755
--- a/src/scripts/os-type
+++ b/src/scripts/os-type
@@ -1,5 +1,5 @@
#! /bin/sh
-# $Cambridge: exim/src/scripts/os-type,v 1.3 2005/04/06 10:53:47 ph10 Exp $
+# $Cambridge: exim/src/scripts/os-type,v 1.4 2005/06/27 10:40:14 ph10 Exp $
# Shell script to determine the operating system type. Some of the heuristics
# herein have accumulated over the years and may not strictly be needed now,
@@ -125,22 +125,11 @@ SunOS5) case `uname -m` in
esac
;;
-# In the case of Linux we need to distinguish which libc is used.
-# This is more cautious than it needs to be. In practice libc5 will always
-# be a symlink, and libc6 will always be a linker control file, but it's
-# easy enough to do a better check, and check the symlink destination or the
-# control file contents and make sure.
-
-Linux) if [ -L /usr/lib/libc.so ]; then
- if [ x"$(file /usr/lib/libc.so | grep "libc.so.5")"x != xx ]; then
- os=Linux-libc5
- fi
- else
- if grep -q libc.so.5 /usr/lib/libc.so; then
- os=Linux-libc5
- fi
- fi
- ;;
+# In the case of Linux we used to distinguish which libc was used so that
+# the old libc5 was supported as well as the current glibc. This support
+# was giving some people problems, so it was removed in June 2005, under
+# the assumption that nobody would be using libc5 any more (it is over seven
+# years old).
# In the case of NetBSD we need to distinguish between a.out, ELF
# and COFF binary formats. However, a.out and COFF are the same