David Chisnall
2013-Jan-22 12:12 UTC
[LLVMdev] Using 'llvm-build' for out-of-tree projects
On 22 Jan 2013, at 12:04, Duncan Sands wrote:> for an out-of-tree build you can use llvm-config to get include paths and so on. > I don't think there is any point bothering with llvm-build for this case.CMake works nicely for out-of-tree projects. I have an optimiser plugin that builds this way. I'm not sure if it's fixed now, but the autoconf builds used to not install the CMake plugins, which was a problem if packagers decided to use autoconf. David P.S. Weren't we planning on removing the Make-based build system in the next few months a year ago?
Hi David, On 22/01/13 13:12, David Chisnall wrote:> On 22 Jan 2013, at 12:04, Duncan Sands wrote: > >> for an out-of-tree build you can use llvm-config to get include paths and so on. >> I don't think there is any point bothering with llvm-build for this case. > > CMake works nicely for out-of-tree projects. I have an optimiser plugin that builds this way. I'm not sure if it's fixed now, but the autoconf builds used to not install the CMake plugins, which was a problem if packagers decided to use autoconf.can you please post your project's cmake stuff somewhere, it could be helpful for cmake weenies like me.> David > > P.S. Weren't we planning on removing the Make-based build system in the next few months a year ago?Yup, and I opened a bunch of bug reports for missing cmake features at that time (eg: expensive checks) but I don't think anything happened. Ciao, Duncan.
Duncan Sands <baldrick at free.fr> writes:>> CMake works nicely for out-of-tree projects. I have an optimiser >> plugin that builds this way. I'm not sure if it's fixed now, but the >> autoconf builds used to not install the CMake plugins, which was a >> problem if packagers decided to use autoconf. > > can you please post your project's cmake stuff somewhere, it could be helpful > for cmake weenies like me.This explains how to develop a pass out-of-source. Is that enough? [snip]
Jean-Daniel Dupas
2013-Jan-22 15:58 UTC
[LLVMdev] Using 'llvm-build' for out-of-tree projects
Le 22 janv. 2013 à 13:12, David Chisnall <david.chisnall at cl.cam.ac.uk> a écrit :> On 22 Jan 2013, at 12:04, Duncan Sands wrote: > >> for an out-of-tree build you can use llvm-config to get include paths and so on. >> I don't think there is any point bothering with llvm-build for this case. > > CMake works nicely for out-of-tree projects. I have an optimiser plugin that builds this way. I'm not sure if it's fixed now, but the autoconf builds used to not install the CMake plugins, which was a problem if packagers decided to use autoconf. > > David > > P.S. Weren't we planning on removing the Make-based build system in the next few months a year ago?It always lacks some important features, like building compiler-rt with just-built clang: http://llvm.org/bugs/show_bug.cgi?id=14109 -- Jean-Daniel
Jean-Daniel Dupas <devlists at shadowlab.org> writes:>> P.S. Weren't we planning on removing the Make-based build system in >> the next few months a year ago? > > It always lacks some important features, like building compiler-rt > with just-built clang: http://llvm.org/bugs/show_bug.cgi?id=14109The configure&make build works on more homogeneous environments than CMake. Implementing the requirement you mention seems easy enough while using toolchains where clang/clang++ works as a drop-in replacement for the platform compiler (i.e. gcc/g++ on Linux). For the general case, it looks quite tricky. The feature can be implemented for the easy case (POSIX&gcc, which, most likely, is what everybody uses) and reject it for the rest. BTW, is compiler-rt integrated in the CMake LLVM/Clang build process, or is it a separate step?
Seemingly Similar Threads
- [LLVMdev] Using 'llvm-build' for out-of-tree projects
- [LLVMdev] Using 'llvm-build' for out-of-tree projects
- [LLVMdev] Opportunities for meeting more frequently than once a year?
- [LLVMdev] Opportunities for meeting more frequently than once a year?
- [LLVMdev] A new mechanism to compiler kernel modules using llvm: Defer type evaluation in clang?