summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRomain Naour <romain.naour@gmail.com>2017-03-01 00:24:52 +0100
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2017-03-01 21:54:25 +0100
commitd2903aaf1314b50a8a10ce937d2b33c5c42e463e (patch)
treea1a8d2cd609e391afeb1850eb89b711a6df375b4
parent3e57fa370cb8e4d5f80c6abb34671f0c0467e506 (diff)
downloadbuildroot-d2903aaf1314b50a8a10ce937d2b33c5c42e463e.tar.gz
buildroot-d2903aaf1314b50a8a10ce937d2b33c5c42e463e.zip
package/sdl2: disable altivec built-in function for PowerPC
As reported in this bug report [1], altivec support in SDL break arbitrary C++ code. Issue reported by test-pkg script while testing supertux package: error: could not convert 'true' from 'bool' to '__vector(4) __bool int' [1] https://bugs.debian.org/cgi-bin/bugreport.cgi/?bug=770670 Signed-off-by: Romain Naour <romain.naour@gmail.com> Cc: Sam Bobroff <sam.bobroff@au1.ibm.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-rw-r--r--package/sdl2/sdl2.mk10
1 files changed, 10 insertions, 0 deletions
diff --git a/package/sdl2/sdl2.mk b/package/sdl2/sdl2.mk
index d2ee50dc1d..628d9060b4 100644
--- a/package/sdl2/sdl2.mk
+++ b/package/sdl2/sdl2.mk
@@ -23,6 +23,16 @@ SDL2_CONF_OPTS += \
# We must enable static build to get compilation successful.
SDL2_CONF_OPTS += --enable-static
+# From https://bugs.debian.org/cgi-bin/bugreport.cgi/?bug=770670
+# "The problem lies within SDL_cpuinfo.h. It includes altivec.h, which by
+# definition provides an unconditional vector, pixel and bool define in
+# standard-c++ mode. In GNU-c++ mode this names are only defined
+# context-sensitive by cpp. SDL_cpuinfo.h is included by SDL.h.
+# Including altivec.h makes arbitrary code break."
+ifeq ($(BR2_POWERPC_CPU_HAS_ALTIVEC),y)
+SDL2_CONF_OPTS += --disable-altivec
+endif
+
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
SDL2_DEPENDENCIES += udev
SDL2_CONF_OPTS += --enable-libudev
OpenPOWER on IntegriCloud