package/opus: work around gcc bug 85180
authorGiulio Benetti <giulio.benetti@micronovasrl.com>
Tue, 21 May 2019 13:39:31 +0000 (15:39 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Fri, 24 May 2019 20:05:40 +0000 (22:05 +0200)
With Microblaze Gcc version < 8.x the build hangs due to gcc bug
85180: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180. The bug
shows up when building opus with optimization but not when building
with -O0. To work around this, if BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y we
force using -O0.

Fixes:

  http://autobuild.buildroot.net/results/73dc9610a13d6e14eec58d529617210d93d5dec4/

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
[Thomas: tweak CFLAGS logic, improve commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/opus/opus.mk

index f23461a3af3db69eccc6f938fc7ea27dba676042..3fb2d5d65f93f16c975c61eea0381ffe7a1b7a0f 100644 (file)
@@ -10,6 +10,14 @@ OPUS_LICENSE = BSD-3-Clause
 OPUS_LICENSE_FILES = COPYING
 OPUS_INSTALL_STAGING = YES
 
+OPUS_CFLAGS = $(TARGET_CFLAGS)
+
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
+OPUS_CFLAGS += -O0
+endif
+
+OPUS_CONF_ENV = CFLAGS="$(OPUS_CFLAGS)"
+
 ifeq ($(BR2_PACKAGE_OPUS_FIXED_POINT),y)
 OPUS_CONF_OPTS += --enable-fixed-point
 endif