[LLVMdev] [RFC] Progress report on CMake build system's ability to replace autoconf

Chris Bieneman beanz at apple.com
Mon Feb 16 11:32:20 PST 2015


Ed,

Just to be clarify the timeline for this is somewhere between 6 months and never. Don’t look at this as impending, but also don’t ignore it.

We have a sizable list of outstanding issues, and some of them are quite substantial (like compiler-rt). Without a concerted effort from the community this is unlikely to happen.

-Chris

> On Feb 16, 2015, at 1:03 AM, Zachary Turner <zturner at google.com> wrote:
> 
> +Ed Maste, who maintains FreeBSD's LLDB and probably does not check this very often.  I know (or at least am pretty sure) that they are using autoconf over there, so he may be aware of other issues.
> 
> On Tue Feb 03 2015 at 11:19:22 AM Chris Bieneman <beanz at apple.com <mailto:beanz at apple.com>> wrote:
> So, we’ve had this conversation a few times, and I wanted to coalate a status report for all the interested parties.
> 
> Here's the outstanding work and my (not necissarily correct) view of the status and importance of each one:
> 
> * Bug 12157 - llvmconfig.cmake.in <http://llvmconfig.cmake.in/> make cmake installations not relocatable
>   - There are patches on the bug that we should review, test, and land
> 
> * Bug 14109 - CMake build for compiler-rt should use just-built clang
>   - Still waiting for patches, I don't think this is a blocker
> 
> * Bug 15493 - No option to build shared libLLVM-version.so in CMake
>   - Patches out for review http://reviews.llvm.org/D6157 <http://reviews.llvm.org/D6157>
> 
> * Bug 18496 - [cmake] .S assembly files not compiled by cmake in libclang_rt.ARCH
>   - Unclear if this is still a problem
> 
> * Bug 18722 - Option to use CMake with libc++ to compile clang
>   - I think this is done by passing -DLLVM_ENABLE_LIBCXX=On
> 
> * Bug 19462 - Use the INSTALL(EXPORT ...) to export CMake definitions
>   - I believe this is all done. I've never managed to get the import part of this to work, but the export files are generated
> 
> * Bug 19875 - libraries and executables need different rpaths
>   - Still outstanding, I don't think this is a blocker.
> 
> * Bug 21560 - Add support to cmake for using installed versions of LLVM and Clang
>   - Takumi commented that this works.
> 
> * Bug 21561 - Update release scripts to use CMake
>   - Still outstanding and blocking removal of autoconf
> 
> * Bug 21562 - Add a CMake equivalent for make/platform/clang_darwin.mk <http://clang_darwin.mk/> in compiler_rt
>   - From discussions on llvm-dev and IRC the proper fix for this is a cross-compiling approach for compiler_rt builds, and this is a blocker.
> 
> * Bug 21568 - Cannot add rpath
>   - It looks like this is not a blocker because it can be done, but is unwieldy. I think this may be made a lot easier with help from the CMake developers.
> 
> * Bug 21569 - Can't `make install prefix=/tmp/llvm' with CMake.
>   - I think this is a fundamental difference between CMake and autoconf, and people just need to get used to the difference
> 
> * Bug 21570 - Cannot set default configuration options for CMake
>   - I think you can do this in CMake by creating a toolchain file and passing it in with CMAKE_TOOLCHAIN_FILE
> 
> 
> Other issues not tracked by bugs:
> 
> * FreeBSD seemed to have problems with CMake identifying itself as amd64 causing x86_64 tests to fail
> * Migrating buildbots
> * CMake builds for libc++?
> 
> 
> Thoughts? Anything missing?
> 
> -Chris
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu>         http://llvm.cs.uiuc.edu <http://llvm.cs.uiuc.edu/>
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev <http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150216/92cceeaa/attachment.html>


More information about the llvm-dev mailing list