[PATCH] CMake: add LLVM_INSTALL_DEV_FILES variable

Chandler Carruth chandlerc at google.com
Wed Aug 21 18:32:13 PDT 2013


On Wed, Aug 21, 2013 at 6:27 PM, Hans Wennborg <hans at chromium.org> wrote:

> On Wed, Aug 21, 2013 at 5:22 PM, Hans Wennborg <hans at chromium.org> wrote:
> > On Wed, Aug 21, 2013 at 3:55 PM, Chandler Carruth <chandlerc at google.com>
> wrote:
> >>
> >> On Wed, Aug 21, 2013 at 3:50 PM, Hans Wennborg <hans at chromium.org>
> wrote:
> >>>
> >>> $ diff --unified /tmp/library.txt /tmp/all.txt | grep -e "^+"
> >>> +++ /tmp/all.txt        2013-08-21 15:22:31.163831100 -0700
> >>> +./bin/clang-tblgen.exe
> >>> +./bin/llvm-lit
> >>> +./bin/llvm-tblgen.exe
> >>> +./share
> >>> +./share/llvm
> >>> +./share/llvm/cmake
> >>> +./share/llvm/cmake/AddLLVM.cmake
> >>> +./share/llvm/cmake/AddLLVMDefinitions.cmake
> >>> +./share/llvm/cmake/ChooseMSVCCRT.cmake
> >>> +./share/llvm/cmake/GetSVN.cmake
> >>> +./share/llvm/cmake/HandleLLVMOptions.cmake
> >>> +./share/llvm/cmake/LLVM-Config.cmake
> >>> +./share/llvm/cmake/LLVMConfig.cmake
> >>> +./share/llvm/cmake/LLVMConfigVersion.cmake
> >>> +./share/llvm/cmake/LLVMParseArguments.cmake
> >>> +./share/llvm/cmake/LLVMProcessSources.cmake
> >>> +./share/llvm/cmake/TableGen.cmake
> >>>
> >>>
> >>> Note that FileCheck, count, not, et al. are not installed, and they
> >>> never were (my "all" variant is equivalent to our current install
> >>> target). I should have noticed that earlier :/
> >>
> >>
> >> Interesting!
> >>
> >>>
> >>>
> >>> The cmake files are needed if someone builds e.g. Clang out-of-tree
> >>> against the LLVM install dir.
> >>>
> >>> I don't think it makes sense to install llvm-tblgen and clang-tblgen
> >>> at all. (Maybe it made sense before, when clang used llvm's tablegen).
> >>>
> >>> Given the above, would it make sense to merge #1 and #2?
> >>
> >>
> >> Quite possibly... Can we avoid installing llvm-lit as well? (probably
> ask
> >> Jordan?) If so, then SGTM.
> >
> > Yes, I believe so. After chatting with Michael, I don't think there
> > are builds that rely on llvm-lit being installed.
> >
> > I'd like to go ahead and start this off by removing llvm-lit and the
> > tablegens from the install (patch attached) to make sure nothing
> > breaks and no one gets upset. OK to commit?
>
> Actually, let's start with removing only llvm-lit.
>

LGTM, please commit.


> Turns out clang (and lld too) depends on llvm-tblgen for generating
> the option parsing tables. It even uses the existence of llvm-tblgen
> to detect a valid "build or install" directory for llvm :/
>

It would seem better to use llvm-config.


> I guess one could argue that the option parsing stuff, including
> generating the tables, is part of llvm's functionality as a library.
> The rests of what llvm-tblgen does seems pretty internal to llvm
> though.
>

I think it is all internal. The option parsing stuff is definitely
internal. I think that clang and lld should use llvm-tblgen (if they need
it) out of the llvm build tree just like they use lit out of that tree. I
think they can find it with llvm-config?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130821/acf18623/attachment.html>


More information about the llvm-commits mailing list