1 |
commit: 344daed170af3fae72cc031684585281efca896a |
2 |
Author: Cédric Krier <cedk <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Jan 28 20:03:34 2023 +0000 |
4 |
Commit: Cédric Krier <cedk <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Jan 28 20:04:24 2023 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=344daed1 |
7 |
|
8 |
dev-vcs/mercurial: add 6.3.2 |
9 |
|
10 |
Signed-off-by: Cédric Krier <cedk <AT> gentoo.org> |
11 |
|
12 |
dev-vcs/mercurial/Manifest | 3 + |
13 |
.../mercurial-6.3.2-setup-rust-makedirs.patch | 30 ++ |
14 |
dev-vcs/mercurial/mercurial-6.3.2.ebuild | 333 +++++++++++++++++++++ |
15 |
3 files changed, 366 insertions(+) |
16 |
|
17 |
diff --git a/dev-vcs/mercurial/Manifest b/dev-vcs/mercurial/Manifest |
18 |
index 968fab6f456f..ea3c3899ee07 100644 |
19 |
--- a/dev-vcs/mercurial/Manifest |
20 |
+++ b/dev-vcs/mercurial/Manifest |
21 |
@@ -92,6 +92,7 @@ DIST mercurial-5.8.tar.gz 7985326 BLAKE2B 3b64343b692c389368b9c61baf367fe739bb79 |
22 |
DIST mercurial-6.0.2.tar.gz 8089180 BLAKE2B 3141e20e844c451717c93c347bc30843d11b3f66fbea3808199ea3a18a992be0fdb8f8dabe0010e1f038cf797b6148b224e7d7cfb067c184bcfd4ca2060d9980 SHA512 1591618840a3e4b862f0eb9e560d511b59eb34815de2e6e6cc1179d32f88a1e9a6f14abf3e02d76e17dbab1ffe384e52d97721e39da252ac5ba98a2233853c9a |
23 |
DIST mercurial-6.1.4.tar.gz 8070694 BLAKE2B e37fa67c22a153c3a939d5c20b7b601ef520378a1999ddb49b00937807edbc2ed67bb7819aadf4c9aebef0a812d8be2a99e4f96058a09ca3844a2f969e1d5420 SHA512 b43221c078efd4978fd47414d9442f423a97660e1f4c10d704a8d3403051778d2a25a0b4be6315d0a2126d01c14910ccbe9a5be6242b561a2bea0c522f54b731 |
24 |
DIST mercurial-6.2.3.tar.gz 8058864 BLAKE2B 72d710985298f17b2940b0a5cda896e8cadb881db0c9293c2c32ff3c2100dc2291fa314157b433eb05a5a25a442c0e0ae021a5abf7c477885a1e39201f5b0b0a SHA512 0d82582e6d40ceabcc32419bf0423dd9f49b72b72c91a0f575181f92b355699a88f0426a192c46ca47f3105e47cb45dc3ac1a6499f4c83e01fa31e31c1ffdfbb |
25 |
+DIST mercurial-6.3.2.tar.gz 8092710 BLAKE2B c64759736719af4a675abddd0f4d3578c815fc11a1644c52d7aaddfafb547faf018253d9a47e6ac869e7c1de91ca518b0106e77104e998deed9cbeadd6d3cee2 SHA512 5ca7e448bf336c2a2d4db174c4f486f66f41eef33db14f152abb09b8d82416124d251784cb5898499580083ca104113d0763e27baa9b77feb90ba2fd96d40be5 |
26 |
DIST micro-timer-0.3.1.crate 3357 BLAKE2B 13c518d2b3de6fa683078b9906b719498da2e2be5a23e7a2511f3d1d69730769031ed6b488927bec845c0405782f55cfe5af8610d56d92e716ff5d9056650f5a SHA512 197beadbdf35dd0892f6e0c1a09b6b57472166ecaec3e10be12c436e1381540100092c9e717684db44b53375390cf2c245fdc6fdb376117fdf5b4405ade73cf7 |
27 |
DIST micro-timer-0.4.0.crate 3513 BLAKE2B cc189b0db3d6fff554dec8548243894f70ea0445e095179bbe5b0d06dae4de6c09bcded31f00507d2f238523a3ef300e25054102d37cc4768aeef569ee7fc6a0 SHA512 33f1b5c65d9fb293fd86d52509687b7f9adb7af6bdcb3904f24740a9ad58ba9b30987d2a63fc19afcd6a55467f294ab098401f53bafafbd15c48b30d87232585 |
28 |
DIST micro-timer-macros-0.3.1.crate 2928 BLAKE2B 148639d1f22965c7487fefd19b1413797aad0f9e0c4eb8ee7be181e7b6bd39e03a6d3d68131b05e09f87a3ef653d6eda643952025983b49736a9c6ddb778aafa SHA512 9c9ffc8432c9377d2de3fce931f398d7f77012f496dd6c011718abd46535205766d9f5a7c97ff14ecd87bb172039d8e92a8c45cfd9c14d220a368448da1b7917 |
29 |
@@ -100,6 +101,7 @@ DIST miniz_oxide-0.4.3.crate 50058 BLAKE2B bc7a152a984de061803c11255459ce3d8fa64 |
30 |
DIST num-integer-0.1.44.crate 22216 BLAKE2B e1c08427e006cde6f2084adadb6086e87e6d6f8bb8dfa757a8228aa671e862a366e4bd8ca5e0500008c18bab128aead9bd5b1e53568a4f40afadcaf3882ee98f SHA512 d07e27ede02a1d007373935fd91e57a26e0e84ae14bbe24be66763baae6850788bd64ad2598d2bde4f4fad6c8a4675c40bfe0927164b16b9b69de5e9a83d9771 |
31 |
DIST num-traits-0.2.14.crate 45476 BLAKE2B ae310d9d5640acc3e45e1e5d1d2f519539795922c0058ee940c94c94b6654b39358b7c18dd23a276f2c1b16a30dd4de4cbc8575bcda6a5c11e70665d670e6439 SHA512 c3028eca9f7b718de0db3a36cf3e462bdba43562d52c9b809ed4cc0aa6af403aea542d6d4da743cd1dd541397815a3c5a84cef4d6e40122994e4be6a62319b2e |
32 |
DIST num_cpus-1.13.0.crate 14704 BLAKE2B e7a26e597ad5e45309393a9500b031ba64a77831320cbb96d7861139a2f7a453b7ba06a3255439b43ac1e2e36269b0a350d514020d3cd82c2513b57934b3ebbc SHA512 e75ec298fa682be84bf4efb6cf40126da9233ef25f07e887c2fa7421ee78790204564e6406c8219466651f47421e27f69eca690bb9cdfc982b644d78cc10de3f |
33 |
+DIST once_cell-1.14.0.crate 31614 BLAKE2B b9ac8f889c86d4160ee026fca20b5135aa7bd60e8bfaf23946d003bcf0b666929a4da5859d874449d15b6ba0ec4c26e98273d020be50184b9d44ae90b8608175 SHA512 81531f06f32854e1794555e10ccd6ee2b6913bfefdd9eed52dd44a02e799fa6371cdf102cc67bc70d581a0cc4abb7dd16c9c12ede6df4ff38b20dc5908bad186 |
34 |
DIST opaque-debug-0.3.0.crate 5767 BLAKE2B fb5d32c876a271b41582563f5d6978d75bc1cba2cc34167f491bc198e6eded45b9dea65effa3aa972ede20978808b37ad1aadb6837f926fa3378ffd382076d41 SHA512 9909b06668a4f97b4d0e916de3e1d0a922a5a0b911a7ce190de786f62ceaccd382cbd0dbe01ab0f15e5472c10848482da2307a6d897928b6b7d5365bc0321cae |
35 |
DIST ouroboros-0.15.0.crate 6177 BLAKE2B 70989f764e3b83cf3f3ed598290540370a305a9b5e22f76954117a19c9bb0ccd4723892c0cbccd361a13e4961c49b3383a3f216b368d70de9d4908da87db1f72 SHA512 20e1dd42bd5789d3822c7f7d862f69c11695c19475cd943ce049b33184e231dac32d89745cf57a2db822f5f2967ee84b29320f40708612610e336aedb0c08be8 |
36 |
DIST ouroboros_macro-0.15.0.crate 16239 BLAKE2B 6e40a0bd4f04dfe5f1b93f2ff0f9d169792e8f5c9c57089061f488b4d0907d0b45c63d0ccfe2ee7e0989c7009d96760bb4c873afa688e1359db09c1ee8ce0a68 SHA512 78003e89f1a062957d66261474392b32d67a75ab1933b2dadf9c6a8c8ecd29d184ef4a1f25cadd7e1afb23aa58dacf69ca6969c327405be5dc97b8fbc09568ae |
37 |
@@ -170,6 +172,7 @@ DIST tempfile-3.3.0.crate 27578 BLAKE2B e98c5ed4c59b6ff411e89ad4eb529bbe15264d67 |
38 |
DIST termcolor-1.1.2.crate 17287 BLAKE2B 5ff748064c9fb6663befce2fd299edf6a6deb06ea72d21a62d6e77642934cca0933e10340fa84f636631cc08c76ba83ef2284b2212759129d54248e5fccb4c49 SHA512 f37b034345382cd621b1344a3fb301ca3d4d9db8b5858ac1ea82372c983229fce3c0ea8213d6b7e91291b6034affe11e2c3e593dbd95256294ce5c584b33e14c |
39 |
DIST textwrap-0.11.0.crate 17322 BLAKE2B 257428908342774593bbd3528fcdae710712ff54e8a711393a24356d8ba0e16e466a4b20c05f942c48ca76b3b5b5aaa90ec202f782cad892caa8b71ccf124da6 SHA512 f5c0fe4f28ff1a3a0931e8e235b5157a45f67967985bcc752418c5ec3481fca44a8ae4800088889b37e8cd0533f53d3c456d5ffd19b767b3f83a87b49a2e209a |
40 |
DIST thread_local-1.0.1.crate 12609 BLAKE2B 34206b5232262cda9cc0fb970e20f154d43ff1c4477a5ad5ff9200e6d874a6c7b2bcd99a2dae75a984b54574281e049ad35307ace0dd188f44c9a95fa93139cf SHA512 f2bfca4eee32a8fc88a01ff5bf24518c12142228d95916d13aae35ed6addd0b7da2235359f15220049ef197555344ac31a8833775e7a5bd49144db9c54b3165b |
41 |
+DIST thread_local-1.1.4.crate 13106 BLAKE2B 64c19368f8cec46f23b3052759c4c4ef0de50748432790e6ea11b12477239b177d54e60b9046fdcb2f495b8e0b37ad82809d03602edab9fc85cf814e3bd94fe2 SHA512 db7ff3eb88a73d9313dd58d72397614c5aae6be1d64ead7f16535cae2857be3b27d189e7955308591ec64a0d67777fd2a62a2b124ca73facb9a2d8e0458bdbb5 |
42 |
DIST time-0.1.44.crate 28885 BLAKE2B 5e2ca11af9da0847239a086330d0cd00fcb5b63862f9dfec46f72a065bb35ec2236a21ee1c56bf65e3117105e7815cafe67e3725b8575373e875dfcea401d967 SHA512 736a38637be0193a06fa35d42b4873b04a0a35d84cd2af85b7f653a1b67b95078577134bb187b777730e73cce67f437b45ff5c72b8e3f1f8e2ed3420ea0324cf |
43 |
DIST twox-hash-1.6.0.crate 21402 BLAKE2B 97a3e7ea21a891ca514438c249dd792c7bba299543dd477d6eb77d0268c2f67dc8df15139ad8c18df52455936656e4def72346ffc554f2e5ad1b7abc32b8a3e0 SHA512 e271c72920a9ad6a551005063b85b26f6525290983b799741ddae708d0dfa9d312a60953c05de4e9c3049e2a49293860bc18280b1dbfed9819ca2abac9f9cb50 |
44 |
DIST twox-hash-1.6.2.crate 21880 BLAKE2B c073cf7feb4e8714b8e73a1c9247178b5571dc4b79b84ce84f9020b6e66370b0c4c14259c88393230a13302dd18e449e2dc2939782f17c66d095a450a3e485a9 SHA512 8171cf6970f18143cf2bd186014fe5a72d3ec5b2cd1e718b45dbc94e5cb6bea1b2485a6f6332d52411ffb85d746266c408b3b3dbd6c7c18a98cc0dc953cc21b1 |
45 |
|
46 |
diff --git a/dev-vcs/mercurial/files/mercurial-6.3.2-setup-rust-makedirs.patch b/dev-vcs/mercurial/files/mercurial-6.3.2-setup-rust-makedirs.patch |
47 |
new file mode 100644 |
48 |
index 000000000000..d2082ec6cd24 |
49 |
--- /dev/null |
50 |
+++ b/dev-vcs/mercurial/files/mercurial-6.3.2-setup-rust-makedirs.patch |
51 |
@@ -0,0 +1,30 @@ |
52 |
+# HG changeset patch |
53 |
+# User Cédric Krier <ced@××××.com> |
54 |
+# Date 1674932937 -3600 |
55 |
+# Sat Jan 28 20:08:57 2023 +0100 |
56 |
+# Node ID 65a97b8b1268169fecc21749b7472fd155bfb399 |
57 |
+# Parent a1123772333204cbeb766b17de8089a1d13d4a68 |
58 |
+# EXP-Topic setup-rust-build-makedirs-target |
59 |
+Ensure target directory exists with building rust extension |
60 |
+ |
61 |
+When the rust extension is the first to be build, the target directory may not |
62 |
+exist so the copy fails. |
63 |
+ |
64 |
+diff --git a/setup.py b/setup.py |
65 |
+--- a/setup.py |
66 |
++++ b/setup.py |
67 |
+@@ -1454,11 +1454,13 @@ class RustStandaloneExtension(RustExtens |
68 |
+ target = [target_dir] |
69 |
+ target.extend(self.name.split('.')) |
70 |
+ target[-1] += DYLIB_SUFFIX |
71 |
++ target = os.path.join(*target) |
72 |
++ os.makedirs(os.path.dirname(target), exist_ok=True) |
73 |
+ shutil.copy2( |
74 |
+ os.path.join( |
75 |
+ self.rusttargetdir, self.dylibname + self.rustdylibsuffix() |
76 |
+ ), |
77 |
+- os.path.join(*target), |
78 |
++ target, |
79 |
+ ) |
80 |
+ |
81 |
+ |
82 |
|
83 |
diff --git a/dev-vcs/mercurial/mercurial-6.3.2.ebuild b/dev-vcs/mercurial/mercurial-6.3.2.ebuild |
84 |
new file mode 100644 |
85 |
index 000000000000..606ff35a8f45 |
86 |
--- /dev/null |
87 |
+++ b/dev-vcs/mercurial/mercurial-6.3.2.ebuild |
88 |
@@ -0,0 +1,333 @@ |
89 |
+# Copyright 1999-2023 Gentoo Authors |
90 |
+# Distributed under the terms of the GNU General Public License v2 |
91 |
+ |
92 |
+EAPI=8 |
93 |
+ |
94 |
+PYTHON_COMPAT=( python3_{9..11} ) |
95 |
+PYTHON_REQ_USE="threads(+)" |
96 |
+DISTUTILS_USE_SETUPTOOLS=no |
97 |
+CARGO_OPTIONAL=1 |
98 |
+ |
99 |
+CRATES=" |
100 |
+ Inflector-0.11.4 |
101 |
+ adler-0.2.3 |
102 |
+ ahash-0.4.7 |
103 |
+ aho-corasick-0.7.18 |
104 |
+ aliasable-0.1.3 |
105 |
+ ansi_term-0.12.1 |
106 |
+ atty-0.2.14 |
107 |
+ autocfg-1.0.1 |
108 |
+ bitflags-1.3.2 |
109 |
+ bitmaps-2.1.0 |
110 |
+ block-buffer-0.9.0 |
111 |
+ block-buffer-0.10.2 |
112 |
+ byteorder-1.4.3 |
113 |
+ bytes-cast-0.2.0 |
114 |
+ bytes-cast-derive-0.1.0 |
115 |
+ cc-1.0.66 |
116 |
+ cfg-if-0.1.10 |
117 |
+ cfg-if-1.0.0 |
118 |
+ chrono-0.4.19 |
119 |
+ clap-2.34.0 |
120 |
+ const_fn-0.4.4 |
121 |
+ convert_case-0.4.0 |
122 |
+ cpufeatures-0.1.4 |
123 |
+ cpufeatures-0.2.1 |
124 |
+ cpython-0.7.0 |
125 |
+ crc32fast-1.2.1 |
126 |
+ crossbeam-channel-0.5.2 |
127 |
+ crossbeam-deque-0.8.0 |
128 |
+ crossbeam-epoch-0.9.1 |
129 |
+ crossbeam-utils-0.8.1 |
130 |
+ crypto-common-0.1.2 |
131 |
+ ctor-0.1.16 |
132 |
+ derive_more-0.99.17 |
133 |
+ diff-0.1.12 |
134 |
+ digest-0.9.0 |
135 |
+ digest-0.10.2 |
136 |
+ either-1.6.1 |
137 |
+ env_logger-0.9.0 |
138 |
+ fastrand-1.7.0 |
139 |
+ flate2-1.0.22 |
140 |
+ format-bytes-0.3.0 |
141 |
+ format-bytes-macros-0.4.0 |
142 |
+ generic-array-0.14.4 |
143 |
+ getrandom-0.1.15 |
144 |
+ getrandom-0.2.4 |
145 |
+ glob-0.3.0 |
146 |
+ hashbrown-0.9.1 |
147 |
+ hermit-abi-0.1.17 |
148 |
+ hex-0.4.3 |
149 |
+ home-0.5.3 |
150 |
+ humantime-2.1.0 |
151 |
+ im-rc-15.0.0 |
152 |
+ instant-0.1.12 |
153 |
+ itertools-0.9.0 |
154 |
+ itertools-0.10.3 |
155 |
+ jobserver-0.1.21 |
156 |
+ lazy_static-1.4.0 |
157 |
+ libc-0.2.124 |
158 |
+ libm-0.2.1 |
159 |
+ libz-sys-1.1.2 |
160 |
+ log-0.4.14 |
161 |
+ memchr-2.4.1 |
162 |
+ memmap2-0.5.7 |
163 |
+ memoffset-0.6.1 |
164 |
+ micro-timer-0.4.0 |
165 |
+ micro-timer-macros-0.4.0 |
166 |
+ miniz_oxide-0.4.3 |
167 |
+ num-integer-0.1.44 |
168 |
+ num-traits-0.2.14 |
169 |
+ num_cpus-1.13.0 |
170 |
+ once_cell-1.14.0 |
171 |
+ opaque-debug-0.3.0 |
172 |
+ ouroboros-0.15.0 |
173 |
+ ouroboros_macro-0.15.0 |
174 |
+ output_vt100-0.1.2 |
175 |
+ paste-1.0.5 |
176 |
+ pkg-config-0.3.19 |
177 |
+ ppv-lite86-0.2.10 |
178 |
+ pretty_assertions-1.1.0 |
179 |
+ proc-macro-error-1.0.4 |
180 |
+ proc-macro-error-attr-1.0.4 |
181 |
+ proc-macro2-1.0.24 |
182 |
+ python3-sys-0.7.0 |
183 |
+ quote-1.0.7 |
184 |
+ rand-0.7.3 |
185 |
+ rand-0.8.5 |
186 |
+ rand_chacha-0.2.2 |
187 |
+ rand_chacha-0.3.1 |
188 |
+ rand_core-0.5.1 |
189 |
+ rand_core-0.6.3 |
190 |
+ rand_distr-0.4.3 |
191 |
+ rand_hc-0.2.0 |
192 |
+ rand_pcg-0.3.1 |
193 |
+ rand_xoshiro-0.4.0 |
194 |
+ rayon-1.5.1 |
195 |
+ rayon-core-1.9.1 |
196 |
+ redox_syscall-0.2.11 |
197 |
+ regex-1.5.5 |
198 |
+ regex-syntax-0.6.25 |
199 |
+ remove_dir_all-0.5.3 |
200 |
+ rustc_version-0.4.0 |
201 |
+ same-file-1.0.6 |
202 |
+ scopeguard-1.1.0 |
203 |
+ semver-1.0.6 |
204 |
+ sha-1-0.9.6 |
205 |
+ sha-1-0.10.0 |
206 |
+ sized-chunks-0.6.2 |
207 |
+ stable_deref_trait-1.2.0 |
208 |
+ static_assertions-1.1.0 |
209 |
+ strsim-0.8.0 |
210 |
+ syn-1.0.54 |
211 |
+ tempfile-3.3.0 |
212 |
+ termcolor-1.1.2 |
213 |
+ textwrap-0.11.0 |
214 |
+ thread_local-1.1.4 |
215 |
+ time-0.1.44 |
216 |
+ twox-hash-1.6.2 |
217 |
+ typenum-1.12.0 |
218 |
+ unicode-width-0.1.9 |
219 |
+ unicode-xid-0.2.1 |
220 |
+ users-0.11.0 |
221 |
+ vcpkg-0.2.11 |
222 |
+ vcsgraph-0.2.0 |
223 |
+ vec_map-0.8.2 |
224 |
+ version_check-0.9.2 |
225 |
+ wasi-0.9.0+wasi-snapshot-preview1 |
226 |
+ wasi-0.10.0+wasi-snapshot-preview1 |
227 |
+ which-4.2.5 |
228 |
+ winapi-0.3.9 |
229 |
+ winapi-i686-pc-windows-gnu-0.4.0 |
230 |
+ winapi-util-0.1.5 |
231 |
+ winapi-x86_64-pc-windows-gnu-0.4.0 |
232 |
+ zstd-0.5.4+zstd.1.4.7 |
233 |
+ zstd-safe-2.0.6+zstd.1.4.7 |
234 |
+ zstd-sys-1.4.18+zstd.1.4.7 |
235 |
+" |
236 |
+ |
237 |
+inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing |
238 |
+ |
239 |
+DESCRIPTION="Scalable distributed SCM" |
240 |
+HOMEPAGE="https://www.mercurial-scm.org/" |
241 |
+SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz |
242 |
+ rust? ( $(cargo_crate_uris ${CRATES}) )" |
243 |
+ |
244 |
+LICENSE="GPL-2+ |
245 |
+ rust? ( BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 ISC MIT MPL-2.0 PSF-2 Unlicense ZLIB )" |
246 |
+SLOT="0" |
247 |
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
248 |
+IUSE="+chg emacs gpg test tk rust" |
249 |
+ |
250 |
+BDEPEND="rust? ( ${RUST_DEPEND} )" |
251 |
+RDEPEND=" |
252 |
+ app-misc/ca-certificates |
253 |
+ gpg? ( app-crypt/gnupg ) |
254 |
+ tk? ( dev-lang/tk )" |
255 |
+ |
256 |
+DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) |
257 |
+ test? ( |
258 |
+ app-arch/unzip |
259 |
+ dev-python/pygments[${PYTHON_USEDEP}] |
260 |
+ )" |
261 |
+ |
262 |
+PATCHES=( |
263 |
+ "${FILESDIR}"/${P}-setup-rust-makedirs.patch |
264 |
+) |
265 |
+ |
266 |
+SITEFILE="70${PN}-gentoo.el" |
267 |
+ |
268 |
+RESTRICT="!test? ( test )" |
269 |
+ |
270 |
+src_unpack() { |
271 |
+ default_src_unpack |
272 |
+ if use rust; then |
273 |
+ local S="${S}/rust/hg-cpython" |
274 |
+ cargo_src_unpack |
275 |
+ fi |
276 |
+} |
277 |
+ |
278 |
+python_prepare_all() { |
279 |
+ # fix up logic that won't work in Gentoo Prefix (also won't outside in |
280 |
+ # certain cases), bug #362891 |
281 |
+ sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die |
282 |
+ sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die |
283 |
+ |
284 |
+ distutils-r1_python_prepare_all |
285 |
+} |
286 |
+ |
287 |
+src_compile() { |
288 |
+ if use rust; then |
289 |
+ pushd rust/hg-cpython || die |
290 |
+ cargo_src_compile --no-default-features --jobs $(makeopts_jobs) |
291 |
+ popd || die |
292 |
+ fi |
293 |
+ distutils-r1_src_compile |
294 |
+} |
295 |
+ |
296 |
+python_compile() { |
297 |
+ filter-flags -ftracer -ftree-vectorize |
298 |
+ if use rust; then |
299 |
+ local -x HGWITHRUSTEXT="cpython" |
300 |
+ fi |
301 |
+ distutils-r1_python_compile build_ext |
302 |
+} |
303 |
+ |
304 |
+python_compile_all() { |
305 |
+ rm -r contrib/win32 || die |
306 |
+ if use chg; then |
307 |
+ emake -C contrib/chg |
308 |
+ fi |
309 |
+ if use emacs; then |
310 |
+ cd contrib || die |
311 |
+ elisp-compile mercurial.el || die "elisp-compile failed!" |
312 |
+ fi |
313 |
+} |
314 |
+ |
315 |
+src_install() { |
316 |
+ distutils-r1_src_install |
317 |
+} |
318 |
+ |
319 |
+python_install() { |
320 |
+ if use rust; then |
321 |
+ local -x HGWITHRUSTEXT="cpython" |
322 |
+ fi |
323 |
+ |
324 |
+ distutils-r1_python_install build_ext |
325 |
+ python_doscript contrib/hg-ssh |
326 |
+} |
327 |
+ |
328 |
+python_install_all() { |
329 |
+ distutils-r1_python_install_all |
330 |
+ |
331 |
+ newbashcomp contrib/bash_completion hg |
332 |
+ |
333 |
+ insinto /usr/share/zsh/site-functions |
334 |
+ newins contrib/zsh_completion _hg |
335 |
+ |
336 |
+ dobin hgeditor |
337 |
+ if use tk; then |
338 |
+ dobin contrib/hgk |
339 |
+ fi |
340 |
+ |
341 |
+ if use emacs; then |
342 |
+ elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" |
343 |
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE} |
344 |
+ fi |
345 |
+ |
346 |
+ local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) |
347 |
+ |
348 |
+ if use chg; then |
349 |
+ dobin contrib/chg/chg |
350 |
+ doman contrib/chg/chg.1 |
351 |
+ RM_CONTRIB+=( chg ) |
352 |
+ fi |
353 |
+ |
354 |
+ for f in ${RM_CONTRIB[@]}; do |
355 |
+ rm -rf contrib/${f} || die |
356 |
+ done |
357 |
+ |
358 |
+ dodoc -r contrib |
359 |
+ docompress -x /usr/share/doc/${PF}/contrib |
360 |
+ doman doc/*.? |
361 |
+ dodoc CONTRIBUTORS hgweb.cgi |
362 |
+ |
363 |
+ insinto /etc/mercurial/hgrc.d |
364 |
+ doins "${FILESDIR}/cacerts.rc" |
365 |
+} |
366 |
+ |
367 |
+src_test() { |
368 |
+ pushd tests &>/dev/null || die |
369 |
+ rm -rf *svn* # Subversion tests fail with 1.5 |
370 |
+ rm -f test-archive* # Fails due to verbose tar output changes |
371 |
+ rm -f test-convert-baz* # GNU Arch baz |
372 |
+ rm -f test-convert-cvs* # CVS |
373 |
+ rm -f test-convert-darcs* # Darcs |
374 |
+ rm -f test-convert-git* # git |
375 |
+ rm -f test-convert-mtn* # monotone |
376 |
+ rm -f test-convert-tla* # GNU Arch tla |
377 |
+ rm -f test-largefiles* # tends to time out |
378 |
+ rm -f test-https* # requires to support tls1.0 |
379 |
+ rm -rf test-removeemptydirs* # requires access to access parent directories |
380 |
+ if [[ ${EUID} -eq 0 ]]; then |
381 |
+ einfo "Removing tests which require user privileges to succeed" |
382 |
+ rm -f test-convert* |
383 |
+ rm -f test-lock-badness* |
384 |
+ rm -f test-permissions* |
385 |
+ rm -f test-pull-permission* |
386 |
+ rm -f test-journal-exists* |
387 |
+ rm -f test-repair-strip* |
388 |
+ fi |
389 |
+ |
390 |
+ popd &>/dev/null || die |
391 |
+ distutils-r1_src_test |
392 |
+} |
393 |
+ |
394 |
+python_test() { |
395 |
+ if [[ ${EPYTHON} == python3.10 ]]; then |
396 |
+ einfo "Skipping tests for unsupported Python 3.10" |
397 |
+ return |
398 |
+ fi |
399 |
+ distutils_install_for_testing |
400 |
+ cd tests || die |
401 |
+ PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ |
402 |
+ --jobs $(makeopts_jobs) \ |
403 |
+ --timeout 0 \ |
404 |
+ || die "Tests fail with ${EPYTHON}" |
405 |
+} |
406 |
+ |
407 |
+pkg_postinst() { |
408 |
+ use emacs && elisp-site-regen |
409 |
+ |
410 |
+ elog "If you want to convert repositories from other tools using convert" |
411 |
+ elog "extension please install correct tool:" |
412 |
+ elog " dev-vcs/cvs" |
413 |
+ elog " dev-vcs/darcs" |
414 |
+ elog " dev-vcs/git" |
415 |
+ elog " dev-vcs/monotone" |
416 |
+ elog " dev-vcs/subversion" |
417 |
+} |
418 |
+ |
419 |
+pkg_postrm() { |
420 |
+ use emacs && elisp-site-regen |
421 |
+} |