sys-devel/lld: Bump to 6.0.1
[gentoo.git] / sys-devel / lld / lld-5.0.1.ebuild
1 # Copyright 1999-2017 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=6
5
6 : ${CMAKE_MAKEFILE_GENERATOR:=ninja}
7 # (needed due to CMAKE_BUILD_TYPE != Gentoo)
8 CMAKE_MIN_VERSION=3.7.0-r1
9 PYTHON_COMPAT=( python2_7 )
10
11 inherit cmake-utils llvm python-any-r1
12
13 MY_P=${P/_/}.src
14 LLVM_P=llvm-${PV/_/}.src
15
16 DESCRIPTION="The LLVM linker (link editor)"
17 HOMEPAGE="https://llvm.org/"
18 SRC_URI="https://releases.llvm.org/${PV/_//}/${MY_P}.tar.xz
19         test? ( https://releases.llvm.org/${PV/_//}/${LLVM_P}.tar.xz )"
20
21 LICENSE="UoI-NCSA"
22 SLOT="0"
23 KEYWORDS="~amd64 ~arm64 ~x86"
24 IUSE="test"
25
26 RDEPEND="~sys-devel/llvm-${PV}"
27 DEPEND="${RDEPEND}
28         test? ( $(python_gen_any_dep "~dev-python/lit-${PV}[\${PYTHON_USEDEP}]") )"
29
30 S=${WORKDIR}/${MY_P}
31
32 # least intrusive of all
33 CMAKE_BUILD_TYPE=RelWithDebInfo
34
35 python_check_deps() {
36         has_version "dev-python/lit[${PYTHON_USEDEP}]"
37 }
38
39 pkg_setup() {
40         LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup
41         use test && python-any-r1_pkg_setup
42 }
43
44 src_unpack() {
45         einfo "Unpacking ${MY_P}.tar.xz ..."
46         tar -xf "${DISTDIR}/${MY_P}.tar.xz" || die
47
48         if use test; then
49                 einfo "Unpacking parts of ${LLVM_P}.tar.xz ..."
50                 tar -xf "${DISTDIR}/${LLVM_P}.tar.xz" \
51                         "${LLVM_P}"/utils/{lit,unittest} || die
52                 mv "${LLVM_P}" llvm || die
53         fi
54 }
55
56 src_configure() {
57         local mycmakeargs=(
58                 -DBUILD_SHARED_LIBS=ON
59
60                 -DLLVM_INCLUDE_TESTS=$(usex test)
61         )
62         use test && mycmakeargs+=(
63                 -DLLVM_BUILD_TESTS=ON
64                 -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm"
65                 -DLIT_COMMAND="${EPREFIX}/usr/bin/lit"
66         )
67
68         cmake-utils_src_configure
69 }
70
71 src_test() {
72         cmake-utils_src_make check-lld
73 }