summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Pennock <pdp@exim.org>2017-02-12 06:52:36 -0500
committerPhil Pennock <pdp@exim.org>2017-02-12 06:54:55 -0500
commitb1d4fc252b9a4ed3a70c2ee7296af2af806e0033 (patch)
tree99290522d31ecbfee4bd925db76221c0c1f4e58e
parente1054c675575d47d6289d7e92aa79e09ca05c3e4 (diff)
downloadexim4-b1d4fc252b9a4ed3a70c2ee7296af2af806e0033.tar.gz
FreeBSD: only assume iconv for FreeBSD >= 10
Since FreeBSD 10 is the oldest version of the OS supported by the FreeBSD Project, we shouldn't need this. But people are still using older versions. On closer examination, it's only been 6 weeks since 9.3 stopped being supported. People ignoring the status are playing with fire, getting no security updates, but let's not make that _our_ problem. Guard the "use system iconv" #define for the libiconv package with an OS version #ifdef. (cherry picked from commit 852e25c532665a5523f07930030199666aef996c) Signed-off-by: Phil Pennock <pdp@exim.org>
-rw-r--r--src/OS/os.h-FreeBSD9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/OS/os.h-FreeBSD b/src/OS/os.h-FreeBSD
index a67ca13b7..bf43e0a3c 100644
--- a/src/OS/os.h-FreeBSD
+++ b/src/OS/os.h-FreeBSD
@@ -18,6 +18,9 @@ typedef struct flock flock_t;
* says that libc has iconv since 2013, in 10-CURRENT. FreeBSD man-pages
* shows it included in 10.0-RELEASE. Writing this in 2017, 10.3 is the
* oldest supported release, so we should assume non-libiconv by default.
+ * (Actually, people still using old releases past EOL; we shouldn't support
+ * them but I don't want to deal with howls of complaints because we dare
+ * to not support the unsupported, so guard this on FreeBSD 10+)
*
* Thus we no longer override iconv.
*
@@ -25,6 +28,10 @@ typedef struct flock flock_t;
* to include-path (likely) then we'll get that. So define a variable
* which makes the libiconv try to not interfere with OS iconv.
*/
-#define LIBICONV_PLUG
+#if __FreeBSD__ >= 10
+# define LIBICONV_PLUG
+#endif
+/* for more specific version constraints, include <sys/param.h> and look at
+ * __FreeBSD_version */
/* End */