From 0597bf6e997c355f78c3782e70b755901316faec Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 12 Dec 2017 16:25:43 -0800 Subject: [PATCH] Fixed bug 3993 - altivec.h include in SDL_cpuinfo.h breaks compilation with -std=c++11 bastien.bouclet According to this GCC bug report, altivec.h requires building with the gnu extensions: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78263. As an application developer, I don't want SDL to force me to enable the gnu extensions. --- include/SDL_cpuinfo.h | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/include/SDL_cpuinfo.h b/include/SDL_cpuinfo.h index c7958a4eead73..9323cf95bb800 100644 --- a/include/SDL_cpuinfo.h +++ b/include/SDL_cpuinfo.h @@ -51,30 +51,28 @@ #include #else #ifdef __ALTIVEC__ -#if HAVE_ALTIVEC_H && !defined(__APPLE_ALTIVEC__) +#if HAVE_ALTIVEC_H && !defined(__APPLE_ALTIVEC__) && !defined(SDL_DISABLE_ALTIVEC_H) #include #undef pixel +#undef bool #endif #endif -#ifdef __3dNOW__ +#if defined(__3dNOW__) && !defined(SDL_DISABLE_MM3DNOW_H) #include #endif -#if HAVE_IMMINTRIN_H +#if HAVE_IMMINTRIN_H && !defined(SDL_DISABLE_IMMINTRIN_H) #include #else -#ifdef __MMX__ +#if defined(__MMX__) && !defined(SDL_DISABLE_MMINTRIN_H) #include #endif -#ifdef __3dNOW__ -#include -#endif -#ifdef __SSE__ +#if defined(__SSE__) && !defined(SDL_DISABLE_XMMINTRIN_H) #include #endif -#ifdef __SSE2__ +#if defined(__SSE2__) && !defined(SDL_DISABLE_EMMINTRIN_H) #include #endif -#ifdef __SSE3__ +#if defined(__SSE3__) && !defined(SDL_DISABLE_PMMINTRIN_H) #include #endif #endif /* HAVE_IMMINTRIN_H */