Index: compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake =================================================================== --- compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake +++ compiler-rt/trunk/cmake/Modules/AddCompilerRT.cmake @@ -276,7 +276,10 @@ if(type STREQUAL "OBJECT") get_property(cflags_${libname} SOURCE ${sources_${libname}} PROPERTY COMPILE_FLAGS) if(CMAKE_C_COMPILER_ID MATCHES Clang AND CMAKE_C_COMPILER_TARGET) - list(APPEND cflags_${libname} "-target ${CMAKE_C_COMPILER_TARGET}") + list(APPEND cflags_${libname} "--target=${CMAKE_C_COMPILER_TARGET}") + endif() + if(CMAKE_SYSROOT) + list(APPEND cflags_${libname} "--sysroot=${CMAKE_SYSROOT}") endif() string(REPLACE ";" " " extra_cflags_${libname} "${extra_cflags_${libname}}") string(REGEX MATCHALL "<[A-Za-z0-9_]*>" substitutions Index: compiler-rt/trunk/cmake/config-ix.cmake =================================================================== --- compiler-rt/trunk/cmake/config-ix.cmake +++ compiler-rt/trunk/cmake/config-ix.cmake @@ -100,6 +100,7 @@ check_cxx_compiler_flag("-Werror -Wvariadic-macros" COMPILER_RT_HAS_WVARIADIC_MACROS_FLAG) check_cxx_compiler_flag("-Werror -Wunused-parameter" COMPILER_RT_HAS_WUNUSED_PARAMETER_FLAG) check_cxx_compiler_flag("-Werror -Wcovered-switch-default" COMPILER_RT_HAS_WCOVERED_SWITCH_DEFAULT_FLAG) +check_cxx_compiler_flag(-Wno-pedantic COMPILER_RT_HAS_WNO_PEDANTIC) check_cxx_compiler_flag(/W4 COMPILER_RT_HAS_W4_FLAG) check_cxx_compiler_flag(/WX COMPILER_RT_HAS_WX_FLAG) Index: compiler-rt/trunk/lib/crt/CMakeLists.txt =================================================================== --- compiler-rt/trunk/lib/crt/CMakeLists.txt +++ compiler-rt/trunk/lib/crt/CMakeLists.txt @@ -73,6 +73,7 @@ append_list_if(COMPILER_RT_HAS_INITFINI_ARRAY -DCRT_HAS_INITFINI_ARRAY CRT_CFLAGS) append_list_if(COMPILER_RT_HAS_FPIC_FLAG -fPIC CRT_CFLAGS) +append_list_if(COMPILER_RT_HAS_NO_PEDANTIC -Wno-pedantic CRT_CFLAGS) foreach(arch ${CRT_SUPPORTED_ARCH}) add_compiler_rt_runtime(clang_rt.crtbegin