From f22ee7f0dff17aaab98035d1cf17a6a899d26cfb Mon Sep 17 00:00:00 2001 From: Andrey Kamaev Date: Fri, 21 Dec 2012 16:44:54 +0400 Subject: [PATCH] Workaround "Segmentation fault" when built with gcc 4.7 from NDK r8d --- android/android.toolchain.cmake | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/android/android.toolchain.cmake b/android/android.toolchain.cmake index b3c8d83fc1..f5daf307f7 100644 --- a/android/android.toolchain.cmake +++ b/android/android.toolchain.cmake @@ -981,7 +981,13 @@ if( BUILD_WITH_ANDROID_NDK ) set( ANDROID_EXCEPTIONS ON ) set( ANDROID_RTTI ON ) if( EXISTS "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/${ANDROID_COMPILER_VERSION}" ) - set( __libstl "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/${ANDROID_COMPILER_VERSION}" ) + if( ARMEABI_V7A AND ANDROID_COMPILER_VERSION VERSION_EQUAL "4.7" AND ANDROID_NDK_RELEASE STREQUAL "r8d" ) + # gnustl binary for 4.7 compiler is buggy :( + # TODO: look for right fix + set( __libstl "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/4.6" ) + else() + set( __libstl "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/${ANDROID_COMPILER_VERSION}" ) + endif() else() set( __libstl "${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++" ) endif()