Summary: | sys-devel/llvm-3.[34] - add a USE flag for installing clang-tools-extra | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Evan Teran <evan.teran> |
Component: | [OLD] Development | Assignee: | Bernard Cafarelli <voyageur> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | mgorny, p |
Priority: | Normal | Keywords: | EBUILD, PATCH |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | First attempt at a version of the LLVM-3.4 ebuild which builds the extra tools |
Description
Evan Teran
2014-01-07 18:38:53 UTC
Created attachment 367330 [details]
First attempt at a version of the LLVM-3.4 ebuild which builds the extra tools
After emerging this version of the ebuild while using the "extras" USE flag, I now have clang-modernize :-).
Comment on attachment 367330 [details] First attempt at a version of the LLVM-3.4 ebuild which builds the extra tools --- llvm-3.4.ebuild 2014-01-06 22:06:15.000000000 +0100 +++ - 2014-01-08 04:36:57.130203908 +0100 @@ -14,12 +14,13 @@ SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.gz clang? ( http://llvm.org/releases/${PV}/compiler-rt-${PV}.src.tar.gz http://llvm.org/releases/${PV}/clang-${PV}.src.tar.gz ) - !doc? ( http://dev.gentoo.org/~mgorny/dist/${P}-manpages.tar.bz2 )" + !doc? ( http://dev.gentoo.org/~mgorny/dist/${P}-manpages.tar.bz2 ) + extras? ( http://llvm.org/releases/${PV}/clang-tools-extra-${PV}.src.tar.gz ) " LICENSE="UoI-NCSA" SLOT="0/${PV}" -KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos" -IUSE="clang debug doc gold +libffi multitarget ncurses ocaml python +KEYWORDS="amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="clang debug doc gold +libffi multitarget ncurses ocaml python extras +static-analyzer test udis86 xml video_cards_radeon kernel_Darwin kernel_FreeBSD" @@ -150,6 +151,11 @@ || die "clang source directory move failed" mv "${WORKDIR}"/compiler-rt-${PV} "${S}"/projects/compiler-rt \ || die "compiler-rt source directory move failed" + + if use extras; then + mv "${WORKDIR}"/clang-tools-extra-${PV} "${S}"/tools/clang/tools/extra \ + || die "extras source directory move failed" + fi fi } @@ -286,13 +292,17 @@ llvm-size llvm-stress llvm-mcmarkup llvm-symbolizer obj2yaml yaml2obj lto bugpoint ) - + # those tools require 'lto' built first, so we need to delay # building them to a second run if [[ ${1} != -1 ]]; then tools+=( llvm-lto ) use gold && tools+=( gold ) + + # these tools need to be built during the second run + # as well, so we'll put them here + use clang && use extras && tools+=( clang/tools/extra ) fi fi Those tools like tiny to me. I think we can add them unconditionally to USE=clang. @Michał Górny: I agree. They are small and including them in the build does not seem to add any appreciable amount of compile time. I just figured that since these tools are an entirely optional part of the build process (and a separate tgz for that matter, that pulling them in with a USE flag (such as extras) was the cleanest route. Of course, I'm fine with whichever approach you decide is best :-) Ok, I'm working on it. As you can guess, rebuilding LLVM will take some time and my ccache is dirty already, so it will take a while or two :). Committed to -9999 and -3.4. I wasn't able to test 3.4 thoroughly yet but I'll do it tomorrow. I don't think there's a point in applying it to older versions anymore. *** Bug 462600 has been marked as a duplicate of this bug. *** |