summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabrice Fontaine <fontaine.fabrice@gmail.com>2018-05-05 09:43:04 (GMT)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>2018-05-20 10:46:35 (GMT)
commit7ab59879c798b56fb0dc203a8d55df712709a34f (patch)
treefeb94e93da5cee8e93de0075b32d72746f1275dd
parentc6c9b95ccd422f146047f3eb4d2c201009bbdb3c (diff)
downloadbuildroot-7ab59879c798b56fb0dc203a8d55df712709a34f.tar.gz
buildroot-7ab59879c798b56fb0dc203a8d55df712709a34f.tar.bz2
zmqpp: fix build with or1k and gcc < 6
Use CONFIG variable to disable optimizations when or1k and gcc < 6 are detected otherwise set CONFIG to release or debug depending on BR2_ENABLE_DEBUG Fixes: - http://autobuild.buildroot.net/results/523e58eefba7ef23a09ef53160da22190ccbb098 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
-rw-r--r--package/zmqpp/zmqpp.mk11
1 files changed, 10 insertions, 1 deletions
diff --git a/package/zmqpp/zmqpp.mk b/package/zmqpp/zmqpp.mk
index f576527..e57f7de 100644
--- a/package/zmqpp/zmqpp.mk
+++ b/package/zmqpp/zmqpp.mk
@@ -12,6 +12,15 @@ ZMQPP_LICENSE = MPL-2.0
ZMQPP_LICENSE_FILES = LICENSE
ZMQPP_MAKE_OPTS = LD="$(TARGET_CXX)" BUILD_PATH=./build PREFIX=/usr
ZMQPP_LDFLAGS = $(TARGET_LDFLAGS) -lpthread
+ZMQPP_CONFIG = $(if $(BR2_ENABLE_DEBUG),debug,release)
+
+# gcc bug internal compiler error: in merge_overlapping_regs, at
+# regrename.c:304. This bug is fixed since gcc 6.
+# By setting CONFIG to empty, all optimizations such as -funroll-loops
+# -ffast-math -finline-functions -fomit-frame-pointer are disabled
+ifeq ($(BR2_or1k):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:)
+ZMQPP_CONFIG =
+endif
ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y)
ZMQPP_LDFLAGS += -latomic
@@ -31,7 +40,7 @@ endif
define ZMQPP_BUILD_CMDS
$(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) \
- LDFLAGS="$(ZMQPP_LDFLAGS)" \
+ CONFIG=$(ZMQPP_CONFIG) LDFLAGS="$(ZMQPP_LDFLAGS)" \
$(ZMQPP_MAKE_OPTS) $(if $(BR2_PACKAGE_ZMQPP_CLIENT),client,library) -C $(@D)
endef