From 105e3b34be2e51e03721710fb3e91aa93083b1ce Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Sat, 25 Mar 2023 21:38:08 +0100 Subject: [PATCH] package/bind: fix build failure due to gcc bug 101737 The bind package exhibits gcc bug 101737 when built for the SH4 architecture with optimization enabled, which causes a build failure. As done for other packages in Buildroot work around this gcc bug by setting optimization to -O0 if BR2_TOOLCHAIN_HAS_GCC_BUG_101737=y. To achieve this we need to correct the override of CFLAGS by using: BIND_CONF_OPTS += CFLAGS="$(BIND_CFLAGS)" instead of: BIND_CONF_ENV = BUILD_CFLAGS"$(BIND_CFLAGS)" since the latter doesn't work as expected and doesn't override CFLAGS. Fixes: http://autobuild.buildroot.net/results/e7b/e7b9a4cbee8bb16431609182b96d1ac1ccec10e7/ Signed-off-by: Giulio Benetti Signed-off-by: Thomas Petazzoni --- package/bind/bind.mk | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/package/bind/bind.mk b/package/bind/bind.mk index f46d1a8a54..b934ab3190 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -28,7 +28,6 @@ BIND_TARGET_SERVER_SBIN += dnssec-keyfromlabel dnssec-signzone tsig-keygen BIND_TARGET_TOOLS_BIN = dig host nslookup nsupdate BIND_CONF_ENV = \ BUILD_CC="$(TARGET_CC)" \ - BUILD_CFLAGS="$(TARGET_CFLAGS)" \ LIBS=`$(PKG_CONFIG_HOST_BINARY) --libs openssl` BIND_CONF_OPTS = \ --without-cmocka \ @@ -39,6 +38,14 @@ BIND_CONF_OPTS = \ BIND_DEPENDENCIES = host-pkgconf libuv openssl +BIND_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_101737),y) +BIND_CFLAGS += -O0 +endif + +BIND_CONF_OPTS += CFLAGS="$(BIND_CFLAGS)" + ifeq ($(BR2_PACKAGE_ZLIB),y) BIND_CONF_OPTS += --with-zlib BIND_DEPENDENCIES += zlib