From: David Zarzycki Date: Tue, 10 Sep 2019 14:19:52 +0000 (+0000) Subject: [CMake] Don't pass all LLVM_COMPILE_FLAGS to the C compiler X-Git-Tag: llvmorg-11-init~9561 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fef1cb1c971e3d38386462fe9640b9ba35bb448f;p=platform%2Fupstream%2Fllvm.git [CMake] Don't pass all LLVM_COMPILE_FLAGS to the C compiler GCC (unlike clang!) warns about C++ flags when compiling C. https://reviews.llvm.org/D67171 llvm-svn: 371521 --- diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake index 832f261..b5f6124 100644 --- a/llvm/cmake/modules/AddLLVM.cmake +++ b/llvm/cmake/modules/AddLLVM.cmake @@ -8,6 +8,8 @@ function(llvm_update_compile_flags name) set(update_src_props ON) endif() + list(APPEND LLVM_COMPILE_CFLAGS " ${LLVM_COMPILE_FLAGS}") + # LLVM_REQUIRES_EH is an internal flag that individual targets can use to # force EH if(LLVM_REQUIRES_EH OR LLVM_ENABLE_EH) @@ -54,14 +56,19 @@ function(llvm_update_compile_flags name) # - LLVM_COMPILE_FLAGS is list. # - PROPERTY COMPILE_FLAGS is string. string(REPLACE ";" " " target_compile_flags " ${LLVM_COMPILE_FLAGS}") + string(REPLACE ";" " " target_compile_cflags " ${LLVM_COMPILE_CFLAGS}") if(update_src_props) foreach(fn ${sources}) get_filename_component(suf ${fn} EXT) - if("${suf}" STREQUAL ".cpp" OR "${suf}" STREQUAL ".c") + if("${suf}" STREQUAL ".cpp") set_property(SOURCE ${fn} APPEND_STRING PROPERTY COMPILE_FLAGS "${target_compile_flags}") endif() + if("${suf}" STREQUAL ".c") + set_property(SOURCE ${fn} APPEND_STRING PROPERTY + COMPILE_FLAGS "${target_compile_cflags}") + endif() endforeach() else() # Update target props, since all sources are C++.