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: sys-devel/llvm/
Date: Thu, 30 Jul 2020 22:11:45
Message-Id: 1596147008.51c1c4a705f13cb1d3ca8eeeb9db0756c4e5d499.mgorny@gentoo
1 commit: 51c1c4a705f13cb1d3ca8eeeb9db0756c4e5d499
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Wed Jul 29 11:48:46 2020 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Thu Jul 30 22:10:08 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=51c1c4a7
7
8 sys-devel/llvm: Remove 8*
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 sys-devel/llvm/Manifest | 2 -
13 sys-devel/llvm/llvm-8.0.1.ebuild | 292 ---------------------------------------
14 2 files changed, 294 deletions(-)
15
16 diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
17 index a4f3b2fb7f7..d100aed5034 100644
18 --- a/sys-devel/llvm/Manifest
19 +++ b/sys-devel/llvm/Manifest
20 @@ -1,6 +1,4 @@
21 DIST llvm-10.0.0-manpages.tar.bz2 177084 BLAKE2B 16b38e60fce4d67ac602b317ea7089c095d46b9426ba9940041e65d7ab493f85dba2e94a4aeba7b7c52042f23825efcfcd32a57d306aaf05b4307061a5a8a368 SHA512 eac57ad218ff4c2b5a74e453a29192ee6e911152b668d8a9420b59529d5cae8aa241f2485b4a7ea304acbecc7ecb27391a77552080726432c2b7b59b95fc0bd7
22 -DIST llvm-8.0.1-manpages.tar.bz2 140915 BLAKE2B 13ac9e172728d643dac1d12ac06909b6db3dd9a1a380a92a07867e3cb835f94b265da5d75c4712b5409405a65795d2cb6b32da4098e38cbb95d7023b56bcbbc1 SHA512 23994a2374659fbbf8d9b5160f4d77e9be7c4c9fc14963e8186bbede78b0ee9257f6b6a9c484bc75d72443d65bb24e598841e64af500336283de0f454d6a2073
23 -DIST llvm-8.0.1.src.tar.xz 30477608 BLAKE2B 4319c837b36111401e3b0f9659b8d875c89463bcc7816df1aefe1e3ff989860bbaa92504718f8e15416cfd9f3491c13777cd5cb661877b237b342b0e515b93f5 SHA512 82e120be5cabdfd5111aebbea68a663fe229c8861d73802d6ab09a3bf48f60de333e07e61f8fb61beaa14ac2bea24fcd74fa6f761acaf62469f536b79fcb1e16
24 DIST llvm-9.0.0-manpages.tar.bz2 158546 BLAKE2B eed6235698a0b5993affe305f7fd22cd4cf444adf931275a1685f2049a5f17cf2933907577d9ce142348a3c579769b0436aa2b5a9a953958504125a8c3e83b7d SHA512 64c8d18061eb2870b379a1df485be0b61eac07cb10b3f97347b54b2ee326faa63437ca04466776be282e120dd3f6147e14fffdd38ca370db85748fe5eb54d764
25 DIST llvmorg-10.0.0.tar.gz 120804856 BLAKE2B 6b0254f5b913398cdcf2b2ec1ff219888706d2b79d5296590934714e42ac79f6a6547941ac2b1d2c4e6313dd18b6c7068e748aa6ac033e49fccbf5d355aa8191 SHA512 baa182d62fef1851836013ae8a1a00861ea89769778d67fb97b407a9de664e6c85da2af9c5b3f75d2bf34ff6b00004e531ca7e4b3115a26c0e61c575cf2303a0
26 DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
27
28 diff --git a/sys-devel/llvm/llvm-8.0.1.ebuild b/sys-devel/llvm/llvm-8.0.1.ebuild
29 deleted file mode 100644
30 index c466aae7139..00000000000
31 --- a/sys-devel/llvm/llvm-8.0.1.ebuild
32 +++ /dev/null
33 @@ -1,292 +0,0 @@
34 -# Copyright 1999-2020 Gentoo Authors
35 -# Distributed under the terms of the GNU General Public License v2
36 -
37 -EAPI=6
38 -
39 -: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
40 -# (needed due to CMAKE_BUILD_TYPE != Gentoo)
41 -CMAKE_MIN_VERSION=3.7.0-r1
42 -PYTHON_COMPAT=( python2_7 )
43 -
44 -inherit cmake-utils eapi7-ver flag-o-matic multilib-minimal \
45 - multiprocessing pax-utils python-any-r1 toolchain-funcs
46 -
47 -MY_P=${P}.src
48 -DESCRIPTION="Low Level Virtual Machine"
49 -HOMEPAGE="https://llvm.org/"
50 -SRC_URI="https://github.com/llvm/llvm-project/releases/download/llvmorg-${PV}/${MY_P}.tar.xz
51 - !doc? ( https://dev.gentoo.org/~mgorny/dist/llvm/${P}-manpages.tar.bz2 )"
52 -
53 -# Keep in sync with CMakeLists.txt
54 -ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
55 - NVPTX PowerPC Sparc SystemZ WebAssembly X86 XCore )
56 -ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
57 -
58 -# Additional licenses:
59 -# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
60 -# 2. ARM backend: LLVM Software Grant by ARM.
61 -# 3. MD5 code: public-domain.
62 -# 4. Tests (not installed):
63 -# a. gtest: BSD.
64 -# b. YAML tests: MIT.
65 -
66 -LICENSE="UoI-NCSA rc BSD public-domain
67 - llvm_targets_ARM? ( LLVM-Grant )"
68 -SLOT="$(ver_cut 1)"
69 -KEYWORDS="amd64 arm arm64 ppc64 x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
70 -IUSE="debug doc exegesis gold libedit +libffi ncurses test xar xml
71 - kernel_Darwin ${ALL_LLVM_TARGETS[*]}"
72 -RESTRICT="!test? ( test )"
73 -
74 -RDEPEND="
75 - sys-libs/zlib:0=[${MULTILIB_USEDEP}]
76 - exegesis? ( dev-libs/libpfm:= )
77 - gold? (
78 - || (
79 - >=sys-devel/binutils-2.31.1-r4:*[plugins]
80 - <sys-devel/binutils-2.31.1-r4:*[cxx]
81 - )
82 - )
83 - libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
84 - libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
85 - ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
86 - xar? ( app-arch/xar )
87 - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )"
88 -DEPEND="${RDEPEND}
89 - dev-lang/perl
90 - kernel_Darwin? (
91 - <sys-libs/libcxx-$(ver_cut 1-3).9999
92 - >=sys-devel/binutils-apple-5.1
93 - )
94 - doc? ( $(python_gen_any_dep '
95 - dev-python/recommonmark[${PYTHON_USEDEP}]
96 - dev-python/sphinx[${PYTHON_USEDEP}]
97 - ') )
98 - !doc? ( ${PYTHON_DEPS} )
99 - gold? ( sys-libs/binutils-libs )
100 - libffi? ( virtual/pkgconfig )
101 - ${PYTHON_DEPS}"
102 -# There are no file collisions between these versions but having :0
103 -# installed means llvm-config there will take precedence.
104 -RDEPEND="${RDEPEND}
105 - !sys-devel/llvm:0"
106 -PDEPEND="sys-devel/llvm-common
107 - gold? ( >=sys-devel/llvmgold-${SLOT} )"
108 -
109 -REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
110 -
111 -S=${WORKDIR}/${MY_P}
112 -
113 -# least intrusive of all
114 -CMAKE_BUILD_TYPE=RelWithDebInfo
115 -
116 -python_check_deps() {
117 - use doc || return 0
118 -
119 - has_version "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
120 - has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
121 -}
122 -
123 -src_prepare() {
124 - # Fix llvm-config for shared linking and sane flags
125 - # https://bugs.gentoo.org/show_bug.cgi?id=565358
126 - eapply "${FILESDIR}"/9999/0007-llvm-config-Clean-up-exported-values-update-for-shar.patch
127 -
128 - # disable use of SDK on OSX, bug #568758
129 - sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
130 -
131 - # User patches + QA
132 - cmake-utils_src_prepare
133 -}
134 -
135 -# Is LLVM being linked against libc++?
136 -is_libcxx_linked() {
137 - local code='#include <ciso646>
138 -#if defined(_LIBCPP_VERSION)
139 - HAVE_LIBCXX
140 -#endif
141 -'
142 - local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1
143 -
144 - [[ ${out} == *HAVE_LIBCXX* ]]
145 -}
146 -
147 -multilib_src_configure() {
148 - local ffi_cflags ffi_ldflags
149 - if use libffi; then
150 - ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
151 - ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
152 - fi
153 -
154 - local libdir=$(get_libdir)
155 - local mycmakeargs=(
156 - # disable appending VCS revision to the version to improve
157 - # direct cache hit ratio
158 - -DLLVM_APPEND_VC_REV=OFF
159 - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
160 - -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
161 -
162 - -DBUILD_SHARED_LIBS=ON
163 - -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
164 - -DLLVM_BUILD_TESTS=$(usex test)
165 -
166 - -DLLVM_ENABLE_FFI=$(usex libffi)
167 - -DLLVM_ENABLE_LIBEDIT=$(usex libedit)
168 - -DLLVM_ENABLE_TERMINFO=$(usex ncurses)
169 - -DLLVM_ENABLE_LIBXML2=$(usex xml)
170 - -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
171 - -DLLVM_ENABLE_LIBPFM=$(usex exegesis)
172 - -DLLVM_ENABLE_EH=ON
173 - -DLLVM_ENABLE_RTTI=ON
174 -
175 - -DWITH_POLLY=OFF # TODO
176 -
177 - -DLLVM_HOST_TRIPLE="${CHOST}"
178 -
179 - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
180 - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
181 - # used only for llvm-objdump tool
182 - -DHAVE_LIBXAR=$(multilib_native_usex xar 1 0)
183 -
184 - # disable OCaml bindings (now in dev-ml/llvm-ocaml)
185 - -DOCAMLFIND=NO
186 - )
187 -
188 - if is_libcxx_linked; then
189 - # Smart hack: alter version suffix -> SOVERSION when linking
190 - # against libc++. This way we won't end up mixing LLVM libc++
191 - # libraries with libstdc++ clang, and the other way around.
192 - mycmakeargs+=(
193 - -DLLVM_VERSION_SUFFIX="libcxx"
194 - )
195 - fi
196 -
197 -# Note: go bindings have no CMake rules at the moment
198 -# but let's kill the check in case they are introduced
199 -# if ! multilib_is_native_abi || ! use go; then
200 - mycmakeargs+=(
201 - -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
202 - )
203 -# fi
204 -
205 - use test && mycmakeargs+=(
206 - -DLLVM_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
207 - )
208 -
209 - if multilib_is_native_abi; then
210 - mycmakeargs+=(
211 - -DLLVM_BUILD_DOCS=$(usex doc)
212 - -DLLVM_ENABLE_OCAMLDOC=OFF
213 - -DLLVM_ENABLE_SPHINX=$(usex doc)
214 - -DLLVM_ENABLE_DOXYGEN=OFF
215 - -DLLVM_INSTALL_UTILS=ON
216 - )
217 - use doc && mycmakeargs+=(
218 - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
219 - -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
220 - -DSPHINX_WARNINGS_AS_ERRORS=OFF
221 - )
222 - use gold && mycmakeargs+=(
223 - -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
224 - )
225 - fi
226 -
227 - if tc-is-cross-compiler; then
228 - local tblgen="${EPREFIX}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen"
229 - [[ -x "${tblgen}" ]] \
230 - || die "${tblgen} not found or usable"
231 - mycmakeargs+=(
232 - -DCMAKE_CROSSCOMPILING=ON
233 - -DLLVM_TABLEGEN="${tblgen}"
234 - )
235 - fi
236 -
237 - # workaround BMI bug in gcc-7 (fixed in 7.4)
238 - # https://bugs.gentoo.org/649880
239 - # apply only to x86, https://bugs.gentoo.org/650506
240 - if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
241 - [[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
242 - then
243 - local CFLAGS="${CFLAGS} -mno-bmi"
244 - local CXXFLAGS="${CXXFLAGS} -mno-bmi"
245 - fi
246 -
247 - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
248 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
249 - cmake-utils_src_configure
250 -}
251 -
252 -multilib_src_compile() {
253 - cmake-utils_src_compile
254 -
255 - pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
256 - pax-mark m "${BUILD_DIR}"/bin/lli
257 - pax-mark m "${BUILD_DIR}"/bin/lli-child-target
258 -
259 - if use test; then
260 - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
261 - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
262 - pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
263 - fi
264 -}
265 -
266 -multilib_src_test() {
267 - # respect TMPDIR!
268 - local -x LIT_PRESERVES_TMP=1
269 - cmake-utils_src_make check
270 -}
271 -
272 -src_install() {
273 - local MULTILIB_CHOST_TOOLS=(
274 - /usr/lib/llvm/${SLOT}/bin/llvm-config
275 - )
276 -
277 - local MULTILIB_WRAPPED_HEADERS=(
278 - /usr/include/llvm/Config/llvm-config.h
279 - )
280 -
281 - local LLVM_LDPATHS=()
282 - multilib-minimal_src_install
283 -
284 - # move wrapped headers back
285 - mv "${ED%/}"/usr/include "${ED%/}"/usr/lib/llvm/${SLOT}/include || die
286 -}
287 -
288 -multilib_src_install() {
289 - cmake-utils_src_install
290 -
291 - # move headers to /usr/include for wrapping
292 - rm -rf "${ED%/}"/usr/include || die
293 - mv "${ED%/}"/usr/lib/llvm/${SLOT}/include "${ED%/}"/usr/include || die
294 -
295 - LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)" )
296 -}
297 -
298 -multilib_src_install_all() {
299 - local revord=$(( 9999 - ${SLOT} ))
300 - newenvd - "60llvm-${revord}" <<-_EOF_
301 - PATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin"
302 - # we need to duplicate it in ROOTPATH for Portage to respect...
303 - ROOTPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin"
304 - MANPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
305 - LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
306 - _EOF_
307 -
308 - # install pre-generated manpages
309 - if ! use doc; then
310 - # (doman does not support custom paths)
311 - insinto "/usr/lib/llvm/${SLOT}/share/man/man1"
312 - doins "${WORKDIR}/${P}-manpages/llvm"/*.1
313 - fi
314 -
315 - docompress "/usr/lib/llvm/${SLOT}/share/man"
316 -}
317 -
318 -pkg_postinst() {
319 - elog "You can find additional opt-viewer utility scripts in:"
320 - elog " ${EROOT%/}/usr/lib/llvm/${SLOT}/share/opt-viewer"
321 - elog "To use these scripts, you will need Python 2.7 along with the following"
322 - elog "packages:"
323 - elog " dev-python/pygments (for opt-viewer)"
324 - elog " dev-python/pyyaml (for all of them)"
325 -}