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: Wed, 02 Feb 2022 21:16:45
Message-Id: 1643836586.6a5faab6829aa8a6d7c4d0d1d3951c7c2afb92f4.mgorny@gentoo
1 commit: 6a5faab6829aa8a6d7c4d0d1d3951c7c2afb92f4
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Wed Feb 2 16:44:55 2022 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Wed Feb 2 21:16:26 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a5faab6
7
8 sys-devel/llvm: Remove 13.0.1_rc3
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 sys-devel/llvm/Manifest | 2 -
13 sys-devel/llvm/llvm-13.0.1_rc3.ebuild | 510 ----------------------------------
14 2 files changed, 512 deletions(-)
15
16 diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
17 index 7268ccaaf0e8..bd04d41eb0d3 100644
18 --- a/sys-devel/llvm/Manifest
19 +++ b/sys-devel/llvm/Manifest
20 @@ -4,11 +4,9 @@ DIST llvm-13.0.0-manpages.tar.bz2 202595 BLAKE2B 1a3a389e8c544675f7ba2692f92bb82
21 DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b
22 DIST llvm-gentoo-patchset-12.0.1.tar.xz 5280 BLAKE2B 963d005bc7b636570be90eb841ac5bcaeb927538cc7de27683167111a17d6496677c7517de2ecfaf14b5d8ac22bad357be490b8a2ed9aba502fd5f447ecc99e9 SHA512 fc7c38e671555751650299c3a8bee44d5c7f26e11b68d5538c507fb7fe9ff2d349bdcd43bce90a448a747f082d523b3849d6bcda5e3ae2e998edcb926d6aa249
23 DIST llvm-gentoo-patchset-13.0.0.tar.xz 5012 BLAKE2B 6760c78c086aaf6629143fd920b0a2c68cad9278628fbea8164dfeb59db95984a5b5d6b3505b510c697e8c95bf8d2be782c6b73c01622d52f2da9b07ecff39e0 SHA512 7764d49343b795b6bebae64f646ba27e3e6cc2a20b8a1aee645ce0d8474633c34acfbb73c08546fee415755dd4ea5a98c1d84db5e394cf5f4fc802eb61148ab6
24 -DIST llvm-gentoo-patchset-13.0.1-rc3.tar.xz 4808 BLAKE2B d8ed3ae424914437413e2e8c029880072e93d79ca79b842ad59451df46594c9b0d73ee5d49d3b65c4c7a40c86b2e0d43501ef106aea7c481f22425a5245a3411 SHA512 10430a720b120a340a681fa435a7f050741c75270607e3f5214bf829313d274c11f019f1ac072857dc5d7f868e6eb013932d1c94446e8cb2e151ac818a081914
25 DIST llvm-gentoo-patchset-13.0.1.tar.xz 6288 BLAKE2B 899222b962486e924e4f8a2b574d285531a3f87af9385ff68c81db92aa224a0cde6d4ee049b5405056bedb4b232b50e1d5840024071a4a215f6311853304c92d SHA512 b2805337f1deca626768a44c5e7ac9ed16e0c31bead1647d44a493a8123c1b8e8f1c8ceee3536bcc6fa87fdd3fcec408229f701adf30eff07e7ef9889b847b01
26 DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc
27 DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
28 DIST llvmorg-12.0.1.tar.gz 134259748 BLAKE2B f41de787bc73ff2edfda1b22cc8602be6f65f37dd9e4c8888533cfa8c3ccdcf4f108aaab9de23ab0ab987966eb160f2a553a0bdff99461e71ddd5bfcd086090d SHA512 6eb0dc18e2c25935fabfdfc48b0114be0939158dfdef7b85b395fe2e71042672446af0e68750aae003c9847d10d1f63316fe95d3df738d18f249174292b1b9e1
29 DIST llvmorg-13.0.0.tar.gz 147270176 BLAKE2B 628f316b580e1edf3a58d4825b724df759e6ed2a4116802470c04562caefc392fa325c91f388036365a2e45a9595cca6d3557fab12984fc8bcfef29c9116d822 SHA512 8004c05d32b9720fb3391783621690c1df9bd1e97e72cbff9192ed88a84b0acd303b61432145fa917b5b5e548c8cee29b24ef8547dcc8677adf4816e7a8a0eb2
30 -DIST llvmorg-13.0.1-rc3.tar.gz 147302323 BLAKE2B 9ac2f97568062d7dd618295a68d6e14898fcd69e2bb66290b999ceb8c12132371f4e9b59d8ba2b252e5e5cb249045676b24fc50c117b2afae20abab98f426582 SHA512 88a04ad02af2d41ec21c7a62bad21ee0e627b7276a16795875afd062ed29ac7fb4aadec5b5e48785a6502c9fd797a4b67d648a21f193c9f7602112870b10a3d1
31 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
32
33 diff --git a/sys-devel/llvm/llvm-13.0.1_rc3.ebuild b/sys-devel/llvm/llvm-13.0.1_rc3.ebuild
34 deleted file mode 100644
35 index f5d3be283708..000000000000
36 --- a/sys-devel/llvm/llvm-13.0.1_rc3.ebuild
37 +++ /dev/null
38 @@ -1,510 +0,0 @@
39 -# Copyright 1999-2022 Gentoo Authors
40 -# Distributed under the terms of the GNU General Public License v2
41 -
42 -EAPI=7
43 -
44 -PYTHON_COMPAT=( python3_{8..10} )
45 -inherit cmake llvm.org multilib-minimal pax-utils python-any-r1 \
46 - toolchain-funcs
47 -
48 -DESCRIPTION="Low Level Virtual Machine"
49 -HOMEPAGE="https://llvm.org/"
50 -
51 -# Additional licenses:
52 -# 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
53 -# 2. xxhash: BSD.
54 -# 3. MD5 code: public-domain.
55 -# 4. ConvertUTF.h: TODO.
56 -
57 -LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA BSD public-domain rc"
58 -SLOT="$(ver_cut 1)"
59 -KEYWORDS=""
60 -IUSE="+binutils-plugin debug doc exegesis libedit +libffi ncurses test xar xml z3"
61 -RESTRICT="!test? ( test )"
62 -
63 -RDEPEND="
64 - sys-libs/zlib:0=[${MULTILIB_USEDEP}]
65 - binutils-plugin? ( >=sys-devel/binutils-2.31.1-r4:*[plugins] )
66 - exegesis? ( dev-libs/libpfm:= )
67 - libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] )
68 - libffi? ( >=dev-libs/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] )
69 - ncurses? ( >=sys-libs/ncurses-5.9-r3:0=[${MULTILIB_USEDEP}] )
70 - xar? ( app-arch/xar )
71 - xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
72 - z3? ( >=sci-mathematics/z3-4.7.1:0=[${MULTILIB_USEDEP}] )"
73 -DEPEND="${RDEPEND}
74 - binutils-plugin? ( sys-libs/binutils-libs )"
75 -BDEPEND="
76 - dev-lang/perl
77 - >=dev-util/cmake-3.16
78 - sys-devel/gnuconfig
79 - kernel_Darwin? (
80 - <sys-libs/libcxx-$(ver_cut 1-3).9999
81 - >=sys-devel/binutils-apple-5.1
82 - )
83 - doc? ( $(python_gen_any_dep '
84 - dev-python/recommonmark[${PYTHON_USEDEP}]
85 - dev-python/sphinx[${PYTHON_USEDEP}]
86 - ') )
87 - libffi? ( virtual/pkgconfig )
88 - ${PYTHON_DEPS}"
89 -# There are no file collisions between these versions but having :0
90 -# installed means llvm-config there will take precedence.
91 -RDEPEND="${RDEPEND}
92 - !sys-devel/llvm:0"
93 -PDEPEND="sys-devel/llvm-common
94 - binutils-plugin? ( >=sys-devel/llvmgold-${SLOT} )"
95 -
96 -LLVM_COMPONENTS=( llvm )
97 -LLVM_MANPAGES=build
98 -LLVM_PATCHSET=${PV/_/-}
99 -LLVM_USE_TARGETS=provide
100 -llvm.org_set_globals
101 -
102 -python_check_deps() {
103 - use doc || return 0
104 -
105 - has_version -b "dev-python/recommonmark[${PYTHON_USEDEP}]" &&
106 - has_version -b "dev-python/sphinx[${PYTHON_USEDEP}]"
107 -}
108 -
109 -check_live_ebuild() {
110 - local prod_targets=(
111 - $(sed -n -e '/set(LLVM_ALL_TARGETS/,/)/p' CMakeLists.txt \
112 - | tail -n +2 | head -n -1)
113 - )
114 - local all_targets=(
115 - lib/Target/*/
116 - )
117 - all_targets=( "${all_targets[@]#lib/Target/}" )
118 - all_targets=( "${all_targets[@]%/}" )
119 -
120 - local exp_targets=() i
121 - for i in "${all_targets[@]}"; do
122 - has "${i}" "${prod_targets[@]}" || exp_targets+=( "${i}" )
123 - done
124 -
125 - if [[ ${exp_targets[*]} != ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]} ]]; then
126 - eqawarn "ALL_LLVM_EXPERIMENTAL_TARGETS is outdated!"
127 - eqawarn " Have: ${ALL_LLVM_EXPERIMENTAL_TARGETS[*]}"
128 - eqawarn "Expected: ${exp_targets[*]}"
129 - eqawarn
130 - fi
131 -
132 - if [[ ${prod_targets[*]} != ${ALL_LLVM_PRODUCTION_TARGETS[*]} ]]; then
133 - eqawarn "ALL_LLVM_PRODUCTION_TARGETS is outdated!"
134 - eqawarn " Have: ${ALL_LLVM_PRODUCTION_TARGETS[*]}"
135 - eqawarn "Expected: ${prod_targets[*]}"
136 - fi
137 -}
138 -
139 -check_distribution_components() {
140 - if [[ ${CMAKE_MAKEFILE_GENERATOR} == ninja ]]; then
141 - local all_targets=() my_targets=() l
142 - cd "${BUILD_DIR}" || die
143 -
144 - while read -r l; do
145 - if [[ ${l} == install-*-stripped:* ]]; then
146 - l=${l#install-}
147 - l=${l%%-stripped*}
148 -
149 - case ${l} in
150 - # shared libs
151 - LLVM|LLVMgold)
152 - ;;
153 - # TableGen lib + deps
154 - LLVMDemangle|LLVMSupport|LLVMTableGen)
155 - ;;
156 - # static libs
157 - LLVM*)
158 - continue
159 - ;;
160 - # meta-targets
161 - distribution|llvm-libraries)
162 - continue
163 - ;;
164 - # used only w/ USE=doc
165 - docs-llvm-html)
166 - use doc || continue
167 - ;;
168 - esac
169 -
170 - all_targets+=( "${l}" )
171 - fi
172 - done < <(ninja -t targets all)
173 -
174 - while read -r l; do
175 - my_targets+=( "${l}" )
176 - done < <(get_distribution_components $"\n")
177 -
178 - local add=() remove=()
179 - for l in "${all_targets[@]}"; do
180 - if ! has "${l}" "${my_targets[@]}"; then
181 - add+=( "${l}" )
182 - fi
183 - done
184 - for l in "${my_targets[@]}"; do
185 - if ! has "${l}" "${all_targets[@]}"; then
186 - remove+=( "${l}" )
187 - fi
188 - done
189 -
190 - if [[ ${#add[@]} -gt 0 || ${#remove[@]} -gt 0 ]]; then
191 - eqawarn "get_distribution_components() is outdated!"
192 - eqawarn " Add: ${add[*]}"
193 - eqawarn "Remove: ${remove[*]}"
194 - fi
195 - cd - >/dev/null || die
196 - fi
197 -}
198 -
199 -src_prepare() {
200 - # disable use of SDK on OSX, bug #568758
201 - sed -i -e 's/xcrun/false/' utils/lit/lit/util.py || die
202 -
203 - # Update config.guess to support more systems
204 - cp "${BROOT}/usr/share/gnuconfig/config.guess" cmake/ || die
205 -
206 - # Verify that the live ebuild is up-to-date
207 - check_live_ebuild
208 -
209 - llvm.org_src_prepare
210 -}
211 -
212 -# Is LLVM being linked against libc++?
213 -is_libcxx_linked() {
214 - local code='#include <ciso646>
215 -#if defined(_LIBCPP_VERSION)
216 - HAVE_LIBCXX
217 -#endif
218 -'
219 - local out=$($(tc-getCXX) ${CXXFLAGS} ${CPPFLAGS} -x c++ -E -P - <<<"${code}") || return 1
220 -
221 - [[ ${out} == *HAVE_LIBCXX* ]]
222 -}
223 -
224 -get_distribution_components() {
225 - local sep=${1-;}
226 -
227 - local out=(
228 - # shared libs
229 - LLVM
230 - LTO
231 - Remarks
232 -
233 - # tools
234 - llvm-config
235 -
236 - # common stuff
237 - cmake-exports
238 - llvm-headers
239 -
240 - # libraries needed for clang-tblgen
241 - LLVMDemangle
242 - LLVMSupport
243 - LLVMTableGen
244 - )
245 -
246 - if multilib_is_native_abi; then
247 - out+=(
248 - # utilities
249 - llvm-tblgen
250 - FileCheck
251 - llvm-PerfectShuffle
252 - count
253 - not
254 - yaml-bench
255 -
256 - # tools
257 - bugpoint
258 - dsymutil
259 - llc
260 - lli
261 - lli-child-target
262 - llvm-addr2line
263 - llvm-ar
264 - llvm-as
265 - llvm-bcanalyzer
266 - llvm-bitcode-strip
267 - llvm-c-test
268 - llvm-cat
269 - llvm-cfi-verify
270 - llvm-config
271 - llvm-cov
272 - llvm-cvtres
273 - llvm-cxxdump
274 - llvm-cxxfilt
275 - llvm-cxxmap
276 - llvm-diff
277 - llvm-dis
278 - llvm-dlltool
279 - llvm-dwarfdump
280 - llvm-dwp
281 - llvm-exegesis
282 - llvm-extract
283 - llvm-gsymutil
284 - llvm-ifs
285 - llvm-install-name-tool
286 - llvm-jitlink
287 - llvm-jitlink-executor
288 - llvm-lib
289 - llvm-libtool-darwin
290 - llvm-link
291 - llvm-lipo
292 - llvm-lto
293 - llvm-lto2
294 - llvm-mc
295 - llvm-mca
296 - llvm-ml
297 - llvm-modextract
298 - llvm-mt
299 - llvm-nm
300 - llvm-objcopy
301 - llvm-objdump
302 - llvm-opt-report
303 - llvm-otool
304 - llvm-pdbutil
305 - llvm-profdata
306 - llvm-profgen
307 - llvm-ranlib
308 - llvm-rc
309 - llvm-readelf
310 - llvm-readobj
311 - llvm-reduce
312 - llvm-rtdyld
313 - llvm-sim
314 - llvm-size
315 - llvm-split
316 - llvm-stress
317 - llvm-strings
318 - llvm-strip
319 - llvm-symbolizer
320 - llvm-tapi-diff
321 - llvm-undname
322 - llvm-windres
323 - llvm-xray
324 - obj2yaml
325 - opt
326 - sancov
327 - sanstats
328 - split-file
329 - verify-uselistorder
330 - yaml2obj
331 -
332 - # python modules
333 - opt-viewer
334 - )
335 -
336 - if llvm_are_manpages_built; then
337 - out+=(
338 - # manpages
339 - docs-dsymutil-man
340 - docs-llvm-dwarfdump-man
341 - docs-llvm-man
342 - )
343 - fi
344 - use doc && out+=(
345 - docs-llvm-html
346 - )
347 -
348 - use binutils-plugin && out+=(
349 - LLVMgold
350 - )
351 - fi
352 -
353 - printf "%s${sep}" "${out[@]}"
354 -}
355 -
356 -multilib_src_configure() {
357 - local ffi_cflags ffi_ldflags
358 - if use libffi; then
359 - ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
360 - ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
361 - fi
362 -
363 - local libdir=$(get_libdir)
364 - local mycmakeargs=(
365 - # disable appending VCS revision to the version to improve
366 - # direct cache hit ratio
367 - -DLLVM_APPEND_VC_REV=OFF
368 - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
369 - -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
370 -
371 - -DBUILD_SHARED_LIBS=OFF
372 - -DLLVM_BUILD_LLVM_DYLIB=ON
373 - -DLLVM_LINK_LLVM_DYLIB=ON
374 - -DLLVM_DISTRIBUTION_COMPONENTS=$(get_distribution_components)
375 -
376 - # cheap hack: LLVM combines both anyway, and the only difference
377 - # is that the former list is explicitly verified at cmake time
378 - -DLLVM_TARGETS_TO_BUILD=""
379 - -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
380 - -DLLVM_BUILD_TESTS=$(usex test)
381 -
382 - -DLLVM_ENABLE_FFI=$(usex libffi)
383 - -DLLVM_ENABLE_LIBEDIT=$(usex libedit)
384 - -DLLVM_ENABLE_TERMINFO=$(usex ncurses)
385 - -DLLVM_ENABLE_LIBXML2=$(usex xml)
386 - -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
387 - -DLLVM_ENABLE_LIBPFM=$(usex exegesis)
388 - -DLLVM_ENABLE_EH=ON
389 - -DLLVM_ENABLE_RTTI=ON
390 - -DLLVM_ENABLE_Z3_SOLVER=$(usex z3)
391 -
392 - -DLLVM_HOST_TRIPLE="${CHOST}"
393 -
394 - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}"
395 - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}"
396 - # used only for llvm-objdump tool
397 - -DLLVM_HAVE_LIBXAR=$(multilib_native_usex xar 1 0)
398 -
399 - -DPython3_EXECUTABLE="${PYTHON}"
400 -
401 - # disable OCaml bindings (now in dev-ml/llvm-ocaml)
402 - -DOCAMLFIND=NO
403 - )
404 -
405 - if is_libcxx_linked; then
406 - # Smart hack: alter version suffix -> SOVERSION when linking
407 - # against libc++. This way we won't end up mixing LLVM libc++
408 - # libraries with libstdc++ clang, and the other way around.
409 - mycmakeargs+=(
410 - -DLLVM_VERSION_SUFFIX="libcxx"
411 - -DLLVM_ENABLE_LIBCXX=ON
412 - )
413 - fi
414 -
415 -# Note: go bindings have no CMake rules at the moment
416 -# but let's kill the check in case they are introduced
417 -# if ! multilib_is_native_abi || ! use go; then
418 - mycmakeargs+=(
419 - -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
420 - )
421 -# fi
422 -
423 - use test && mycmakeargs+=(
424 - -DLLVM_LIT_ARGS="$(get_lit_flags)"
425 - )
426 -
427 - if multilib_is_native_abi; then
428 - local build_docs=OFF
429 - if llvm_are_manpages_built; then
430 - build_docs=ON
431 - mycmakeargs+=(
432 - -DCMAKE_INSTALL_MANDIR="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
433 - -DLLVM_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
434 - -DSPHINX_WARNINGS_AS_ERRORS=OFF
435 - )
436 - fi
437 -
438 - mycmakeargs+=(
439 - -DLLVM_BUILD_DOCS=${build_docs}
440 - -DLLVM_ENABLE_OCAMLDOC=OFF
441 - -DLLVM_ENABLE_SPHINX=${build_docs}
442 - -DLLVM_ENABLE_DOXYGEN=OFF
443 - -DLLVM_INSTALL_UTILS=ON
444 - )
445 - use binutils-plugin && mycmakeargs+=(
446 - -DLLVM_BINUTILS_INCDIR="${EPREFIX}"/usr/include
447 - )
448 - fi
449 -
450 - if tc-is-cross-compiler; then
451 - local tblgen="${EPREFIX}/usr/lib/llvm/${SLOT}/bin/llvm-tblgen"
452 - [[ -x "${tblgen}" ]] \
453 - || die "${tblgen} not found or usable"
454 - mycmakeargs+=(
455 - -DCMAKE_CROSSCOMPILING=ON
456 - -DLLVM_TABLEGEN="${tblgen}"
457 - )
458 - fi
459 -
460 - # workaround BMI bug in gcc-7 (fixed in 7.4)
461 - # https://bugs.gentoo.org/649880
462 - # apply only to x86, https://bugs.gentoo.org/650506
463 - if tc-is-gcc && [[ ${MULTILIB_ABI_FLAG} == abi_x86* ]] &&
464 - [[ $(gcc-major-version) -eq 7 && $(gcc-minor-version) -lt 4 ]]
465 - then
466 - local CFLAGS="${CFLAGS} -mno-bmi"
467 - local CXXFLAGS="${CXXFLAGS} -mno-bmi"
468 - fi
469 -
470 - # LLVM can have very high memory consumption while linking,
471 - # exhausting the limit on 32-bit linker executable
472 - use x86 && local -x LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory"
473 -
474 - # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
475 - use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
476 - cmake_src_configure
477 -
478 - multilib_is_native_abi && check_distribution_components
479 -}
480 -
481 -multilib_src_compile() {
482 - cmake_build distribution
483 -
484 - pax-mark m "${BUILD_DIR}"/bin/llvm-rtdyld
485 - pax-mark m "${BUILD_DIR}"/bin/lli
486 - pax-mark m "${BUILD_DIR}"/bin/lli-child-target
487 -
488 - if use test; then
489 - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/Orc/OrcJITTests
490 - pax-mark m "${BUILD_DIR}"/unittests/ExecutionEngine/MCJIT/MCJITTests
491 - pax-mark m "${BUILD_DIR}"/unittests/Support/SupportTests
492 - fi
493 -}
494 -
495 -multilib_src_test() {
496 - # respect TMPDIR!
497 - local -x LIT_PRESERVES_TMP=1
498 - cmake_build check
499 -}
500 -
501 -src_install() {
502 - local MULTILIB_CHOST_TOOLS=(
503 - /usr/lib/llvm/${SLOT}/bin/llvm-config
504 - )
505 -
506 - local MULTILIB_WRAPPED_HEADERS=(
507 - /usr/include/llvm/Config/llvm-config.h
508 - )
509 -
510 - local LLVM_LDPATHS=()
511 - multilib-minimal_src_install
512 -
513 - # move wrapped headers back
514 - mv "${ED}"/usr/include "${ED}"/usr/lib/llvm/${SLOT}/include || die
515 -}
516 -
517 -multilib_src_install() {
518 - DESTDIR=${D} cmake_build install-distribution
519 -
520 - # move headers to /usr/include for wrapping
521 - rm -rf "${ED}"/usr/include || die
522 - mv "${ED}"/usr/lib/llvm/${SLOT}/include "${ED}"/usr/include || die
523 -
524 - LLVM_LDPATHS+=( "${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)" )
525 -}
526 -
527 -multilib_src_install_all() {
528 - local revord=$(( 9999 - ${SLOT} ))
529 - newenvd - "60llvm-${revord}" <<-_EOF_
530 - PATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin"
531 - # we need to duplicate it in ROOTPATH for Portage to respect...
532 - ROOTPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/bin"
533 - MANPATH="${EPREFIX}/usr/lib/llvm/${SLOT}/share/man"
534 - LDPATH="$( IFS=:; echo "${LLVM_LDPATHS[*]}" )"
535 - _EOF_
536 -
537 - docompress "/usr/lib/llvm/${SLOT}/share/man"
538 - llvm_install_manpages
539 -}
540 -
541 -pkg_postinst() {
542 - elog "You can find additional opt-viewer utility scripts in:"
543 - elog " ${EROOT}/usr/lib/llvm/${SLOT}/share/opt-viewer"
544 - elog "To use these scripts, you will need Python along with the following"
545 - elog "packages:"
546 - elog " dev-python/pygments (for opt-viewer)"
547 - elog " dev-python/pyyaml (for all of them)"
548 -}