From bdde22152c0f5ee3792e2f9eede54097e37dd763 Mon Sep 17 00:00:00 2001 From: Phil Pennock Date: Sat, 25 Feb 2017 20:18:08 -0500 Subject: [PATCH] Point at readline fix on macOS dlopen() without a qualified path searches env vars and paths stamped into the binary; Exim is usually setuid, so this becomes just the paths stamped into the binary. On some platforms (*cough* macOS) libreadline is not in the usual places. So show how to stamp the Homebrew location of libreadline into the Exim binary. --- src/src/EDITME | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/src/EDITME b/src/src/EDITME index 956b1e1e2..5ac5a55dc 100644 --- a/src/src/EDITME +++ b/src/src/EDITME @@ -1099,6 +1099,13 @@ SYSTEM_ALIASES_FILE=/etc/aliases # Note that this option adds to the size of the Exim binary, because the # dynamic loading library is not otherwise included. +# If libreadline is not in the normal library paths, then because Exim is +# setuid you'll need to ensure that the correct directory is stamped into +# the binary so that dlopen will find it. +# Eg, on macOS/Darwin with a third-party install of libreadline, perhaps: + +# EXTRALIBS_EXIM+=-Wl,-rpath,/usr/local/opt/readline/lib + #------------------------------------------------------------------------------ # Uncomment this setting to include IPv6 support. -- 2.25.1