[llvm-dev] RFC: Updating to CMake 3.15.0

Saleem Abdulrasool via llvm-dev llvm-dev at lists.llvm.org
Wed Oct 30 19:52:44 PDT 2019


3.14 has features that are pretty important for LLDB at the moment.  The
python library selection is a nest of flags and options that only clutter
the configuration and make it difficult to easily build LLDB with python
support, especially so on Windows.

On Wed, Oct 30, 2019 at 10:38 AM Petr Hosek via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Some concrete examples we talked about:
>
> CMake 3.14 introduced CMAKE_TRY_COMPILE_TARGET_TYPE which allows using
> static libraries rather than executables when performing compiler checks
> which is important when building runtimes (you cannot link an executable
> when you don't have a fully functional toolchain). This allows eliminating
> modules like
> https://github.com/llvm/llvm-project/blob/master/compiler-rt/cmake/Modules/BuiltinTests.cmake
>
> CMake 3.12 introduced more powerful generator expressions that are
> evaluated only at generation time which means they aren't dependent on the
> order in which individual CMake files were executed. This allows cleaning
> some of the hacks we currently rely on in places like libc++, see for
> example https://reviews.llvm.org/D68880
>
> We can work around many of these issues, but these workarounds are
> expensive to maintain and error prone (especially with growing number of
> configurations).
>
> On Wed, Oct 30, 2019 at 10:18 AM Andrew Kelley via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> On 10/29/19 9:14 PM, Mehdi AMINI via llvm-dev wrote:
>> > On Tue, Oct 29, 2019 at 3:29 PM James Y Knight via llvm-dev
>> > <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>> >
>> >     CMake is extremely easy for developers to download and build locally
>> >     -- or just download binaries for if you like, too.
>> >
>> > Is there any script we can/would provide to help with this? Or is it so
>> > simple that two lines in the "getting started" instructions would be
>> enough?
>>
>> Such a script or instructions would be a more complicated build process
>> than before. A more complicated build process is anti-progress.
>>
>> What specific benefits of bleeding edge CMake is so important, that this
>> anti-progress is worth it?
>>
>> Andrew
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>


-- 
Saleem Abdulrasool
compnerd (at) compnerd (dot) org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20191030/66a16e25/attachment-0001.html>


More information about the llvm-dev mailing list