[llvm] r295090 - allow migrating away from cmake option for LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING

Bob Wilson via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 14 11:06:43 PST 2017


Author: bwilson
Date: Tue Feb 14 13:06:43 2017
New Revision: 295090

URL: http://llvm.org/viewvc/llvm-project?rev=295090&view=rev
Log:
allow migrating away from cmake option for LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING

In r288754, Mehdi added a cmake option to disable enforcement of the ABI
breaking checks in the "abi-breaking.h" header. We used that when building
Swift and it works, but I think it will be better to control this with a
preprocessor macro instead of a cmake option. That will let us opt out of
the enforcement more selectively.

This change allows skipping the cmake setting if the existing preprocessor
macro is already defined. My intention here is to make this change and get
Swift to use it, and then after a few weeks, we can remove the cmake option.
I want to stage it like that to be less disruptive. I'm not aware of anyone
else using that cmake option.

Mehdi had some initial concern about the impact of using a preprocessor
macro when building with modules enabled. I don't think that will be a
problem if we set the macro on the command line with a -D option in those
contexts where we need to disable the enforcement of the checks.

https://reviews.llvm.org/D29919

Modified:
    llvm/trunk/include/llvm/Config/abi-breaking.h.cmake

Modified: llvm/trunk/include/llvm/Config/abi-breaking.h.cmake
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/abi-breaking.h.cmake?rev=295090&r1=295089&r2=295090&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Config/abi-breaking.h.cmake (original)
+++ llvm/trunk/include/llvm/Config/abi-breaking.h.cmake Tue Feb 14 13:06:43 2017
@@ -17,7 +17,9 @@
 
 /* Define to disable the link-time checking of mismatch for
    LLVM_ENABLE_ABI_BREAKING_CHECKS */
+#ifndef LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING
 #cmakedefine01 LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING
+#endif
 #if !LLVM_DISABLE_ABI_BREAKING_CHECKS_ENFORCING
 
 // ABI_BREAKING_CHECKS protection: provides link-time failure when clients build




More information about the llvm-commits mailing list