diff --git a/OpenCVPCHSupport.cmake b/OpenCVPCHSupport.cmake index b72783fa80..476f7b7a83 100644 --- a/OpenCVPCHSupport.cmake +++ b/OpenCVPCHSupport.cmake @@ -53,7 +53,7 @@ MACRO(_PCH_GET_COMPILE_FLAGS _out_compile_flags) GET_DIRECTORY_PROPERTY(DIRINC INCLUDE_DIRECTORIES ) FOREACH(item ${DIRINC}) - LIST(APPEND ${_out_compile_flags} "${_PCH_include_prefix}${item}") + LIST(APPEND ${_out_compile_flags} "${_PCH_include_prefix}\"${item}\"") ENDFOREACH(item) GET_DIRECTORY_PROPERTY(_directory_flags DEFINITIONS) diff --git a/android/android.toolchain.cmake b/android/android.toolchain.cmake index 667248d3ab..7c7fe2103f 100644 --- a/android/android.toolchain.cmake +++ b/android/android.toolchain.cmake @@ -98,6 +98,7 @@ # - modified July 2011 Andrey Kamaev andrey.kamaev@itseez.com # [~] fixed options caching # [~] search for all supported NDK versions +# [~] allowed spaces in NDK path # ---------------------------------------------------------------------------- # this one is important @@ -319,6 +320,13 @@ endif() if( BUILD_WITH_ANDROID_NDK ) set( CMAKE_CXX_FLAGS "--sysroot='${ANDROID_NDK_SYSROOT}' ${CMAKE_CXX_FLAGS}" ) set( CMAKE_C_FLAGS "--sysroot='${ANDROID_NDK_SYSROOT}' ${CMAKE_C_FLAGS}" ) + if (ANDROID_NDK_SYSROOT MATCHES "[ ]") + # workaround for ugly cmake bug - compiler identification replaces all spaces in compiler flags with ; symbol + # as result identification fails if ANDROID_NDK_SYSROOT contain spaces + include(CMakeForceCompiler) + CMAKE_FORCE_C_COMPILER("${CMAKE_C_COMPILER}" GNU) + CMAKE_FORCE_CXX_COMPILER("${CMAKE_CXX_COMPILER}" GNU) + endif() endif() if( ARMEABI_V7A )