X-Git-Url: http://plrg.eecs.uci.edu/git/?p=oota-llvm.git;a=blobdiff_plain;f=cmake%2Fmodules%2FAddLLVM.cmake;h=301aeea80f5f95e64cede1f5f97f73ca90fe2b6b;hp=19a68387fee33f7f12405fe62d49e450d2d35f5c;hb=8062fa2d539aa471b72a8ac664bd75588f8d067d;hpb=3bbf29b84f3e8aea0b3a5d879093b49be13e8af1 diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake index 19a68387fee..301aeea80f5 100644 --- a/cmake/modules/AddLLVM.cmake +++ b/cmake/modules/AddLLVM.cmake @@ -12,22 +12,27 @@ function(llvm_update_compile_flags name) set(LLVM_REQUIRES_RTTI ON) else() if(LLVM_COMPILER_IS_GCC_COMPATIBLE) - set(target_compile_flags "${target_compile_flags} -fno-exceptions") + list(APPEND LLVM_COMPILE_FLAGS "-fno-exceptions") elseif(MSVC) list(APPEND LLVM_COMPILE_DEFINITIONS _HAS_EXCEPTIONS=0) - set(target_compile_flags "${target_compile_flags} /EHs-c-") + list(APPEND LLVM_COMPILE_FLAGS "/EHs-c-") endif() endif() if(NOT LLVM_REQUIRES_RTTI) list(APPEND LLVM_COMPILE_DEFINITIONS GTEST_HAS_RTTI=0) if (LLVM_COMPILER_IS_GCC_COMPATIBLE) - set(target_compile_flags "${target_compile_flags} -fno-rtti") + list(APPEND LLVM_COMPILE_FLAGS "-fno-rtti") elseif (MSVC) - set(target_compile_flags "${target_compile_flags} /GR-") + list(APPEND LLVM_COMPILE_FLAGS "/GR-") endif () endif() + # Assume that; + # - LLVM_COMPILE_FLAGS is list. + # - PROPERTY COMPILE_FLAGS is string. + string(REPLACE ";" " " target_compile_flags "${LLVM_COMPILE_FLAGS}") + if(update_src_props) foreach(fn ${sources}) get_filename_component(suf ${fn} EXT) @@ -399,7 +404,7 @@ function(add_unittest test_suite test_name) endif () if (SUPPORTS_NO_VARIADIC_MACROS_FLAG) - set(LLVM_COMPILE_FLAGS "-Wno-variadic-macros") + list(APPEND LLVM_COMPILE_FLAGS "-Wno-variadic-macros") endif () set(LLVM_REQUIRES_RTTI OFF)