[llvm] r280013 - [CMake] Make LLVMConfig.cmake variable names match in-tree names

Chris Bieneman via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 31 11:09:17 PDT 2016


I’m less concerned with the one-time cost of making clients change an interface, and making those variables lists would break a lot of uses throughout LLVM projects. That said, conforming to CMake conventions is a good idea, so I’ll bring the plural names back and have duplicates for the singular names.

I’m also going to document that the singular names must not be lists, because that would break a lot of uses.

-Chris

> On Aug 31, 2016, at 7:31 AM, Brad King <brad.king at kitware.com> wrote:
> 
> On 08/29/2016 05:26 PM, Chris Bieneman via llvm-commits wrote:
>> New Revision: 280013
>> URL: http://llvm.org/viewvc/llvm-project?rev=280013&view=rev
> [snip]
>> This renames:
>> LLVM_INCLUDE_DIRS -> LLVM_INCLUDE_DIR
>> LLVM_LIBRARY_DIRS -> LLVM_LIBRARY_DIR
>> 
>> The versions ending in S are not used in-tree anywhere. This also
>> cleans up LLVM_LIBRARY_DIR being set to the same value with and
>> without the "S".
> 
> Please don't do this.  It breaks compatibility with existing consumers
> of LLVM that build with CMake.  Also it breaks the convention documented
> by CMake for public-facing package information variables:
> 
> https://cmake.org/cmake/help/v3.6/manual/cmake-developer.7.html#standard-variable-names
> 
> The public-facing variables should be plural-named because they may have
> zero, one, or more than one entries in a list.  Even if they happen to
> have only one now they may have more in the future.
> 
> Thanks,
> -Brad
> 



More information about the llvm-commits mailing list