diff options
author | Dave Lee <davelee.com@gmail.com> | 2020-09-21 10:22:51 -0700 |
---|---|---|
committer | Dave Lee <davelee.com@gmail.com> | 2020-09-21 10:23:17 -0700 |
commit | b36bdfe5ca0c2b863248f327b03d41516b38dc11 (patch) | |
tree | 678b317b8fd8f1499cc1e8b82f8af3b8587a7e2e /llvm | |
parent | 3b3b9ba1c7d89afe4909a42e2a795354bb79e062 (diff) | |
download | llvm-b36bdfe5ca0c2b863248f327b03d41516b38dc11.zip llvm-b36bdfe5ca0c2b863248f327b03d41516b38dc11.tar.gz llvm-b36bdfe5ca0c2b863248f327b03d41516b38dc11.tar.bz2 |
[cmake] Centralize LLVM_ENABLE_WARNINGS option
Configure default value of `LLVM_ENABLE_WARNINGS` in `HandleLLVMOptions.cmake`.
`LLVM_ENABLE_WARNINGS` is documented as ON by default, but `HandleLLVMOptions` assumes the default has been set somewhere else. If it has not been explicitly set, then `HandleLLVMOptions` implicitly uses OFF as a default.
This removes the various `option()` declarations in favor of a single declaration in `HandleLLVMOptions`. This will prevent the unwanted use of `-w` that is mentioned in a couple of the comments.
Reviewed By: DavidTruby, #libunwind, JDevlieghere, compnerd
Differential Revision: https://reviews.llvm.org/D87243
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/CMakeLists.txt | 1 | ||||
-rw-r--r-- | llvm/cmake/modules/HandleLLVMOptions.cmake | 2 | ||||
-rw-r--r-- | llvm/cmake/modules/LLVMConfig.cmake.in | 2 | ||||
-rw-r--r-- | llvm/runtimes/CMakeLists.txt | 4 |
4 files changed, 4 insertions, 5 deletions
diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt index 4ae7bc1..a63c1cc 100644 --- a/llvm/CMakeLists.txt +++ b/llvm/CMakeLists.txt @@ -399,7 +399,6 @@ set(LLVM_TARGETS_TO_BUILD list(REMOVE_DUPLICATES LLVM_TARGETS_TO_BUILD) option(LLVM_ENABLE_PIC "Build Position-Independent Code" ON) -option(LLVM_ENABLE_WARNINGS "Enable compiler warnings." ON) option(LLVM_ENABLE_MODULES "Compile with C++ modules enabled." OFF) if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") option(LLVM_ENABLE_MODULE_DEBUGGING "Compile with -gmodules." ON) diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake index 09bebaf..ddf2b6e 100644 --- a/llvm/cmake/modules/HandleLLVMOptions.cmake +++ b/llvm/cmake/modules/HandleLLVMOptions.cmake @@ -409,6 +409,8 @@ elseif(MINGW) # FIXME: Also cygwin? endif() endif() +option(LLVM_ENABLE_WARNINGS "Enable compiler warnings." ON) + if( MSVC ) include(ChooseMSVCCRT) diff --git a/llvm/cmake/modules/LLVMConfig.cmake.in b/llvm/cmake/modules/LLVMConfig.cmake.in index 4453020..d8a511b 100644 --- a/llvm/cmake/modules/LLVMConfig.cmake.in +++ b/llvm/cmake/modules/LLVMConfig.cmake.in @@ -36,6 +36,8 @@ set(TARGET_TRIPLE "@TARGET_TRIPLE@") set(LLVM_ABI_BREAKING_CHECKS @LLVM_ABI_BREAKING_CHECKS@) +set(LLVM_ENABLE_WARNINGS @LLVM_ENABLE_WARNINGS@) + set(LLVM_ENABLE_EXPENSIVE_CHECKS @LLVM_ENABLE_EXPENSIVE_CHECKS@) set(LLVM_ENABLE_ASSERTIONS @LLVM_ENABLE_ASSERTIONS@) diff --git a/llvm/runtimes/CMakeLists.txt b/llvm/runtimes/CMakeLists.txt index 04a13e4..3a9046d 100644 --- a/llvm/runtimes/CMakeLists.txt +++ b/llvm/runtimes/CMakeLists.txt @@ -105,10 +105,6 @@ if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}) # Avoid checking whether the compiler is working. set(LLVM_COMPILER_CHECKED ON) - # Enable warnings, otherwise -w gets added to the cflags by HandleLLVMOptions - # resulting in unjustified successes by check_cxx_compiler_flag. - set(LLVM_ENABLE_WARNINGS ON) - # Handle common options used by all runtimes. include(AddLLVM) include(HandleLLVMOptions) |