1 |
commit: e326ec393060773f40da3a1a5d302772f6a252a3 |
2 |
Author: Michał Górny <mgorny <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Aug 28 15:40:51 2018 +0000 |
4 |
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Aug 28 16:00:35 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e326ec39 |
7 |
|
8 |
sys-libs/llvm-libunwind: Bump to 7.0.0rc2 |
9 |
|
10 |
sys-libs/llvm-libunwind/Manifest | 3 + |
11 |
.../llvm-libunwind/llvm-libunwind-7.0.0_rc2.ebuild | 143 +++++++++++++++++++++ |
12 |
2 files changed, 146 insertions(+) |
13 |
|
14 |
diff --git a/sys-libs/llvm-libunwind/Manifest b/sys-libs/llvm-libunwind/Manifest |
15 |
index 88776cfa5da..718dbcd1c6c 100644 |
16 |
--- a/sys-libs/llvm-libunwind/Manifest |
17 |
+++ b/sys-libs/llvm-libunwind/Manifest |
18 |
@@ -1,5 +1,8 @@ |
19 |
DIST libcxx-6.0.1.src.tar.xz 1552328 BLAKE2B 65a6addd04e530c2a72e8cba207282b9e9fafc01a594d7b11f63d10b6f88eca67a3cdf90b8055e410ede358d9be1f63fbe427f308e1337833447c0260d96e1c8 SHA512 c04f628b0924d76f035f615b59d19ce42dfc19c9a8eea4fe2b22a95cfe5a037ebdb30943fd741443939df5b4cf692bc1e51c840fefefbd134e3afbe2a75fe875 |
20 |
+DIST libcxx-7.0.0rc2.src.tar.xz 1654748 BLAKE2B 95664de42bfa6b77c5db32c092469c36e92b5eb9554bf381f761e04a29da1f413c1ead2ac93674a30ad9d743aa3cc9f22e5edebd043d16f903ed83901a743ae6 SHA512 c0b84400cb7694f7088b965cb0cac26853ecc485c775afbb0ad2cfdc53497eb95b76f917b16090372b77297e7f80372aef29023da564387be49e2f412efb5746 |
21 |
DIST libcxxabi-6.0.1.src.tar.xz 528356 BLAKE2B b301b750b2928864d3fc51e66cf91aab6837636ec2bce706b9a97296ec96af4bd2e80b1bf80c9b4afe449335ee12bbdd1905433c27e1770e16bc306baf206927 SHA512 bbb4c7b412e295cb735f637df48a83093eef45ed5444f7766790b4b047f75fd5fd634d8f3a8ac33a5c1407bd16fd450ba113f60a9bcc1d0a911fe0c54e9c81f2 |
22 |
+DIST libcxxabi-7.0.0rc2.src.tar.xz 535948 BLAKE2B 02505fd0101d9be53c66f14f5aca7a99c3e4309d9979be1a5792f869ed8e72562e8f7a2fba222d2a121845d4425ff98444046e4edfe2023891ba80521ebc4a00 SHA512 fcb51c4005bb4b79426467c8d7128412c37b235518455fa57521e04df2d47fc97aa0bce10ebec4fe3f3097bb3657f56014258ca8c46c978e709927fcce27fd5c |
23 |
DIST libunwind-4.0.1.src.tar.xz 63388 BLAKE2B f49772beabaa8519a5f8dbbaef9c2d6554468a66b89a5f012946d59f772fe864809a5c95b726bcb4c059ca551a4eb023a88f4fa618756b34fef2058e272467e6 SHA512 8a0552a8ab830010d81420f4b778a3b831bff85b19bcce972958fc30e1ba5a2fa26a3deba499985a43dd7a103690775f6a20e7b3edda55f4eaff3541002d6b59 |
24 |
DIST libunwind-5.0.2.src.tar.xz 72340 BLAKE2B 8a62bd91f6decae1a9a51df19f708fcdf72a6fe6e57a5848c5dd0d36ff2dc64db8a0b3af469cdd5e787b9301f2718df0981f91857ecbc7a5f5d95a1a053652bc SHA512 137c4b269bff053d532a373e9f696ca68ad0bbf606a18dc98597e00fcfc6ce21d74bc2a0c03b96444654d688fa97d544c6f6b70822fcf7e190ed96f193ddc6ba |
25 |
DIST libunwind-6.0.1.src.tar.xz 77036 BLAKE2B b6c293285896c8ff1f64bb56eee5a88b102b7ed9902d46436ee3cb79f204f230fd08a07d39c7fa9aeeddd093036f2bb9af38dd54268099ea9e51e12a71ff4adb SHA512 78568c28720abdd1f8471c462421df9965e05e1db048689d16ac85378716c4080ec1723af78e9f61d133b0ff82ac8c1f0dde7fd42d194485f62c1a17c02db37f |
26 |
+DIST libunwind-7.0.0rc2.src.tar.xz 79412 BLAKE2B e6b955c8098180b0e0d712150e81a0df1e1a44a655a2029896594faf5e3af4cceb46f0e41f5970e8c2adcce8ae7a121afaea9751550983826ce0b11a9000b32c SHA512 bd82e9d68661d584e1670be4a1177ffe46c27b70e1a5942f797913a223aee171e0f0ef6b241afce1784cb8a7feff6de37373a10588ee38c743322f8048cca06b |
27 |
|
28 |
diff --git a/sys-libs/llvm-libunwind/llvm-libunwind-7.0.0_rc2.ebuild b/sys-libs/llvm-libunwind/llvm-libunwind-7.0.0_rc2.ebuild |
29 |
new file mode 100644 |
30 |
index 00000000000..74e6856356b |
31 |
--- /dev/null |
32 |
+++ b/sys-libs/llvm-libunwind/llvm-libunwind-7.0.0_rc2.ebuild |
33 |
@@ -0,0 +1,143 @@ |
34 |
+# Copyright 1999-2018 Gentoo Foundation |
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=( python{2_7,3_4,3_5,3_6} ) |
43 |
+inherit cmake-multilib llvm multiprocessing python-any-r1 |
44 |
+ |
45 |
+MY_P=libunwind-${PV/_/}.src |
46 |
+LIBCXX_P=libcxx-${PV/_/}.src |
47 |
+LIBCXXABI_P=libcxxabi-${PV/_/}.src |
48 |
+ |
49 |
+DESCRIPTION="C++ runtime stack unwinder from LLVM" |
50 |
+HOMEPAGE="https://github.com/llvm-mirror/libunwind" |
51 |
+SRC_URI="https://prereleases.llvm.org/${PV/_//}/${MY_P}.tar.xz |
52 |
+ test? ( |
53 |
+ https://prereleases.llvm.org/${PV/_//}/${LIBCXX_P}.tar.xz |
54 |
+ https://prereleases.llvm.org/${PV/_//}/${LIBCXXABI_P}.tar.xz )" |
55 |
+ |
56 |
+LICENSE="|| ( UoI-NCSA MIT )" |
57 |
+SLOT="0" |
58 |
+KEYWORDS="" |
59 |
+IUSE="debug +static-libs test" |
60 |
+RESTRICT="!test? ( test )" |
61 |
+ |
62 |
+RDEPEND="!sys-libs/libunwind" |
63 |
+# llvm-6 for new lit options |
64 |
+DEPEND=" |
65 |
+ >=sys-devel/llvm-6 |
66 |
+ test? ( >=sys-devel/clang-3.9.0 |
67 |
+ $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') )" |
68 |
+ |
69 |
+S=${WORKDIR}/${MY_P} |
70 |
+ |
71 |
+# least intrusive of all |
72 |
+CMAKE_BUILD_TYPE=RelWithDebInfo |
73 |
+ |
74 |
+python_check_deps() { |
75 |
+ has_version "dev-python/lit[${PYTHON_USEDEP}]" |
76 |
+} |
77 |
+ |
78 |
+pkg_setup() { |
79 |
+ use test && python-any-r1_pkg_setup |
80 |
+} |
81 |
+ |
82 |
+src_unpack() { |
83 |
+ default |
84 |
+ |
85 |
+ if use test; then |
86 |
+ mv "${LIBCXX_P}" libcxx || die |
87 |
+ mv "${LIBCXXABI_P}" libcxxabi || die |
88 |
+ fi |
89 |
+} |
90 |
+ |
91 |
+multilib_src_configure() { |
92 |
+ local libdir=$(get_libdir) |
93 |
+ |
94 |
+ local mycmakeargs=( |
95 |
+ -DLLVM_LIBDIR_SUFFIX=${libdir#lib} |
96 |
+ -DLIBUNWIND_ENABLE_ASSERTIONS=$(usex debug) |
97 |
+ -DLIBUNWIND_ENABLE_STATIC=$(usex static-libs) |
98 |
+ -DLLVM_INCLUDE_TESTS=$(usex test) |
99 |
+ |
100 |
+ # support non-native unwinding; given it's small enough, |
101 |
+ # enable it unconditionally |
102 |
+ -DLIBUNWIND_ENABLE_CROSS_UNWINDING=ON |
103 |
+ ) |
104 |
+ if use test; then |
105 |
+ local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null) |
106 |
+ local jobs=${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")} |
107 |
+ |
108 |
+ [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests" |
109 |
+ |
110 |
+ mycmakeargs+=( |
111 |
+ -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" |
112 |
+ -DLLVM_LIT_ARGS="-vv;-j;${jobs};--param=cxx_under_test=${clang_path}" |
113 |
+ -DLIBUNWIND_LIBCXX_PATH="${WORKDIR}"/libcxx |
114 |
+ ) |
115 |
+ fi |
116 |
+ |
117 |
+ cmake-utils_src_configure |
118 |
+} |
119 |
+ |
120 |
+build_libcxxabi() { |
121 |
+ local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/$(get_libdir)" |
122 |
+ local CMAKE_USE_DIR=${WORKDIR}/libcxxabi |
123 |
+ local BUILD_DIR=${BUILD_DIR}/libcxxabi |
124 |
+ local mycmakeargs=( |
125 |
+ -DLIBCXXABI_LIBDIR_SUFFIX= |
126 |
+ -DLIBCXXABI_ENABLE_SHARED=ON |
127 |
+ -DLIBCXXABI_ENABLE_STATIC=OFF |
128 |
+ -DLIBCXXABI_USE_LLVM_UNWINDER=ON |
129 |
+ -DLIBCXXABI_INCLUDE_TESTS=OFF |
130 |
+ |
131 |
+ -DLIBCXXABI_LIBCXX_INCLUDES="${WORKDIR}"/libcxx/include |
132 |
+ -DLIBCXXABI_LIBUNWIND_INCLUDES="${S}"/include |
133 |
+ ) |
134 |
+ |
135 |
+ cmake-utils_src_configure |
136 |
+ cmake-utils_src_compile |
137 |
+} |
138 |
+ |
139 |
+build_libcxx() { |
140 |
+ local -x LDFLAGS="${LDFLAGS} -L${BUILD_DIR}/libcxxabi/lib -L${BUILD_DIR}/$(get_libdir)" |
141 |
+ local CMAKE_USE_DIR=${WORKDIR}/libcxx |
142 |
+ local BUILD_DIR=${BUILD_DIR}/libcxx |
143 |
+ local mycmakeargs=( |
144 |
+ -DLIBCXX_LIBDIR_SUFFIX= |
145 |
+ -DLIBCXX_ENABLE_SHARED=ON |
146 |
+ -DLIBCXX_ENABLE_STATIC=OFF |
147 |
+ -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF |
148 |
+ -DLIBCXXABI_USE_LLVM_UNWINDER=ON |
149 |
+ -DLIBCXX_CXX_ABI=libcxxabi |
150 |
+ -DLIBCXX_CXX_ABI_INCLUDE_PATHS="${WORKDIR}"/libcxxabi/include |
151 |
+ -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF |
152 |
+ -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl) |
153 |
+ -DLIBCXX_HAS_GCC_S_LIB=OFF |
154 |
+ -DLIBCXX_INCLUDE_TESTS=OFF |
155 |
+ ) |
156 |
+ |
157 |
+ cmake-utils_src_configure |
158 |
+ cmake-utils_src_compile |
159 |
+} |
160 |
+ |
161 |
+multilib_src_test() { |
162 |
+ # build local copies of libc++ & libc++abi for testing to avoid |
163 |
+ # circular deps |
164 |
+ build_libcxxabi |
165 |
+ build_libcxx |
166 |
+ mv "${BUILD_DIR}"/libcxx*/lib/libc++* "${BUILD_DIR}/$(get_libdir)/" || die |
167 |
+ |
168 |
+ cmake-utils_src_make check-unwind |
169 |
+} |
170 |
+ |
171 |
+multilib_src_install() { |
172 |
+ cmake-utils_src_install |
173 |
+ |
174 |
+ # install headers like sys-libs/libunwind |
175 |
+ doheader "${S}"/include/*.h |
176 |
+} |