From b0377f798f6794b6c93be150da6bc3fc140f1ce4 Mon Sep 17 00:00:00 2001 From: Tony Finch Date: Wed, 15 Feb 2023 19:00:37 +0000 Subject: [PATCH] Avoid redefining _FORTIFY_SOURCE Some compilers have a built-in definition of the _FORTIFY_SOURCE macro that differs from BIND's preferred setting. This causes errors like the one quoted below. The solution is to undefine the macro before defining it. A similar fix was recently committed to glibc. : error: '_FORTIFY_SOURCE' macro redefined #define _FORTIFY_SOURCE 2 ^ : note: previous definition is here #define _FORTIFY_SOURCE 0 ^ https://sourceware.org/git/glibc.git/commitdiff/35bcb08eaa953c9b --- configure.ac | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 4aa1761b26..c180364dfb 100644 --- a/configure.ac +++ b/configure.ac @@ -134,8 +134,9 @@ STD_LDFLAGS="" # ... except in test code TEST_CFLAGS="-Wno-vla" -# Fortify the sources by default -STD_CPPFLAGS="-D_FORTIFY_SOURCE=2" +# Fortify the sources by default (we undefine the macro first in case +# the compiler has a different built-in setting) +STD_CPPFLAGS="-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2" # # Additional compiler settings.