From c5299a7dd02a1ba74b6e089a428d0de720091e17 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Mon, 14 Aug 2017 23:40:59 +0200 Subject: [PATCH] libspatialindex: fix build on Microblaze This commit fixes the build of libspatialindex on the Microblaze architecture by working around a gcc bug, by passing -O0 as the optimization level. A patch to configure.ac is needed to not have -O2 be forced by the libspatialindex build system, and therefore AUTORECONF=YES is now needed. Fixes: http://autobuild.buildroot.net/results/bbba2a2c97dbec21340c7fd07162a316a411cba4/ Signed-off-by: Thomas Petazzoni Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- .../0001-configure.ac-do-not-force-O2.patch | 30 +++++++++++++++++++ package/libspatialindex/libspatialindex.mk | 12 ++++++++ 2 files changed, 42 insertions(+) create mode 100644 package/libspatialindex/0001-configure.ac-do-not-force-O2.patch diff --git a/package/libspatialindex/0001-configure.ac-do-not-force-O2.patch b/package/libspatialindex/0001-configure.ac-do-not-force-O2.patch new file mode 100644 index 0000000000..c078e713ec --- /dev/null +++ b/package/libspatialindex/0001-configure.ac-do-not-force-O2.patch @@ -0,0 +1,30 @@ +From 7472764fe19cb3eea77f21cc2859859b8ac62085 Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Mon, 14 Aug 2017 23:36:36 +0200 +Subject: [PATCH] configure.ac: do not force -O2 + +The user may want to provide its own set of optimization flags, and +therefore forcing -O2 should not be done. + +Signed-off-by: Thomas Petazzoni +Submitted-upstream: https://github.com/libspatialindex/libspatialindex/pull/101 +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index dc5e49f..2e2aa68 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -53,7 +53,7 @@ if test "x$enable_debug" = "xyes"; then + CXXFLAGS="$CXXFLAGS -g -DDEBUG" + AC_MSG_RESULT(checking wether debug information is enabled... yes) + else +- CXXFLAGS="$CXXFLAGS -O2 -DNDEBUG" ++ CXXFLAGS="$CXXFLAGS -DNDEBUG" + AC_MSG_RESULT(checking wether debug information is enabled... no) + fi + +-- +2.9.4 + diff --git a/package/libspatialindex/libspatialindex.mk b/package/libspatialindex/libspatialindex.mk index d815364442..3a558dfc7e 100644 --- a/package/libspatialindex/libspatialindex.mk +++ b/package/libspatialindex/libspatialindex.mk @@ -11,4 +11,16 @@ LIBSPATIALINDEX_INSTALL_STAGING = YES LIBSPATIALINDEX_LICENSE = MIT LIBSPATIALINDEX_LICENSE_FILES = COPYING +# 0001-configure.ac-do-not-force-O2.patch +LIBSPATIALINDEX_AUTORECONF = YES + +LIBSPATIALINDEX_CXXFLAGS = $(TARGET_CXXFLAGS) +LIBSPATIALINDEX_CONF_ENV = CXXFLAGS="$(LIBSPATIALINDEX_CXXFLAGS)" + +# Workaround gcc ICE +# (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485) +ifeq ($(BR2_microblaze),y) +LIBSPATIALINDEX_CXXFLAGS += -O0 +endif + $(eval $(autotools-package)) -- 2.30.2