Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/llvmlite/
Date: Mon, 11 May 2020 09:04:11
Message-Id: 1589187835.9f0bcc23c30b0fc38fd15f57a9b7684873fd10c4.mgorny@gentoo
1 commit: 9f0bcc23c30b0fc38fd15f57a9b7684873fd10c4
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Mon May 11 06:34:20 2020 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Mon May 11 09:03:55 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9f0bcc23
7
8 dev-python/llvmlite: Bump to 0.32.1, permit LLVM 9
9
10 Thanks to Aisha Tammy for pointing out that this release actually works
11 with LLVM 9 even though upstream does not want to officially support
12 it.
13
14 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
15
16 dev-python/llvmlite/Manifest | 1 +
17 dev-python/llvmlite/llvmlite-0.32.1.ebuild | 66 ++++++++++++++++++++++++++++++
18 2 files changed, 67 insertions(+)
19
20 diff --git a/dev-python/llvmlite/Manifest b/dev-python/llvmlite/Manifest
21 index aee8d21a2e8..1164e21cbb2 100644
22 --- a/dev-python/llvmlite/Manifest
23 +++ b/dev-python/llvmlite/Manifest
24 @@ -1,2 +1,3 @@
25 DIST llvmlite-0.29.0.gh.tar.gz 196507 BLAKE2B d4870ca042d446857b7409c0c50c370458747ee744c24611e88da4bc8780c26125b2e8db3db7fe9d4f553f9aae5769b62effe1ac94cfaf234bab54d43c8086e9 SHA512 8735b46b1a3053b89306bf6e05c8c6c375d15371d33635f1d27e5533d7a78a85f773e04b7ed8d39ebab40a892c374839e1324665d81459cb797f760d6d2c81d1
26 DIST llvmlite-0.30.0.gh.tar.gz 199354 BLAKE2B 71ba1b0572d115a28d838a7fa5daca136fb793d41cdebca5834d2977813b4a02837e99d8b1b48d0fa965c5d3bdfe7783314ecbd2a7e7075b82247ea5fa4f90a4 SHA512 e3a64a3170efe1bffb6eeb8d6cfdc5a9bf8cc9e123da0b317b6b8dd93dacd3a54d5117c22eca43226915e7ff2793ab66cdee00c5e6ada442d9c2f7fed6e40763
27 +DIST llvmlite-0.32.1.gh.tar.gz 194191 BLAKE2B 4d35ce0f4903a17285b6f6296f0260787cc102804f1144c1b329815d41ca7471e1942aaecac26f06aa76804cc1b8a77130063de22376c78f30819554e459716f SHA512 00ce075deb8048350f4d4ac23e2e8a629b7c12aefefe3855e430aaf5e2df8170cf97a043001397a84101a7d0065671b30eb327837b24f86dd36b855309c19bfa
28
29 diff --git a/dev-python/llvmlite/llvmlite-0.32.1.ebuild b/dev-python/llvmlite/llvmlite-0.32.1.ebuild
30 new file mode 100644
31 index 00000000000..a733f9617dc
32 --- /dev/null
33 +++ b/dev-python/llvmlite/llvmlite-0.32.1.ebuild
34 @@ -0,0 +1,66 @@
35 +# Copyright 1999-2020 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=7
39 +
40 +PYTHON_COMPAT=( python3_{6,7,8} )
41 +
42 +inherit distutils-r1 llvm
43 +
44 +DESCRIPTION="Python wrapper around the llvm C++ library"
45 +HOMEPAGE="https://llvmlite.pydata.org/"
46 +SRC_URI="https://github.com/numba/llvmlite/archive/v${PV/_/}.tar.gz -> ${P/_/}.gh.tar.gz"
47 +S=${WORKDIR}/${P/_/}
48 +
49 +LICENSE="BSD"
50 +SLOT="0"
51 +KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
52 +IUSE="examples"
53 +
54 +LLVM_MAX_SLOT=9
55 +
56 +RDEPEND="
57 + sys-devel/llvm:${LLVM_MAX_SLOT}
58 + sys-libs/zlib:0=
59 +"
60 +DEPEND="${RDEPEND}"
61 +
62 +src_prepare() {
63 + # test_version hardcodes permitted versions
64 + # test_parse* relies on exact error message
65 + sed -e 's:test_version:_&:' \
66 + -e 's:test_parse_bitcode_error:_&:' \
67 + -i llvmlite/tests/test_binding.py || die
68 +
69 + distutils-r1_src_prepare
70 +}
71 +
72 +python_configure_all() {
73 + # upstream's build system is just horrible, and they ignored the PR
74 + # fixing it, so let's build the shared lib properly using implicit
75 + # make rules
76 +
77 + export LDLIBS=$(llvm-config --libs all)
78 + export CXXFLAGS="$(llvm-config --cxxflags) -fPIC ${CXXFLAGS}"
79 + export LDFLAGS="$(llvm-config --ldflags) ${LDFLAGS}"
80 +
81 + local files=( ffi/*.cpp )
82 + emake -f - <<EOF
83 +ffi/libllvmlite.so: ${files[*]/.cpp/.o}
84 + \$(CXX) -shared \$(CXXFLAGS) \$(LDFLAGS) -o \$@ \$^ \$(LDLIBS)
85 +EOF
86 +
87 + export LLVMLITE_SKIP_LLVM_VERSION_CHECK=1
88 +}
89 +
90 +python_test() {
91 + "${EPYTHON}" runtests.py -v || die "Tests failed under ${EPYTHON}"
92 +}
93 +
94 +python_install_all() {
95 + distutils-r1_python_install_all
96 + if use examples; then
97 + dodoc -r examples
98 + docompress -x /usr/share/doc/${PF}/examples
99 + fi
100 +}