From be94ae04eee564451203d45977c2ef7c7ace1580 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 10 Nov 2024 03:03:09 +0000 Subject: gentoo auto-resync : 10:11:2024 - 03:03:09 --- dev-vcs/mercurial/Manifest | 10 +- dev-vcs/mercurial/mercurial-6.5.3-r1.ebuild | 361 ------------------------- dev-vcs/mercurial/mercurial-6.5.3-r2.ebuild | 368 +++++++++++++++++++++++++ dev-vcs/mercurial/mercurial-6.6.2-r1.ebuild | 371 ------------------------- dev-vcs/mercurial/mercurial-6.6.2-r2.ebuild | 378 ++++++++++++++++++++++++++ dev-vcs/mercurial/mercurial-6.7.4-r1.ebuild | 382 -------------------------- dev-vcs/mercurial/mercurial-6.7.4-r2.ebuild | 389 ++++++++++++++++++++++++++ dev-vcs/mercurial/mercurial-6.8.1-r1.ebuild | 405 ++++++++++++++++++++++++++++ dev-vcs/mercurial/mercurial-6.8.1.ebuild | 398 --------------------------- dev-vcs/mercurial/mercurial-9999.ebuild | 7 + 10 files changed, 1552 insertions(+), 1517 deletions(-) delete mode 100644 dev-vcs/mercurial/mercurial-6.5.3-r1.ebuild create mode 100644 dev-vcs/mercurial/mercurial-6.5.3-r2.ebuild delete mode 100644 dev-vcs/mercurial/mercurial-6.6.2-r1.ebuild create mode 100644 dev-vcs/mercurial/mercurial-6.6.2-r2.ebuild delete mode 100644 dev-vcs/mercurial/mercurial-6.7.4-r1.ebuild create mode 100644 dev-vcs/mercurial/mercurial-6.7.4-r2.ebuild create mode 100644 dev-vcs/mercurial/mercurial-6.8.1-r1.ebuild delete mode 100644 dev-vcs/mercurial/mercurial-6.8.1.ebuild (limited to 'dev-vcs/mercurial') diff --git a/dev-vcs/mercurial/Manifest b/dev-vcs/mercurial/Manifest index 2afaaaab1e05..fc13cfafd21d 100644 --- a/dev-vcs/mercurial/Manifest +++ b/dev-vcs/mercurial/Manifest @@ -200,9 +200,9 @@ DIST yansi-0.5.1.crate 16525 BLAKE2B 3b5a93b98293daae72f53bf3f13bfc05feba8d5b279 DIST zstd-0.12.3+zstd.1.5.2.crate 29693 BLAKE2B 57789ec212f12d3416784d7d8830a197437fd5a7c90ed62dd4b5add87f84039fe7afebb1c37f0973644845129868c0c6009bd39163b6afcc8b218653d2491b98 SHA512 1ee79370e2a7517638e51ea3c5c2f7f9d3f42364eefc5b10e909f52e50bffd141ecf2ac4d3701bd7655c965dd03a608ca5b69743fc2ed877f4dbfcb79715b70f DIST zstd-safe-6.0.4+zstd.1.5.4.crate 20856 BLAKE2B 05ef99fecb0d49c47dda75c23e89b7c5193ea00cee153be1856818ce3cbb97171b631ad27c01bde6fb02cc532a4aa8115ad9c6f2359ae6917e86062d833b75e4 SHA512 db03385ae800053ddb1bb6a2089712f284c21e43a99deeed6367ca8dabbb3f96b12066dfb57f484172a386fc9576c28e38d1a7bbf838debc05877bc68cd5c9cf DIST zstd-sys-2.0.7+zstd.1.5.4.crate 732100 BLAKE2B 1859d1feb7c31d53df56b198b88a391bf09e221d09d449878043dc780ae6e3b3a0ad05fe3fb4980e849ab914f68d281d41f51f7bbceec6e1403d9b4e25572b4c SHA512 dcddc4f0d7486ee144df4e2173536dc02c9714b6f702edb9a9e04b4c02f4d347b5a70fbc020c1d08c079d38a423c4dc8b6b86e7e43ec3ccfcc8e3ff9861be11b -EBUILD mercurial-6.5.3-r1.ebuild 7885 BLAKE2B b5fc6f6521d7982286678f40e677722926d4bf109198e362705b3fac897180a47376ed4fc64eac5c210faab115c418bb36ad51c90ae46d23eba34add9190ddfd SHA512 488b97bbe0371d59892d323831c085e4c4e88c20a66945d51d2eeaf9d1db86ffc4c58858b539c3608c114c2361325593126ef93383dd46af84dd050fd4a0a577 -EBUILD mercurial-6.6.2-r1.ebuild 8042 BLAKE2B 289776ef1198d4eb12f5955e29653207358887433d936748f2a22701743fee796110b13abc44dfbc5cec0e70beac977987f9265e6b0b1663f9d31f26ca09868f SHA512 47bdc139dcba10d4f85f83498ed3a8e4905afdcbd68c96f48c0cef8019e92e0c9e4915deb617b31d0c88f963c28aa58034bb1f475ec5444a035317e843c2c0d5 -EBUILD mercurial-6.7.4-r1.ebuild 8280 BLAKE2B c73b7f62dd45157de23f54e0ff1d94f52b9608665636df3c6cf373ce1252b78a175fc99969111f54d8bf4d93708c35d595161b5d87e357722253b15e08deff45 SHA512 e7ef614ff0711718c02dbe34ab9029454c18291e9a62e542a04a60233c20de691af602f80f951914d3fd477e3396e2d080902b353aea8ca064fbe3f6aa64f52a -EBUILD mercurial-6.8.1.ebuild 8612 BLAKE2B 9941e761e2798eebc42212fe7c0e88e48a87800ceb7c3fadefedb9d6529a5cbb95606699d04304372052f7c12d074ecd031bab650779a622371c116d18cb048c SHA512 cbb290a2ef621a5351ef3a7647911d43b4d0426aba47f4477af675312da6961ffa123f21f0421315d27e94147afa2f5c2d6db84026fe3ed48103922d4f9f8674 -EBUILD mercurial-9999.ebuild 4689 BLAKE2B 1d53deeb550932bce07a2fca83330a5a83b3ccd53b4bd911efa642e38225283243a596d9326286cb2ee6f8a9711928a442475b201fef4d40256d3903867486d0 SHA512 eefa3be078437daca8622b0e150f58ac0e48b374d6203dc8dc8420e303f935064370c5b5752f4284fcb82cb4e9ecc2719d25a7a692465c4eeb8ac28fb4d6092c +EBUILD mercurial-6.5.3-r2.ebuild 7955 BLAKE2B 45e79dc13116db9c161021661c62bde59b1bddd3d7917ce5bd8163db406b0e09325afa2438be82bcda3ed77289ebde0f227b496e76afde955af828f07bf98e94 SHA512 cf86468fcc905dec0edabf3df456bac7803a73cd5c75ec2e42352a83ebf6fdc90e3f38b40dc9ca6f4c3619657da21f13ec3e8e6984743bd1dd1e1f767ef98e47 +EBUILD mercurial-6.6.2-r2.ebuild 8122 BLAKE2B 507a624e83db7efbee20fbbeea87d805f6988765f51587f5435cc4ed34aa5695d2722ab5bc8b1bfac35765749c5e04c0738243839cbc3c848607e21dcc69c204 SHA512 d4cc3a25456df0d239914da9a911f4c8bdf9d40ea3c0de3444817797c2f440eeb390f5fd71af984f8d2e947ad4bac0caa3a196445d2f780f01856d909b9091b2 +EBUILD mercurial-6.7.4-r2.ebuild 8360 BLAKE2B fb630c6ff9bc36010b1f32733bee492406b9ef662dbf0fffb42279fe3d73d628d697e03b378e6ea8fcaf6dbd26fcb9305206c6a0ca71906a640f3dbc7f76e298 SHA512 68368549c508956cbf5aebf58c9ed958e00eb93f8ee864284c8bf847685bdc143341808b4675c0f091e73d3fdc0e64bb4ce8666697dfacc1554b51dca74d8ff6 +EBUILD mercurial-6.8.1-r1.ebuild 8692 BLAKE2B ff5d5264134a46b050449c0cd734ac15a1e8c359747893a460b18fbefbfe2eebfb7319c952914e1429d74855d496b75bdf3d3604f92bda4addbfbbc95f325fad SHA512 e3c76a5f8937fa6640c7aff6812247ac8d15da31beeb685d503334ee9c3cb4e0cc2adb5976cc821c97a51f8f41068c72aaa564c976128f5d7e67748ec5980936 +EBUILD mercurial-9999.ebuild 4769 BLAKE2B ed650a409eec92b335b2e62c9297b897928ed9e3e871af2cb82952dab1ca822784e06317036b0a520d405e69222921444bdd8cfd40b952b6c7dd6d1d1a1667ed SHA512 4cb30b4ea05781d6cd45cca6669b6863bcef2014af1d35d7093e5dce545e5c84accacffc52f23fd2207a57347bbbef810f2a4fbc35185e43ff7a477d7c461c53 MISC metadata.xml 543 BLAKE2B 648353ce40bb4e93585e0f34b7bd7eba764b421ae9962835d2e00ae6e893e1b0c9f7e94e1e3548f098a57f5901840986784e5c7e163679b41f6475ff9ba190ce SHA512 e6850e1b5088298ad42f2a9ce5313a4c974562242ee77e7af5c53bcb91bddb1676a24690a14d67dbac911735aaef462d70019b6fb764e1e17556df29b0ac7e1b diff --git a/dev-vcs/mercurial/mercurial-6.5.3-r1.ebuild b/dev-vcs/mercurial/mercurial-6.5.3-r1.ebuild deleted file mode 100644 index ef5aaf4ea840..000000000000 --- a/dev-vcs/mercurial/mercurial-6.5.3-r1.ebuild +++ /dev/null @@ -1,361 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CARGO_OPTIONAL=1 -DISTUTILS_USE_PEP517="setuptools" -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+)" - -CRATES=" - adler-1.0.2 - ahash-0.8.2 - aho-corasick-0.7.19 - android_system_properties-0.1.5 - atty-0.2.14 - autocfg-1.1.0 - bitflags-1.3.2 - bitmaps-2.1.0 - block-buffer-0.9.0 - block-buffer-0.10.3 - bumpalo-3.11.1 - byteorder-1.4.3 - bytes-cast-0.3.0 - bytes-cast-derive-0.2.0 - cc-1.0.76 - cfg-if-1.0.0 - chrono-0.4.23 - clap-4.0.24 - clap_derive-4.0.21 - clap_lex-0.3.0 - codespan-reporting-0.11.1 - convert_case-0.4.0 - core-foundation-sys-0.8.3 - cpufeatures-0.2.5 - cpython-0.7.1 - crc32fast-1.3.2 - crossbeam-channel-0.5.6 - crossbeam-deque-0.8.2 - crossbeam-epoch-0.9.11 - crossbeam-utils-0.8.12 - crypto-common-0.1.6 - ctor-0.1.26 - cxx-1.0.81 - cxx-build-1.0.81 - cxxbridge-flags-1.0.81 - cxxbridge-macro-1.0.81 - derive_more-0.99.17 - diff-0.1.13 - digest-0.9.0 - digest-0.10.5 - either-1.8.0 - env_logger-0.9.3 - fastrand-1.8.0 - flate2-1.0.24 - format-bytes-0.3.0 - format-bytes-macros-0.4.0 - generic-array-0.14.6 - getrandom-0.1.16 - getrandom-0.2.8 - hashbrown-0.13.1 - heck-0.4.0 - hermit-abi-0.1.19 - hex-0.4.3 - home-0.5.4 - humantime-2.1.0 - iana-time-zone-0.1.53 - iana-time-zone-haiku-0.1.1 - im-rc-15.1.0 - instant-0.1.12 - itertools-0.10.5 - jobserver-0.1.25 - js-sys-0.3.60 - lazy_static-1.4.0 - libc-0.2.137 - libm-0.2.6 - libz-sys-1.1.8 - link-cplusplus-1.0.7 - log-0.4.17 - logging_timer-1.1.0 - logging_timer_proc_macros-1.1.0 - memchr-2.5.0 - memmap2-0.5.8 - memoffset-0.6.5 - miniz_oxide-0.5.4 - num-integer-0.1.45 - num-traits-0.2.15 - num_cpus-1.14.0 - once_cell-1.16.0 - opaque-debug-0.3.0 - os_str_bytes-6.4.0 - output_vt100-0.1.3 - paste-1.0.9 - pkg-config-0.3.26 - ppv-lite86-0.2.17 - pretty_assertions-1.3.0 - proc-macro-error-1.0.4 - proc-macro-error-attr-1.0.4 - proc-macro2-1.0.47 - python3-sys-0.7.1 - quote-1.0.21 - rand-0.7.3 - rand-0.8.5 - rand_chacha-0.2.2 - rand_chacha-0.3.1 - rand_core-0.5.1 - rand_core-0.6.4 - rand_distr-0.4.3 - rand_hc-0.2.0 - rand_pcg-0.3.1 - rand_xoshiro-0.6.0 - rayon-1.7.0 - rayon-core-1.11.0 - redox_syscall-0.2.16 - regex-1.7.0 - regex-syntax-0.6.28 - remove_dir_all-0.5.3 - rustc_version-0.4.0 - same-file-1.0.6 - scopeguard-1.1.0 - scratch-1.0.2 - self_cell-1.0.0 - semver-1.0.14 - sha-1-0.9.8 - sha-1-0.10.0 - sized-chunks-0.6.5 - stable_deref_trait-1.2.0 - static_assertions-1.1.0 - strsim-0.10.0 - syn-1.0.103 - tempfile-3.3.0 - termcolor-1.1.3 - thread_local-1.1.4 - time-0.1.44 - twox-hash-1.6.3 - typenum-1.15.0 - unicode-ident-1.0.5 - unicode-width-0.1.10 - vcpkg-0.2.15 - vcsgraph-0.2.0 - version_check-0.9.4 - wasi-0.9.0+wasi-snapshot-preview1 - wasi-0.10.0+wasi-snapshot-preview1 - wasi-0.11.0+wasi-snapshot-preview1 - wasm-bindgen-0.2.83 - wasm-bindgen-backend-0.2.83 - wasm-bindgen-macro-0.2.83 - wasm-bindgen-macro-support-0.2.83 - wasm-bindgen-shared-0.2.83 - web-sys-0.3.60 - which-4.3.0 - whoami-1.4.0 - winapi-0.3.9 - winapi-i686-pc-windows-gnu-0.4.0 - winapi-util-0.1.5 - winapi-x86_64-pc-windows-gnu-0.4.0 - yansi-0.5.1 - zstd-0.12.3+zstd.1.5.2 - zstd-safe-6.0.4+zstd.1.5.4 - zstd-sys-2.0.7+zstd.1.5.4 -" - -inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing - -DESCRIPTION="Scalable distributed SCM" -HOMEPAGE="https://www.mercurial-scm.org/" -SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz - rust? ( $(cargo_crate_uris ${CRATES}) )" - -LICENSE="GPL-2+ - rust? ( 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~loong ~m68k ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+chg emacs gpg test tk rust" - -BDEPEND="rust? ( ${RUST_DEPEND} )" -RDEPEND=" - app-misc/ca-certificates - gpg? ( app-crypt/gnupg ) - tk? ( dev-lang/tk )" - -DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) - test? ( - app-arch/unzip - dev-python/pygments[${PYTHON_USEDEP}] - )" - -REQUIRED_USE="rust? ( !$(python_gen_useflags 'python3_12') )" - -SITEFILE="70${PN}-gentoo.el" - -RESTRICT="!test? ( test )" - -PATCHES=( "${FILESDIR}/python3.12.patch" ) - -src_unpack() { - default_src_unpack - if use rust; then - local S="${S}/rust/hg-cpython" - cargo_src_unpack - else - # Needed because distutils-r1 install under cargo_env if cargo is inherited - cargo_gen_config - fi -} - -python_prepare_all() { - # fix up logic that won't work in Gentoo Prefix (also won't outside in - # certain cases), bug #362891 - sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die - sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die - - # Build assumes the Rust target directory, which is wrong for us. - sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ - Makefile \ - setup.py \ - tests/run-tests.py \ - || die - - distutils-r1_python_prepare_all -} - -src_compile() { - if use rust; then - pushd rust/hg-cpython || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - distutils-r1_src_compile -} - -python_compile() { - filter-flags -ftracer -ftree-vectorize - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - distutils-r1_python_compile build_ext -} - -python_compile_all() { - rm -r contrib/win32 || die - if use chg; then - emake -C contrib/chg - fi - if use rust; then - pushd rust/rhg || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - if use emacs; then - cd contrib || die - elisp-compile mercurial.el || die "elisp-compile failed!" - fi -} - -src_install() { - distutils-r1_src_install -} - -python_install() { - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - - distutils-r1_python_install build_ext - python_doscript contrib/hg-ssh -} - -python_install_all() { - distutils-r1_python_install_all - - newbashcomp contrib/bash_completion hg - - insinto /usr/share/zsh/site-functions - newins contrib/zsh_completion _hg - - dobin hgeditor - if use tk; then - dobin contrib/hgk - fi - - if use emacs; then - elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" - elisp-make-site-file "${SITEFILE}" - fi - - local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) - - if use chg; then - dobin contrib/chg/chg - doman contrib/chg/chg.1 - RM_CONTRIB+=( chg ) - fi - if use rust; then - dobin "rust/$(cargo_target_dir)/rhg" - fi - - for f in ${RM_CONTRIB[@]}; do - rm -rf contrib/${f} || die - done - - dodoc -r contrib - docompress -x /usr/share/doc/${PF}/contrib - doman doc/*.? - dodoc CONTRIBUTORS hgweb.cgi - - insinto /etc/mercurial/hgrc.d - doins "${FILESDIR}/cacerts.rc" -} - -src_test() { - pushd tests &>/dev/null || die - rm -rf *svn* # Subversion tests fail with 1.5 - rm -f test-archive* # Fails due to verbose tar output changes - rm -f test-convert-baz* # GNU Arch baz - rm -f test-convert-cvs* # CVS - rm -f test-convert-darcs* # Darcs - rm -f test-convert-git* # git - rm -f test-convert-mtn* # monotone - rm -f test-convert-tla* # GNU Arch tla - rm -f test-largefiles* # tends to time out - rm -f test-https* # requires to support tls1.0 - rm -rf test-removeemptydirs* # requires access to access parent directories - if [[ ${EUID} -eq 0 ]]; then - einfo "Removing tests which require user privileges to succeed" - rm -f test-convert* - rm -f test-lock-badness* - rm -f test-permissions* - rm -f test-pull-permission* - rm -f test-journal-exists* - rm -f test-repair-strip* - fi - - popd &>/dev/null || die - distutils-r1_src_test -} - -python_test() { - cd tests || die - PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ - --jobs $(makeopts_jobs) \ - --timeout 0 \ - || die "Tests fail with ${EPYTHON}" -} - -pkg_postinst() { - use emacs && elisp-site-regen - - elog "If you want to convert repositories from other tools using convert" - elog "extension please install correct tool:" - elog " dev-vcs/cvs" - elog " dev-vcs/darcs" - elog " dev-vcs/git" - elog " dev-vcs/monotone" - elog " dev-vcs/subversion" -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-vcs/mercurial/mercurial-6.5.3-r2.ebuild b/dev-vcs/mercurial/mercurial-6.5.3-r2.ebuild new file mode 100644 index 000000000000..933cf0197caa --- /dev/null +++ b/dev-vcs/mercurial/mercurial-6.5.3-r2.ebuild @@ -0,0 +1,368 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CARGO_OPTIONAL=1 +DISTUTILS_USE_PEP517="setuptools" +DISTUTILS_EXT=1 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="threads(+)" + +CRATES=" + adler-1.0.2 + ahash-0.8.2 + aho-corasick-0.7.19 + android_system_properties-0.1.5 + atty-0.2.14 + autocfg-1.1.0 + bitflags-1.3.2 + bitmaps-2.1.0 + block-buffer-0.9.0 + block-buffer-0.10.3 + bumpalo-3.11.1 + byteorder-1.4.3 + bytes-cast-0.3.0 + bytes-cast-derive-0.2.0 + cc-1.0.76 + cfg-if-1.0.0 + chrono-0.4.23 + clap-4.0.24 + clap_derive-4.0.21 + clap_lex-0.3.0 + codespan-reporting-0.11.1 + convert_case-0.4.0 + core-foundation-sys-0.8.3 + cpufeatures-0.2.5 + cpython-0.7.1 + crc32fast-1.3.2 + crossbeam-channel-0.5.6 + crossbeam-deque-0.8.2 + crossbeam-epoch-0.9.11 + crossbeam-utils-0.8.12 + crypto-common-0.1.6 + ctor-0.1.26 + cxx-1.0.81 + cxx-build-1.0.81 + cxxbridge-flags-1.0.81 + cxxbridge-macro-1.0.81 + derive_more-0.99.17 + diff-0.1.13 + digest-0.9.0 + digest-0.10.5 + either-1.8.0 + env_logger-0.9.3 + fastrand-1.8.0 + flate2-1.0.24 + format-bytes-0.3.0 + format-bytes-macros-0.4.0 + generic-array-0.14.6 + getrandom-0.1.16 + getrandom-0.2.8 + hashbrown-0.13.1 + heck-0.4.0 + hermit-abi-0.1.19 + hex-0.4.3 + home-0.5.4 + humantime-2.1.0 + iana-time-zone-0.1.53 + iana-time-zone-haiku-0.1.1 + im-rc-15.1.0 + instant-0.1.12 + itertools-0.10.5 + jobserver-0.1.25 + js-sys-0.3.60 + lazy_static-1.4.0 + libc-0.2.137 + libm-0.2.6 + libz-sys-1.1.8 + link-cplusplus-1.0.7 + log-0.4.17 + logging_timer-1.1.0 + logging_timer_proc_macros-1.1.0 + memchr-2.5.0 + memmap2-0.5.8 + memoffset-0.6.5 + miniz_oxide-0.5.4 + num-integer-0.1.45 + num-traits-0.2.15 + num_cpus-1.14.0 + once_cell-1.16.0 + opaque-debug-0.3.0 + os_str_bytes-6.4.0 + output_vt100-0.1.3 + paste-1.0.9 + pkg-config-0.3.26 + ppv-lite86-0.2.17 + pretty_assertions-1.3.0 + proc-macro-error-1.0.4 + proc-macro-error-attr-1.0.4 + proc-macro2-1.0.47 + python3-sys-0.7.1 + quote-1.0.21 + rand-0.7.3 + rand-0.8.5 + rand_chacha-0.2.2 + rand_chacha-0.3.1 + rand_core-0.5.1 + rand_core-0.6.4 + rand_distr-0.4.3 + rand_hc-0.2.0 + rand_pcg-0.3.1 + rand_xoshiro-0.6.0 + rayon-1.7.0 + rayon-core-1.11.0 + redox_syscall-0.2.16 + regex-1.7.0 + regex-syntax-0.6.28 + remove_dir_all-0.5.3 + rustc_version-0.4.0 + same-file-1.0.6 + scopeguard-1.1.0 + scratch-1.0.2 + self_cell-1.0.0 + semver-1.0.14 + sha-1-0.9.8 + sha-1-0.10.0 + sized-chunks-0.6.5 + stable_deref_trait-1.2.0 + static_assertions-1.1.0 + strsim-0.10.0 + syn-1.0.103 + tempfile-3.3.0 + termcolor-1.1.3 + thread_local-1.1.4 + time-0.1.44 + twox-hash-1.6.3 + typenum-1.15.0 + unicode-ident-1.0.5 + unicode-width-0.1.10 + vcpkg-0.2.15 + vcsgraph-0.2.0 + version_check-0.9.4 + wasi-0.9.0+wasi-snapshot-preview1 + wasi-0.10.0+wasi-snapshot-preview1 + wasi-0.11.0+wasi-snapshot-preview1 + wasm-bindgen-0.2.83 + wasm-bindgen-backend-0.2.83 + wasm-bindgen-macro-0.2.83 + wasm-bindgen-macro-support-0.2.83 + wasm-bindgen-shared-0.2.83 + web-sys-0.3.60 + which-4.3.0 + whoami-1.4.0 + winapi-0.3.9 + winapi-i686-pc-windows-gnu-0.4.0 + winapi-util-0.1.5 + winapi-x86_64-pc-windows-gnu-0.4.0 + yansi-0.5.1 + zstd-0.12.3+zstd.1.5.2 + zstd-safe-6.0.4+zstd.1.5.4 + zstd-sys-2.0.7+zstd.1.5.4 +" + +# for stdsimd +RUST_MAX_VER=1.77.1 + +inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing + +DESCRIPTION="Scalable distributed SCM" +HOMEPAGE="https://www.mercurial-scm.org/" +SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz + rust? ( ${CARGO_CRATE_URIS} )" + +LICENSE="GPL-2+ + rust? ( 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~loong ~m68k ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+chg emacs gpg test tk rust" + +BDEPEND="rust? ( ${RUST_DEPEND} )" +RDEPEND=" + app-misc/ca-certificates + gpg? ( app-crypt/gnupg ) + tk? ( dev-lang/tk )" + +DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) + test? ( + app-arch/unzip + dev-python/pygments[${PYTHON_USEDEP}] + )" + +REQUIRED_USE="rust? ( !$(python_gen_useflags 'python3_12') )" + +SITEFILE="70${PN}-gentoo.el" + +RESTRICT="!test? ( test )" + +PATCHES=( "${FILESDIR}/python3.12.patch" ) + +pkg_setup() { + use rust && rust_pkg_setup +} + +src_unpack() { + default_src_unpack + if use rust; then + local S="${S}/rust/hg-cpython" + cargo_src_unpack + else + # Needed because distutils-r1 install under cargo_env if cargo is inherited + cargo_gen_config + fi +} + +python_prepare_all() { + # fix up logic that won't work in Gentoo Prefix (also won't outside in + # certain cases), bug #362891 + sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die + sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die + + # Build assumes the Rust target directory, which is wrong for us. + sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ + Makefile \ + setup.py \ + tests/run-tests.py \ + || die + + distutils-r1_python_prepare_all +} + +src_compile() { + if use rust; then + pushd rust/hg-cpython || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + distutils-r1_src_compile +} + +python_compile() { + filter-flags -ftracer -ftree-vectorize + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + distutils-r1_python_compile build_ext +} + +python_compile_all() { + rm -r contrib/win32 || die + if use chg; then + emake -C contrib/chg + fi + if use rust; then + pushd rust/rhg || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + if use emacs; then + cd contrib || die + elisp-compile mercurial.el || die "elisp-compile failed!" + fi +} + +src_install() { + distutils-r1_src_install +} + +python_install() { + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + + distutils-r1_python_install build_ext + python_doscript contrib/hg-ssh +} + +python_install_all() { + distutils-r1_python_install_all + + newbashcomp contrib/bash_completion hg + + insinto /usr/share/zsh/site-functions + newins contrib/zsh_completion _hg + + dobin hgeditor + if use tk; then + dobin contrib/hgk + fi + + if use emacs; then + elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" + elisp-make-site-file "${SITEFILE}" + fi + + local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) + + if use chg; then + dobin contrib/chg/chg + doman contrib/chg/chg.1 + RM_CONTRIB+=( chg ) + fi + if use rust; then + dobin "rust/$(cargo_target_dir)/rhg" + fi + + for f in ${RM_CONTRIB[@]}; do + rm -rf contrib/${f} || die + done + + dodoc -r contrib + docompress -x /usr/share/doc/${PF}/contrib + doman doc/*.? + dodoc CONTRIBUTORS hgweb.cgi + + insinto /etc/mercurial/hgrc.d + doins "${FILESDIR}/cacerts.rc" +} + +src_test() { + pushd tests &>/dev/null || die + rm -rf *svn* # Subversion tests fail with 1.5 + rm -f test-archive* # Fails due to verbose tar output changes + rm -f test-convert-baz* # GNU Arch baz + rm -f test-convert-cvs* # CVS + rm -f test-convert-darcs* # Darcs + rm -f test-convert-git* # git + rm -f test-convert-mtn* # monotone + rm -f test-convert-tla* # GNU Arch tla + rm -f test-largefiles* # tends to time out + rm -f test-https* # requires to support tls1.0 + rm -rf test-removeemptydirs* # requires access to access parent directories + if [[ ${EUID} -eq 0 ]]; then + einfo "Removing tests which require user privileges to succeed" + rm -f test-convert* + rm -f test-lock-badness* + rm -f test-permissions* + rm -f test-pull-permission* + rm -f test-journal-exists* + rm -f test-repair-strip* + fi + + popd &>/dev/null || die + distutils-r1_src_test +} + +python_test() { + cd tests || die + PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ + --jobs $(makeopts_jobs) \ + --timeout 0 \ + || die "Tests fail with ${EPYTHON}" +} + +pkg_postinst() { + use emacs && elisp-site-regen + + elog "If you want to convert repositories from other tools using convert" + elog "extension please install correct tool:" + elog " dev-vcs/cvs" + elog " dev-vcs/darcs" + elog " dev-vcs/git" + elog " dev-vcs/monotone" + elog " dev-vcs/subversion" +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-vcs/mercurial/mercurial-6.6.2-r1.ebuild b/dev-vcs/mercurial/mercurial-6.6.2-r1.ebuild deleted file mode 100644 index 08e2955bc986..000000000000 --- a/dev-vcs/mercurial/mercurial-6.6.2-r1.ebuild +++ /dev/null @@ -1,371 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CARGO_OPTIONAL=1 -DISTUTILS_USE_PEP517="setuptools" -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+)" - -CRATES=" - adler@1.0.2 - ahash@0.8.2 - aho-corasick@0.7.19 - android_system_properties@0.1.5 - atty@0.2.14 - autocfg@1.1.0 - bitflags@1.3.2 - bitmaps@2.1.0 - block-buffer@0.9.0 - block-buffer@0.10.3 - bumpalo@3.11.1 - byteorder@1.4.3 - bytes-cast@0.3.0 - bytes-cast-derive@0.2.0 - cc@1.0.76 - cfg-if@1.0.0 - chrono@0.4.23 - clap@4.0.24 - clap_derive@4.0.21 - clap_lex@0.3.0 - codespan-reporting@0.11.1 - convert_case@0.4.0 - core-foundation-sys@0.8.3 - cpufeatures@0.2.5 - cpython@0.7.1 - crc32fast@1.3.2 - crossbeam-channel@0.5.6 - crossbeam-deque@0.8.2 - crossbeam-epoch@0.9.11 - crossbeam-utils@0.8.12 - crypto-common@0.1.6 - ctor@0.1.26 - cxx@1.0.81 - cxx-build@1.0.81 - cxxbridge-flags@1.0.81 - cxxbridge-macro@1.0.81 - derive_more@0.99.17 - diff@0.1.13 - digest@0.9.0 - digest@0.10.5 - either@1.8.0 - env_logger@0.9.3 - fastrand@1.8.0 - flate2@1.0.24 - format-bytes@0.3.0 - format-bytes-macros@0.4.0 - generic-array@0.14.6 - getrandom@0.1.16 - getrandom@0.2.8 - hashbrown@0.12.3 - hashbrown@0.13.1 - heck@0.4.0 - hermit-abi@0.1.19 - hex@0.4.3 - home@0.5.4 - humantime@2.1.0 - iana-time-zone@0.1.53 - iana-time-zone-haiku@0.1.1 - im-rc@15.1.0 - indexmap@1.9.2 - instant@0.1.12 - itertools@0.10.5 - jobserver@0.1.25 - js-sys@0.3.60 - lazy_static@1.4.0 - libc@0.2.137 - libm@0.2.6 - libz-sys@1.1.8 - link-cplusplus@1.0.7 - log@0.4.17 - logging_timer@1.1.0 - logging_timer_proc_macros@1.1.0 - memchr@2.5.0 - memmap2@0.5.8 - memoffset@0.6.5 - miniz_oxide@0.5.4 - nom8@0.2.0 - num-integer@0.1.45 - num-traits@0.2.15 - num_cpus@1.14.0 - once_cell@1.16.0 - opaque-debug@0.3.0 - os_str_bytes@6.4.0 - output_vt100@0.1.3 - paste@1.0.9 - pkg-config@0.3.26 - ppv-lite86@0.2.17 - pretty_assertions@1.3.0 - proc-macro-error@1.0.4 - proc-macro-error-attr@1.0.4 - proc-macro2@1.0.47 - python3-sys@0.7.1 - quote@1.0.21 - rand@0.7.3 - rand@0.8.5 - rand_chacha@0.2.2 - rand_chacha@0.3.1 - rand_core@0.5.1 - rand_core@0.6.4 - rand_distr@0.4.3 - rand_hc@0.2.0 - rand_pcg@0.3.1 - rand_xoshiro@0.6.0 - rayon@1.7.0 - rayon-core@1.11.0 - redox_syscall@0.2.16 - regex@1.7.0 - regex-syntax@0.6.28 - remove_dir_all@0.5.3 - rustc_version@0.4.0 - same-file@1.0.6 - scopeguard@1.1.0 - scratch@1.0.2 - self_cell@1.0.0 - semver@1.0.14 - serde@1.0.152 - serde_derive@1.0.152 - serde_spanned@0.6.1 - sha-1@0.9.8 - sha-1@0.10.0 - sized-chunks@0.6.5 - stable_deref_trait@1.2.0 - static_assertions@1.1.0 - strsim@0.10.0 - syn@1.0.109 - tempfile@3.3.0 - termcolor@1.1.3 - thread_local@1.1.4 - time@0.1.44 - toml@0.6.0 - toml_datetime@0.5.1 - toml_edit@0.18.1 - twox-hash@1.6.3 - typenum@1.15.0 - unicode-ident@1.0.5 - unicode-width@0.1.10 - vcpkg@0.2.15 - vcsgraph@0.2.0 - version_check@0.9.4 - wasi@0.9.0+wasi-snapshot-preview1 - wasi@0.10.0+wasi-snapshot-preview1 - wasi@0.11.0+wasi-snapshot-preview1 - wasm-bindgen@0.2.83 - wasm-bindgen-backend@0.2.83 - wasm-bindgen-macro@0.2.83 - wasm-bindgen-macro-support@0.2.83 - wasm-bindgen-shared@0.2.83 - web-sys@0.3.60 - which@4.3.0 - whoami@1.4.0 - winapi@0.3.9 - winapi-i686-pc-windows-gnu@0.4.0 - winapi-util@0.1.5 - winapi-x86_64-pc-windows-gnu@0.4.0 - yansi@0.5.1 - zstd@0.12.3+zstd.1.5.2 - zstd-safe@6.0.4+zstd.1.5.4 - zstd-sys@2.0.7+zstd.1.5.4 -" - -inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing - -DESCRIPTION="Scalable distributed SCM" -HOMEPAGE="https://www.mercurial-scm.org/" -SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz - rust? ( ${CARGO_CRATE_URIS} )" - -LICENSE="GPL-2+ - rust? ( - 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~loong ~m68k ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+chg emacs gpg test tk rust" - -BDEPEND="rust? ( ${RUST_DEPEND} )" -RDEPEND=" - app-misc/ca-certificates - gpg? ( app-crypt/gnupg ) - tk? ( dev-lang/tk )" - -DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) - test? ( - app-arch/unzip - dev-python/pygments[${PYTHON_USEDEP}] - )" - -REQUIRED_USE="rust? ( !$(python_gen_useflags 'python3_12') )" - -SITEFILE="70${PN}-gentoo.el" - -RESTRICT="!test? ( test )" - -PATCHES=( "${FILESDIR}/python3.12.patch" ) - -src_unpack() { - default_src_unpack - if use rust; then - local S="${S}/rust/hg-cpython" - cargo_src_unpack - else - # Needed because distutils-r1 install under cargo_env if cargo is inherited - cargo_gen_config - fi -} - -python_prepare_all() { - # fix up logic that won't work in Gentoo Prefix (also won't outside in - # certain cases), bug #362891 - sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die - sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die - - # Build assumes the Rust target directory, which is wrong for us. - sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ - Makefile \ - setup.py \ - tests/run-tests.py \ - || die - - distutils-r1_python_prepare_all -} - -src_compile() { - if use rust; then - pushd rust/hg-cpython || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - distutils-r1_src_compile -} - -python_compile() { - filter-flags -ftracer -ftree-vectorize - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - distutils-r1_python_compile build_ext -} - -python_compile_all() { - rm -r contrib/win32 || die - if use chg; then - emake -C contrib/chg - fi - if use rust; then - pushd rust/rhg || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - if use emacs; then - cd contrib || die - elisp-compile mercurial.el || die "elisp-compile failed!" - fi -} - -src_install() { - distutils-r1_src_install -} - -python_install() { - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - - distutils-r1_python_install build_ext - python_doscript contrib/hg-ssh -} - -python_install_all() { - distutils-r1_python_install_all - - newbashcomp contrib/bash_completion hg - - insinto /usr/share/zsh/site-functions - newins contrib/zsh_completion _hg - - dobin hgeditor - if use tk; then - dobin contrib/hgk - fi - - if use emacs; then - elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" - elisp-make-site-file "${SITEFILE}" - fi - - local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) - - if use chg; then - dobin contrib/chg/chg - doman contrib/chg/chg.1 - RM_CONTRIB+=( chg ) - fi - if use rust; then - dobin "rust/$(cargo_target_dir)/rhg" - fi - - for f in ${RM_CONTRIB[@]}; do - rm -rf contrib/${f} || die - done - - dodoc -r contrib - docompress -x /usr/share/doc/${PF}/contrib - doman doc/*.? - dodoc CONTRIBUTORS hgweb.cgi - - insinto /etc/mercurial/hgrc.d - doins "${FILESDIR}/cacerts.rc" -} - -src_test() { - pushd tests &>/dev/null || die - rm -rf *svn* # Subversion tests fail with 1.5 - rm -f test-archive* # Fails due to verbose tar output changes - rm -f test-convert-baz* # GNU Arch baz - rm -f test-convert-cvs* # CVS - rm -f test-convert-darcs* # Darcs - rm -f test-convert-git* # git - rm -f test-convert-mtn* # monotone - rm -f test-convert-tla* # GNU Arch tla - rm -f test-largefiles* # tends to time out - rm -f test-https* # requires to support tls1.0 - rm -rf test-removeemptydirs* # requires access to access parent directories - if [[ ${EUID} -eq 0 ]]; then - einfo "Removing tests which require user privileges to succeed" - rm -f test-convert* - rm -f test-lock-badness* - rm -f test-permissions* - rm -f test-pull-permission* - rm -f test-journal-exists* - rm -f test-repair-strip* - fi - - popd &>/dev/null || die - distutils-r1_src_test -} - -python_test() { - cd tests || die - PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ - --jobs $(makeopts_jobs) \ - --timeout 0 \ - || die "Tests fail with ${EPYTHON}" -} - -pkg_postinst() { - use emacs && elisp-site-regen - - elog "If you want to convert repositories from other tools using convert" - elog "extension please install correct tool:" - elog " dev-vcs/cvs" - elog " dev-vcs/darcs" - elog " dev-vcs/git" - elog " dev-vcs/monotone" - elog " dev-vcs/subversion" -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-vcs/mercurial/mercurial-6.6.2-r2.ebuild b/dev-vcs/mercurial/mercurial-6.6.2-r2.ebuild new file mode 100644 index 000000000000..5d8b7b8bc699 --- /dev/null +++ b/dev-vcs/mercurial/mercurial-6.6.2-r2.ebuild @@ -0,0 +1,378 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CARGO_OPTIONAL=1 +DISTUTILS_USE_PEP517="setuptools" +DISTUTILS_EXT=1 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="threads(+)" + +CRATES=" + adler@1.0.2 + ahash@0.8.2 + aho-corasick@0.7.19 + android_system_properties@0.1.5 + atty@0.2.14 + autocfg@1.1.0 + bitflags@1.3.2 + bitmaps@2.1.0 + block-buffer@0.9.0 + block-buffer@0.10.3 + bumpalo@3.11.1 + byteorder@1.4.3 + bytes-cast@0.3.0 + bytes-cast-derive@0.2.0 + cc@1.0.76 + cfg-if@1.0.0 + chrono@0.4.23 + clap@4.0.24 + clap_derive@4.0.21 + clap_lex@0.3.0 + codespan-reporting@0.11.1 + convert_case@0.4.0 + core-foundation-sys@0.8.3 + cpufeatures@0.2.5 + cpython@0.7.1 + crc32fast@1.3.2 + crossbeam-channel@0.5.6 + crossbeam-deque@0.8.2 + crossbeam-epoch@0.9.11 + crossbeam-utils@0.8.12 + crypto-common@0.1.6 + ctor@0.1.26 + cxx@1.0.81 + cxx-build@1.0.81 + cxxbridge-flags@1.0.81 + cxxbridge-macro@1.0.81 + derive_more@0.99.17 + diff@0.1.13 + digest@0.9.0 + digest@0.10.5 + either@1.8.0 + env_logger@0.9.3 + fastrand@1.8.0 + flate2@1.0.24 + format-bytes@0.3.0 + format-bytes-macros@0.4.0 + generic-array@0.14.6 + getrandom@0.1.16 + getrandom@0.2.8 + hashbrown@0.12.3 + hashbrown@0.13.1 + heck@0.4.0 + hermit-abi@0.1.19 + hex@0.4.3 + home@0.5.4 + humantime@2.1.0 + iana-time-zone@0.1.53 + iana-time-zone-haiku@0.1.1 + im-rc@15.1.0 + indexmap@1.9.2 + instant@0.1.12 + itertools@0.10.5 + jobserver@0.1.25 + js-sys@0.3.60 + lazy_static@1.4.0 + libc@0.2.137 + libm@0.2.6 + libz-sys@1.1.8 + link-cplusplus@1.0.7 + log@0.4.17 + logging_timer@1.1.0 + logging_timer_proc_macros@1.1.0 + memchr@2.5.0 + memmap2@0.5.8 + memoffset@0.6.5 + miniz_oxide@0.5.4 + nom8@0.2.0 + num-integer@0.1.45 + num-traits@0.2.15 + num_cpus@1.14.0 + once_cell@1.16.0 + opaque-debug@0.3.0 + os_str_bytes@6.4.0 + output_vt100@0.1.3 + paste@1.0.9 + pkg-config@0.3.26 + ppv-lite86@0.2.17 + pretty_assertions@1.3.0 + proc-macro-error@1.0.4 + proc-macro-error-attr@1.0.4 + proc-macro2@1.0.47 + python3-sys@0.7.1 + quote@1.0.21 + rand@0.7.3 + rand@0.8.5 + rand_chacha@0.2.2 + rand_chacha@0.3.1 + rand_core@0.5.1 + rand_core@0.6.4 + rand_distr@0.4.3 + rand_hc@0.2.0 + rand_pcg@0.3.1 + rand_xoshiro@0.6.0 + rayon@1.7.0 + rayon-core@1.11.0 + redox_syscall@0.2.16 + regex@1.7.0 + regex-syntax@0.6.28 + remove_dir_all@0.5.3 + rustc_version@0.4.0 + same-file@1.0.6 + scopeguard@1.1.0 + scratch@1.0.2 + self_cell@1.0.0 + semver@1.0.14 + serde@1.0.152 + serde_derive@1.0.152 + serde_spanned@0.6.1 + sha-1@0.9.8 + sha-1@0.10.0 + sized-chunks@0.6.5 + stable_deref_trait@1.2.0 + static_assertions@1.1.0 + strsim@0.10.0 + syn@1.0.109 + tempfile@3.3.0 + termcolor@1.1.3 + thread_local@1.1.4 + time@0.1.44 + toml@0.6.0 + toml_datetime@0.5.1 + toml_edit@0.18.1 + twox-hash@1.6.3 + typenum@1.15.0 + unicode-ident@1.0.5 + unicode-width@0.1.10 + vcpkg@0.2.15 + vcsgraph@0.2.0 + version_check@0.9.4 + wasi@0.9.0+wasi-snapshot-preview1 + wasi@0.10.0+wasi-snapshot-preview1 + wasi@0.11.0+wasi-snapshot-preview1 + wasm-bindgen@0.2.83 + wasm-bindgen-backend@0.2.83 + wasm-bindgen-macro@0.2.83 + wasm-bindgen-macro-support@0.2.83 + wasm-bindgen-shared@0.2.83 + web-sys@0.3.60 + which@4.3.0 + whoami@1.4.0 + winapi@0.3.9 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.5 + winapi-x86_64-pc-windows-gnu@0.4.0 + yansi@0.5.1 + zstd@0.12.3+zstd.1.5.2 + zstd-safe@6.0.4+zstd.1.5.4 + zstd-sys@2.0.7+zstd.1.5.4 +" + +# for stdsimd +RUST_MAX_VER=1.77.1 + +inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing + +DESCRIPTION="Scalable distributed SCM" +HOMEPAGE="https://www.mercurial-scm.org/" +SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz + rust? ( ${CARGO_CRATE_URIS} )" + +LICENSE="GPL-2+ + rust? ( + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~loong ~m68k ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+chg emacs gpg test tk rust" + +BDEPEND="rust? ( ${RUST_DEPEND} )" +RDEPEND=" + app-misc/ca-certificates + gpg? ( app-crypt/gnupg ) + tk? ( dev-lang/tk )" + +DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) + test? ( + app-arch/unzip + dev-python/pygments[${PYTHON_USEDEP}] + )" + +REQUIRED_USE="rust? ( !$(python_gen_useflags 'python3_12') )" + +SITEFILE="70${PN}-gentoo.el" + +RESTRICT="!test? ( test )" + +PATCHES=( "${FILESDIR}/python3.12.patch" ) + +pkg_setup() { + use rust && rust_pkg_setup +} + +src_unpack() { + default_src_unpack + if use rust; then + local S="${S}/rust/hg-cpython" + cargo_src_unpack + else + # Needed because distutils-r1 install under cargo_env if cargo is inherited + cargo_gen_config + fi +} + +python_prepare_all() { + # fix up logic that won't work in Gentoo Prefix (also won't outside in + # certain cases), bug #362891 + sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die + sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die + + # Build assumes the Rust target directory, which is wrong for us. + sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ + Makefile \ + setup.py \ + tests/run-tests.py \ + || die + + distutils-r1_python_prepare_all +} + +src_compile() { + if use rust; then + pushd rust/hg-cpython || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + distutils-r1_src_compile +} + +python_compile() { + filter-flags -ftracer -ftree-vectorize + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + distutils-r1_python_compile build_ext +} + +python_compile_all() { + rm -r contrib/win32 || die + if use chg; then + emake -C contrib/chg + fi + if use rust; then + pushd rust/rhg || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + if use emacs; then + cd contrib || die + elisp-compile mercurial.el || die "elisp-compile failed!" + fi +} + +src_install() { + distutils-r1_src_install +} + +python_install() { + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + + distutils-r1_python_install build_ext + python_doscript contrib/hg-ssh +} + +python_install_all() { + distutils-r1_python_install_all + + newbashcomp contrib/bash_completion hg + + insinto /usr/share/zsh/site-functions + newins contrib/zsh_completion _hg + + dobin hgeditor + if use tk; then + dobin contrib/hgk + fi + + if use emacs; then + elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" + elisp-make-site-file "${SITEFILE}" + fi + + local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) + + if use chg; then + dobin contrib/chg/chg + doman contrib/chg/chg.1 + RM_CONTRIB+=( chg ) + fi + if use rust; then + dobin "rust/$(cargo_target_dir)/rhg" + fi + + for f in ${RM_CONTRIB[@]}; do + rm -rf contrib/${f} || die + done + + dodoc -r contrib + docompress -x /usr/share/doc/${PF}/contrib + doman doc/*.? + dodoc CONTRIBUTORS hgweb.cgi + + insinto /etc/mercurial/hgrc.d + doins "${FILESDIR}/cacerts.rc" +} + +src_test() { + pushd tests &>/dev/null || die + rm -rf *svn* # Subversion tests fail with 1.5 + rm -f test-archive* # Fails due to verbose tar output changes + rm -f test-convert-baz* # GNU Arch baz + rm -f test-convert-cvs* # CVS + rm -f test-convert-darcs* # Darcs + rm -f test-convert-git* # git + rm -f test-convert-mtn* # monotone + rm -f test-convert-tla* # GNU Arch tla + rm -f test-largefiles* # tends to time out + rm -f test-https* # requires to support tls1.0 + rm -rf test-removeemptydirs* # requires access to access parent directories + if [[ ${EUID} -eq 0 ]]; then + einfo "Removing tests which require user privileges to succeed" + rm -f test-convert* + rm -f test-lock-badness* + rm -f test-permissions* + rm -f test-pull-permission* + rm -f test-journal-exists* + rm -f test-repair-strip* + fi + + popd &>/dev/null || die + distutils-r1_src_test +} + +python_test() { + cd tests || die + PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ + --jobs $(makeopts_jobs) \ + --timeout 0 \ + || die "Tests fail with ${EPYTHON}" +} + +pkg_postinst() { + use emacs && elisp-site-regen + + elog "If you want to convert repositories from other tools using convert" + elog "extension please install correct tool:" + elog " dev-vcs/cvs" + elog " dev-vcs/darcs" + elog " dev-vcs/git" + elog " dev-vcs/monotone" + elog " dev-vcs/subversion" +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-vcs/mercurial/mercurial-6.7.4-r1.ebuild b/dev-vcs/mercurial/mercurial-6.7.4-r1.ebuild deleted file mode 100644 index 564e460089e9..000000000000 --- a/dev-vcs/mercurial/mercurial-6.7.4-r1.ebuild +++ /dev/null @@ -1,382 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CARGO_OPTIONAL=1 -DISTUTILS_USE_PEP517="setuptools" -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+)" - -CRATES=" - adler@1.0.2 - ahash@0.8.2 - aho-corasick@0.7.19 - android-tzdata@0.1.1 - android_system_properties@0.1.5 - atty@0.2.14 - autocfg@1.1.0 - bitflags@1.3.2 - bitmaps@2.1.0 - bitvec@1.0.1 - block-buffer@0.9.0 - block-buffer@0.10.3 - bumpalo@3.11.1 - byteorder@1.4.3 - bytes-cast@0.3.0 - bytes-cast-derive@0.2.0 - cc@1.0.76 - cfg-if@1.0.0 - chrono@0.4.34 - clap@4.0.24 - clap_derive@4.0.21 - clap_lex@0.3.0 - codespan-reporting@0.11.1 - convert_case@0.4.0 - core-foundation-sys@0.8.3 - cpufeatures@0.2.5 - cpython@0.7.1 - crc32fast@1.3.2 - crossbeam-channel@0.5.6 - crossbeam-deque@0.8.2 - crossbeam-epoch@0.9.11 - crossbeam-utils@0.8.12 - crypto-common@0.1.6 - ctor@0.1.26 - cxx@1.0.81 - cxx-build@1.0.81 - cxxbridge-flags@1.0.81 - cxxbridge-macro@1.0.81 - derive_more@0.99.17 - diff@0.1.13 - digest@0.9.0 - digest@0.10.5 - either@1.8.0 - env_logger@0.9.3 - fastrand@1.8.0 - flate2@1.0.24 - format-bytes@0.3.0 - format-bytes-macros@0.4.0 - funty@2.0.0 - generic-array@0.14.6 - getrandom@0.1.16 - getrandom@0.2.8 - hashbrown@0.12.3 - hashbrown@0.13.1 - heck@0.4.0 - hermit-abi@0.1.19 - hex@0.4.3 - home@0.5.4 - humantime@2.1.0 - iana-time-zone@0.1.53 - iana-time-zone-haiku@0.1.1 - im-rc@15.1.0 - indexmap@1.9.2 - instant@0.1.12 - itertools@0.10.5 - jobserver@0.1.25 - js-sys@0.3.60 - lazy_static@1.4.0 - libc@0.2.137 - libm@0.2.6 - libz-sys@1.1.8 - link-cplusplus@1.0.7 - log@0.4.17 - logging_timer@1.1.0 - logging_timer_proc_macros@1.1.0 - memchr@2.5.0 - memmap2@0.5.8 - memoffset@0.6.5 - miniz_oxide@0.5.4 - nom8@0.2.0 - num-traits@0.2.15 - num_cpus@1.14.0 - once_cell@1.16.0 - opaque-debug@0.3.0 - os_str_bytes@6.4.0 - output_vt100@0.1.3 - paste@1.0.9 - pkg-config@0.3.26 - ppv-lite86@0.2.17 - pretty_assertions@1.3.0 - proc-macro-error@1.0.4 - proc-macro-error-attr@1.0.4 - proc-macro2@1.0.47 - python3-sys@0.7.1 - quote@1.0.21 - radium@0.7.0 - rand@0.7.3 - rand@0.8.5 - rand_chacha@0.2.2 - rand_chacha@0.3.1 - rand_core@0.5.1 - rand_core@0.6.4 - rand_distr@0.4.3 - rand_hc@0.2.0 - rand_pcg@0.3.1 - rand_xoshiro@0.6.0 - rayon@1.7.0 - rayon-core@1.11.0 - redox_syscall@0.2.16 - regex@1.7.0 - regex-syntax@0.6.28 - remove_dir_all@0.5.3 - rustc_version@0.4.0 - same-file@1.0.6 - scopeguard@1.1.0 - scratch@1.0.2 - self_cell@1.0.0 - semver@1.0.14 - serde@1.0.152 - serde_derive@1.0.152 - serde_spanned@0.6.1 - sha-1@0.9.8 - sha-1@0.10.0 - sized-chunks@0.6.5 - stable_deref_trait@1.2.0 - static_assertions@1.1.0 - strsim@0.10.0 - syn@1.0.109 - tap@1.0.1 - tempfile@3.3.0 - termcolor@1.1.3 - thread_local@1.1.4 - toml@0.6.0 - toml_datetime@0.5.1 - toml_edit@0.18.1 - twox-hash@1.6.3 - typenum@1.15.0 - unicode-ident@1.0.5 - unicode-width@0.1.10 - vcpkg@0.2.15 - vcsgraph@0.2.0 - version_check@0.9.4 - wasi@0.9.0+wasi-snapshot-preview1 - wasi@0.11.0+wasi-snapshot-preview1 - wasm-bindgen@0.2.83 - wasm-bindgen-backend@0.2.83 - wasm-bindgen-macro@0.2.83 - wasm-bindgen-macro-support@0.2.83 - wasm-bindgen-shared@0.2.83 - web-sys@0.3.60 - which@4.3.0 - whoami@1.4.0 - winapi@0.3.9 - winapi-i686-pc-windows-gnu@0.4.0 - winapi-util@0.1.5 - winapi-x86_64-pc-windows-gnu@0.4.0 - windows-targets@0.52.0 - windows_aarch64_gnullvm@0.52.0 - windows_aarch64_msvc@0.52.0 - windows_i686_gnu@0.52.0 - windows_i686_msvc@0.52.0 - windows_x86_64_gnu@0.52.0 - windows_x86_64_gnullvm@0.52.0 - windows_x86_64_msvc@0.52.0 - wyz@0.5.1 - yansi@0.5.1 - zstd@0.12.3+zstd.1.5.2 - zstd-safe@6.0.4+zstd.1.5.4 - zstd-sys@2.0.7+zstd.1.5.4 -" - -inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing - -DESCRIPTION="Scalable distributed SCM" -HOMEPAGE="https://www.mercurial-scm.org/" -SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz - rust? ( ${CARGO_CRATE_URIS} )" - -LICENSE="GPL-2+ - rust? ( - 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~loong ~m68k ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+chg emacs gpg test tk rust" - -BDEPEND="rust? ( ${RUST_DEPEND} )" -RDEPEND=" - app-misc/ca-certificates - gpg? ( app-crypt/gnupg ) - tk? ( dev-lang/tk )" - -DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) - test? ( - app-arch/unzip - dev-python/pygments[${PYTHON_USEDEP}] - )" - -REQUIRED_USE="rust? ( !$(python_gen_useflags 'python3_12') )" - -SITEFILE="70${PN}-gentoo.el" - -RESTRICT="!test? ( test )" - -PATCHES=( "${FILESDIR}/python3.12.patch" ) - -src_unpack() { - default_src_unpack - if use rust; then - local S="${S}/rust/hg-cpython" - cargo_src_unpack - else - # Needed because distutils-r1 install under cargo_env if cargo is inherited - cargo_gen_config - fi -} - -python_prepare_all() { - # fix up logic that won't work in Gentoo Prefix (also won't outside in - # certain cases), bug #362891 - sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die - sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die - - # Build assumes the Rust target directory, which is wrong for us. - sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ - Makefile \ - setup.py \ - tests/run-tests.py \ - || die - - distutils-r1_python_prepare_all -} - -src_compile() { - if use rust; then - pushd rust/hg-cpython || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - distutils-r1_src_compile -} - -python_compile() { - filter-flags -ftracer -ftree-vectorize - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - distutils-r1_python_compile build_ext -} - -python_compile_all() { - rm -r contrib/win32 || die - if use chg; then - emake -C contrib/chg - fi - if use rust; then - pushd rust/rhg || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - if use emacs; then - cd contrib || die - elisp-compile mercurial.el || die "elisp-compile failed!" - fi -} - -src_install() { - distutils-r1_src_install -} - -python_install() { - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - - distutils-r1_python_install build_ext - python_doscript contrib/hg-ssh -} - -python_install_all() { - distutils-r1_python_install_all - - newbashcomp contrib/bash_completion hg - - insinto /usr/share/zsh/site-functions - newins contrib/zsh_completion _hg - - dobin hgeditor - if use tk; then - dobin contrib/hgk - fi - - if use emacs; then - elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" - elisp-make-site-file "${SITEFILE}" - fi - - local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) - - if use chg; then - dobin contrib/chg/chg - doman contrib/chg/chg.1 - RM_CONTRIB+=( chg ) - fi - if use rust; then - dobin "rust/$(cargo_target_dir)/rhg" - fi - - for f in ${RM_CONTRIB[@]}; do - rm -rf contrib/${f} || die - done - - dodoc -r contrib - docompress -x /usr/share/doc/${PF}/contrib - doman doc/*.? - dodoc CONTRIBUTORS hgweb.cgi - - insinto /etc/mercurial/hgrc.d - doins "${FILESDIR}/cacerts.rc" -} - -src_test() { - pushd tests &>/dev/null || die - rm -rf *svn* # Subversion tests fail with 1.5 - rm -f test-archive* # Fails due to verbose tar output changes - rm -f test-convert-baz* # GNU Arch baz - rm -f test-convert-cvs* # CVS - rm -f test-convert-darcs* # Darcs - rm -f test-convert-git* # git - rm -f test-convert-mtn* # monotone - rm -f test-convert-tla* # GNU Arch tla - rm -f test-largefiles* # tends to time out - rm -f test-https* # requires to support tls1.0 - rm -rf test-removeemptydirs* # requires access to access parent directories - if [[ ${EUID} -eq 0 ]]; then - einfo "Removing tests which require user privileges to succeed" - rm -f test-convert* - rm -f test-lock-badness* - rm -f test-permissions* - rm -f test-pull-permission* - rm -f test-journal-exists* - rm -f test-repair-strip* - fi - - popd &>/dev/null || die - distutils-r1_src_test -} - -python_test() { - cd tests || die - PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ - --jobs $(makeopts_jobs) \ - --timeout 0 \ - || die "Tests fail with ${EPYTHON}" -} - -pkg_postinst() { - use emacs && elisp-site-regen - - elog "If you want to convert repositories from other tools using convert" - elog "extension please install correct tool:" - elog " dev-vcs/cvs" - elog " dev-vcs/darcs" - elog " dev-vcs/git" - elog " dev-vcs/monotone" - elog " dev-vcs/subversion" -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-vcs/mercurial/mercurial-6.7.4-r2.ebuild b/dev-vcs/mercurial/mercurial-6.7.4-r2.ebuild new file mode 100644 index 000000000000..5654ea2bc44d --- /dev/null +++ b/dev-vcs/mercurial/mercurial-6.7.4-r2.ebuild @@ -0,0 +1,389 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CARGO_OPTIONAL=1 +DISTUTILS_USE_PEP517="setuptools" +DISTUTILS_EXT=1 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="threads(+)" + +CRATES=" + adler@1.0.2 + ahash@0.8.2 + aho-corasick@0.7.19 + android-tzdata@0.1.1 + android_system_properties@0.1.5 + atty@0.2.14 + autocfg@1.1.0 + bitflags@1.3.2 + bitmaps@2.1.0 + bitvec@1.0.1 + block-buffer@0.9.0 + block-buffer@0.10.3 + bumpalo@3.11.1 + byteorder@1.4.3 + bytes-cast@0.3.0 + bytes-cast-derive@0.2.0 + cc@1.0.76 + cfg-if@1.0.0 + chrono@0.4.34 + clap@4.0.24 + clap_derive@4.0.21 + clap_lex@0.3.0 + codespan-reporting@0.11.1 + convert_case@0.4.0 + core-foundation-sys@0.8.3 + cpufeatures@0.2.5 + cpython@0.7.1 + crc32fast@1.3.2 + crossbeam-channel@0.5.6 + crossbeam-deque@0.8.2 + crossbeam-epoch@0.9.11 + crossbeam-utils@0.8.12 + crypto-common@0.1.6 + ctor@0.1.26 + cxx@1.0.81 + cxx-build@1.0.81 + cxxbridge-flags@1.0.81 + cxxbridge-macro@1.0.81 + derive_more@0.99.17 + diff@0.1.13 + digest@0.9.0 + digest@0.10.5 + either@1.8.0 + env_logger@0.9.3 + fastrand@1.8.0 + flate2@1.0.24 + format-bytes@0.3.0 + format-bytes-macros@0.4.0 + funty@2.0.0 + generic-array@0.14.6 + getrandom@0.1.16 + getrandom@0.2.8 + hashbrown@0.12.3 + hashbrown@0.13.1 + heck@0.4.0 + hermit-abi@0.1.19 + hex@0.4.3 + home@0.5.4 + humantime@2.1.0 + iana-time-zone@0.1.53 + iana-time-zone-haiku@0.1.1 + im-rc@15.1.0 + indexmap@1.9.2 + instant@0.1.12 + itertools@0.10.5 + jobserver@0.1.25 + js-sys@0.3.60 + lazy_static@1.4.0 + libc@0.2.137 + libm@0.2.6 + libz-sys@1.1.8 + link-cplusplus@1.0.7 + log@0.4.17 + logging_timer@1.1.0 + logging_timer_proc_macros@1.1.0 + memchr@2.5.0 + memmap2@0.5.8 + memoffset@0.6.5 + miniz_oxide@0.5.4 + nom8@0.2.0 + num-traits@0.2.15 + num_cpus@1.14.0 + once_cell@1.16.0 + opaque-debug@0.3.0 + os_str_bytes@6.4.0 + output_vt100@0.1.3 + paste@1.0.9 + pkg-config@0.3.26 + ppv-lite86@0.2.17 + pretty_assertions@1.3.0 + proc-macro-error@1.0.4 + proc-macro-error-attr@1.0.4 + proc-macro2@1.0.47 + python3-sys@0.7.1 + quote@1.0.21 + radium@0.7.0 + rand@0.7.3 + rand@0.8.5 + rand_chacha@0.2.2 + rand_chacha@0.3.1 + rand_core@0.5.1 + rand_core@0.6.4 + rand_distr@0.4.3 + rand_hc@0.2.0 + rand_pcg@0.3.1 + rand_xoshiro@0.6.0 + rayon@1.7.0 + rayon-core@1.11.0 + redox_syscall@0.2.16 + regex@1.7.0 + regex-syntax@0.6.28 + remove_dir_all@0.5.3 + rustc_version@0.4.0 + same-file@1.0.6 + scopeguard@1.1.0 + scratch@1.0.2 + self_cell@1.0.0 + semver@1.0.14 + serde@1.0.152 + serde_derive@1.0.152 + serde_spanned@0.6.1 + sha-1@0.9.8 + sha-1@0.10.0 + sized-chunks@0.6.5 + stable_deref_trait@1.2.0 + static_assertions@1.1.0 + strsim@0.10.0 + syn@1.0.109 + tap@1.0.1 + tempfile@3.3.0 + termcolor@1.1.3 + thread_local@1.1.4 + toml@0.6.0 + toml_datetime@0.5.1 + toml_edit@0.18.1 + twox-hash@1.6.3 + typenum@1.15.0 + unicode-ident@1.0.5 + unicode-width@0.1.10 + vcpkg@0.2.15 + vcsgraph@0.2.0 + version_check@0.9.4 + wasi@0.9.0+wasi-snapshot-preview1 + wasi@0.11.0+wasi-snapshot-preview1 + wasm-bindgen@0.2.83 + wasm-bindgen-backend@0.2.83 + wasm-bindgen-macro@0.2.83 + wasm-bindgen-macro-support@0.2.83 + wasm-bindgen-shared@0.2.83 + web-sys@0.3.60 + which@4.3.0 + whoami@1.4.0 + winapi@0.3.9 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.5 + winapi-x86_64-pc-windows-gnu@0.4.0 + windows-targets@0.52.0 + windows_aarch64_gnullvm@0.52.0 + windows_aarch64_msvc@0.52.0 + windows_i686_gnu@0.52.0 + windows_i686_msvc@0.52.0 + windows_x86_64_gnu@0.52.0 + windows_x86_64_gnullvm@0.52.0 + windows_x86_64_msvc@0.52.0 + wyz@0.5.1 + yansi@0.5.1 + zstd@0.12.3+zstd.1.5.2 + zstd-safe@6.0.4+zstd.1.5.4 + zstd-sys@2.0.7+zstd.1.5.4 +" + +# for stdsimd +RUST_MAX_VER=1.77.1 + +inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing + +DESCRIPTION="Scalable distributed SCM" +HOMEPAGE="https://www.mercurial-scm.org/" +SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz + rust? ( ${CARGO_CRATE_URIS} )" + +LICENSE="GPL-2+ + rust? ( + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" +SLOT="0" +KEYWORDS="~alpha amd64 arm arm64 ~loong ~m68k ~mips ppc ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+chg emacs gpg test tk rust" + +BDEPEND="rust? ( ${RUST_DEPEND} )" +RDEPEND=" + app-misc/ca-certificates + gpg? ( app-crypt/gnupg ) + tk? ( dev-lang/tk )" + +DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) + test? ( + app-arch/unzip + dev-python/pygments[${PYTHON_USEDEP}] + )" + +REQUIRED_USE="rust? ( !$(python_gen_useflags 'python3_12') )" + +SITEFILE="70${PN}-gentoo.el" + +RESTRICT="!test? ( test )" + +PATCHES=( "${FILESDIR}/python3.12.patch" ) + +pkg_setup() { + use rust && rust_pkg_setup +} + +src_unpack() { + default_src_unpack + if use rust; then + local S="${S}/rust/hg-cpython" + cargo_src_unpack + else + # Needed because distutils-r1 install under cargo_env if cargo is inherited + cargo_gen_config + fi +} + +python_prepare_all() { + # fix up logic that won't work in Gentoo Prefix (also won't outside in + # certain cases), bug #362891 + sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die + sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die + + # Build assumes the Rust target directory, which is wrong for us. + sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ + Makefile \ + setup.py \ + tests/run-tests.py \ + || die + + distutils-r1_python_prepare_all +} + +src_compile() { + if use rust; then + pushd rust/hg-cpython || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + distutils-r1_src_compile +} + +python_compile() { + filter-flags -ftracer -ftree-vectorize + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + distutils-r1_python_compile build_ext +} + +python_compile_all() { + rm -r contrib/win32 || die + if use chg; then + emake -C contrib/chg + fi + if use rust; then + pushd rust/rhg || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + if use emacs; then + cd contrib || die + elisp-compile mercurial.el || die "elisp-compile failed!" + fi +} + +src_install() { + distutils-r1_src_install +} + +python_install() { + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + + distutils-r1_python_install build_ext + python_doscript contrib/hg-ssh +} + +python_install_all() { + distutils-r1_python_install_all + + newbashcomp contrib/bash_completion hg + + insinto /usr/share/zsh/site-functions + newins contrib/zsh_completion _hg + + dobin hgeditor + if use tk; then + dobin contrib/hgk + fi + + if use emacs; then + elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" + elisp-make-site-file "${SITEFILE}" + fi + + local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) + + if use chg; then + dobin contrib/chg/chg + doman contrib/chg/chg.1 + RM_CONTRIB+=( chg ) + fi + if use rust; then + dobin "rust/$(cargo_target_dir)/rhg" + fi + + for f in ${RM_CONTRIB[@]}; do + rm -rf contrib/${f} || die + done + + dodoc -r contrib + docompress -x /usr/share/doc/${PF}/contrib + doman doc/*.? + dodoc CONTRIBUTORS hgweb.cgi + + insinto /etc/mercurial/hgrc.d + doins "${FILESDIR}/cacerts.rc" +} + +src_test() { + pushd tests &>/dev/null || die + rm -rf *svn* # Subversion tests fail with 1.5 + rm -f test-archive* # Fails due to verbose tar output changes + rm -f test-convert-baz* # GNU Arch baz + rm -f test-convert-cvs* # CVS + rm -f test-convert-darcs* # Darcs + rm -f test-convert-git* # git + rm -f test-convert-mtn* # monotone + rm -f test-convert-tla* # GNU Arch tla + rm -f test-largefiles* # tends to time out + rm -f test-https* # requires to support tls1.0 + rm -rf test-removeemptydirs* # requires access to access parent directories + if [[ ${EUID} -eq 0 ]]; then + einfo "Removing tests which require user privileges to succeed" + rm -f test-convert* + rm -f test-lock-badness* + rm -f test-permissions* + rm -f test-pull-permission* + rm -f test-journal-exists* + rm -f test-repair-strip* + fi + + popd &>/dev/null || die + distutils-r1_src_test +} + +python_test() { + cd tests || die + PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ + --jobs $(makeopts_jobs) \ + --timeout 0 \ + || die "Tests fail with ${EPYTHON}" +} + +pkg_postinst() { + use emacs && elisp-site-regen + + elog "If you want to convert repositories from other tools using convert" + elog "extension please install correct tool:" + elog " dev-vcs/cvs" + elog " dev-vcs/darcs" + elog " dev-vcs/git" + elog " dev-vcs/monotone" + elog " dev-vcs/subversion" +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-vcs/mercurial/mercurial-6.8.1-r1.ebuild b/dev-vcs/mercurial/mercurial-6.8.1-r1.ebuild new file mode 100644 index 000000000000..5673dd914f40 --- /dev/null +++ b/dev-vcs/mercurial/mercurial-6.8.1-r1.ebuild @@ -0,0 +1,405 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CARGO_OPTIONAL=1 +DISTUTILS_USE_PEP517="setuptools" +DISTUTILS_EXT=1 +PYTHON_COMPAT=( python3_{10..12} ) +PYTHON_REQ_USE="threads(+)" + +CRATES=" + adler@1.0.2 + ahash@0.8.2 + aho-corasick@0.7.19 + android-tzdata@0.1.1 + android_system_properties@0.1.5 + atty@0.2.14 + autocfg@1.1.0 + bitflags@1.3.2 + bitflags@2.6.0 + bitmaps@2.1.0 + bitvec@1.0.1 + block-buffer@0.9.0 + block-buffer@0.10.3 + bstr@1.6.0 + bumpalo@3.11.1 + byteorder@1.4.3 + bytes-cast@0.3.0 + bytes-cast-derive@0.2.0 + cc@1.0.76 + cfg-if@1.0.0 + chrono@0.4.34 + clap@4.0.24 + clap_derive@4.0.21 + clap_lex@0.3.0 + codespan-reporting@0.11.1 + convert_case@0.4.0 + core-foundation-sys@0.8.3 + cpufeatures@0.2.5 + cpython@0.7.2 + crc32fast@1.3.2 + crossbeam-channel@0.5.6 + crossbeam-deque@0.8.2 + crossbeam-epoch@0.9.11 + crossbeam-utils@0.8.12 + crypto-common@0.1.6 + ctor@0.1.26 + cxx@1.0.81 + cxx-build@1.0.81 + cxxbridge-flags@1.0.81 + cxxbridge-macro@1.0.81 + derive_more@0.99.17 + diff@0.1.13 + digest@0.9.0 + digest@0.10.5 + dirs@5.0.1 + dirs-sys@0.4.1 + either@1.8.0 + env_logger@0.9.3 + fastrand@1.8.0 + flate2@1.0.24 + format-bytes@0.3.0 + format-bytes-macros@0.4.0 + funty@2.0.0 + generic-array@0.14.6 + getrandom@0.1.16 + getrandom@0.2.8 + hashbrown@0.12.3 + hashbrown@0.13.1 + heck@0.4.0 + hermit-abi@0.1.19 + hex@0.4.3 + home@0.5.4 + humantime@2.1.0 + iana-time-zone@0.1.53 + iana-time-zone-haiku@0.1.1 + im-rc@15.1.0 + indexmap@1.9.2 + instant@0.1.12 + itertools@0.10.5 + jobserver@0.1.25 + js-sys@0.3.60 + lazy_static@1.4.0 + libc@0.2.137 + libm@0.2.6 + libredox@0.1.3 + libz-sys@1.1.8 + link-cplusplus@1.0.7 + log@0.4.17 + logging_timer@1.1.0 + logging_timer_proc_macros@1.1.0 + memchr@2.5.0 + memmap2@0.5.8 + memoffset@0.6.5 + miniz_oxide@0.5.4 + nom8@0.2.0 + num-traits@0.2.15 + num_cpus@1.14.0 + once_cell@1.16.0 + opaque-debug@0.3.0 + option-ext@0.2.0 + os_str_bytes@6.4.0 + output_vt100@0.1.3 + paste@1.0.9 + pkg-config@0.3.26 + ppv-lite86@0.2.17 + pretty_assertions@1.3.0 + proc-macro-error@1.0.4 + proc-macro-error-attr@1.0.4 + proc-macro2@1.0.47 + python3-sys@0.7.2 + quote@1.0.21 + radium@0.7.0 + rand@0.7.3 + rand@0.8.5 + rand_chacha@0.2.2 + rand_chacha@0.3.1 + rand_core@0.5.1 + rand_core@0.6.4 + rand_distr@0.4.3 + rand_hc@0.2.0 + rand_pcg@0.3.1 + rand_xoshiro@0.6.0 + rayon@1.7.0 + rayon-core@1.11.0 + redox_syscall@0.2.16 + redox_users@0.4.5 + regex@1.7.0 + regex-automata@0.3.9 + regex-syntax@0.6.28 + remove_dir_all@0.5.3 + rustc_version@0.4.0 + same-file@1.0.6 + scopeguard@1.1.0 + scratch@1.0.2 + self_cell@1.0.0 + semver@1.0.14 + serde@1.0.152 + serde_derive@1.0.152 + serde_spanned@0.6.1 + sha-1@0.9.8 + sha-1@0.10.0 + shellexpand@3.1.0 + sized-chunks@0.6.5 + stable_deref_trait@1.2.0 + static_assertions@1.1.0 + strsim@0.10.0 + syn@1.0.109 + tap@1.0.1 + tempfile@3.3.0 + termcolor@1.1.3 + thiserror@1.0.39 + thiserror-impl@1.0.39 + thread_local@1.1.4 + toml@0.6.0 + toml_datetime@0.5.1 + toml_edit@0.18.1 + twox-hash@1.6.3 + typenum@1.15.0 + unicode-ident@1.0.5 + unicode-width@0.1.10 + vcpkg@0.2.15 + vcsgraph@0.2.0 + version_check@0.9.4 + wasi@0.9.0+wasi-snapshot-preview1 + wasi@0.11.0+wasi-snapshot-preview1 + wasm-bindgen@0.2.83 + wasm-bindgen-backend@0.2.83 + wasm-bindgen-macro@0.2.83 + wasm-bindgen-macro-support@0.2.83 + wasm-bindgen-shared@0.2.83 + web-sys@0.3.60 + which@4.3.0 + whoami@1.4.0 + winapi@0.3.9 + winapi-i686-pc-windows-gnu@0.4.0 + winapi-util@0.1.5 + winapi-x86_64-pc-windows-gnu@0.4.0 + windows-sys@0.48.0 + windows-targets@0.48.5 + windows-targets@0.52.0 + windows_aarch64_gnullvm@0.48.5 + windows_aarch64_gnullvm@0.52.0 + windows_aarch64_msvc@0.48.5 + windows_aarch64_msvc@0.52.0 + windows_i686_gnu@0.48.5 + windows_i686_gnu@0.52.0 + windows_i686_msvc@0.48.5 + windows_i686_msvc@0.52.0 + windows_x86_64_gnu@0.48.5 + windows_x86_64_gnu@0.52.0 + windows_x86_64_gnullvm@0.48.5 + windows_x86_64_gnullvm@0.52.0 + windows_x86_64_msvc@0.48.5 + windows_x86_64_msvc@0.52.0 + wyz@0.5.1 + yansi@0.5.1 + zstd@0.12.3+zstd.1.5.2 + zstd-safe@6.0.4+zstd.1.5.4 + zstd-sys@2.0.7+zstd.1.5.4 +" + +# for stdsimd +RUST_MAX_VER=1.77.1 + +inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing + +DESCRIPTION="Scalable distributed SCM" +HOMEPAGE="https://www.mercurial-scm.org/" +SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz + rust? ( ${CARGO_CRATE_URIS} )" + +LICENSE="GPL-2+ + rust? ( + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="+chg emacs gpg test tk rust" + +BDEPEND="rust? ( ${RUST_DEPEND} )" +RDEPEND=" + app-misc/ca-certificates + gpg? ( app-crypt/gnupg ) + tk? ( dev-lang/tk )" + +DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) + test? ( + app-arch/unzip + dev-python/pygments[${PYTHON_USEDEP}] + )" + +SITEFILE="70${PN}-gentoo.el" + +RESTRICT="!test? ( test )" + +pkg_setup() { + use rust && rust_pkg_setup +} + +src_unpack() { + default_src_unpack + if use rust; then + local S="${S}/rust/hg-cpython" + cargo_src_unpack + else + # Needed because distutils-r1 install under cargo_env if cargo is inherited + cargo_gen_config + fi +} + +python_prepare_all() { + # fix up logic that won't work in Gentoo Prefix (also won't outside in + # certain cases), bug #362891 + sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die + sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die + + # Build assumes the Rust target directory, which is wrong for us. + sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ + Makefile \ + setup.py \ + tests/run-tests.py \ + || die + + distutils-r1_python_prepare_all +} + +src_compile() { + if use rust; then + pushd rust/hg-cpython || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + distutils-r1_src_compile +} + +python_compile() { + filter-flags -ftracer -ftree-vectorize + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + distutils-r1_python_compile build_ext +} + +python_compile_all() { + rm -r contrib/win32 || die + if use chg; then + emake -C contrib/chg + fi + if use rust; then + pushd rust/rhg || die + cargo_src_compile --no-default-features --jobs $(makeopts_jobs) + popd || die + fi + if use emacs; then + cd contrib || die + elisp-compile mercurial.el || die "elisp-compile failed!" + fi +} + +src_install() { + distutils-r1_src_install +} + +python_install() { + if use rust; then + local -x HGWITHRUSTEXT="cpython" + fi + + distutils-r1_python_install build_ext + python_doscript contrib/hg-ssh +} + +python_install_all() { + distutils-r1_python_install_all + + newbashcomp contrib/bash_completion hg + + insinto /usr/share/zsh/site-functions + newins contrib/zsh_completion _hg + + dobin hgeditor + if use tk; then + dobin contrib/hgk + fi + + if use emacs; then + elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" + elisp-make-site-file "${SITEFILE}" + fi + + local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) + + if use chg; then + dobin contrib/chg/chg + doman contrib/chg/chg.1 + RM_CONTRIB+=( chg ) + fi + if use rust; then + dobin "rust/$(cargo_target_dir)/rhg" + fi + + for f in ${RM_CONTRIB[@]}; do + rm -rf contrib/${f} || die + done + + dodoc -r contrib + docompress -x /usr/share/doc/${PF}/contrib + doman doc/*.? + dodoc CONTRIBUTORS hgweb.cgi + + insinto /etc/mercurial/hgrc.d + doins "${FILESDIR}/cacerts.rc" +} + +src_test() { + pushd tests &>/dev/null || die + rm -rf *svn* # Subversion tests fail with 1.5 + rm -f test-archive* # Fails due to verbose tar output changes + rm -f test-convert-baz* # GNU Arch baz + rm -f test-convert-cvs* # CVS + rm -f test-convert-darcs* # Darcs + rm -f test-convert-git* # git + rm -f test-convert-mtn* # monotone + rm -f test-convert-tla* # GNU Arch tla + rm -f test-largefiles* # tends to time out + rm -f test-https* # requires to support tls1.0 + rm -rf test-removeemptydirs* # requires access to access parent directories + if [[ ${EUID} -eq 0 ]]; then + einfo "Removing tests which require user privileges to succeed" + rm -f test-convert* + rm -f test-lock-badness* + rm -f test-permissions* + rm -f test-pull-permission* + rm -f test-journal-exists* + rm -f test-repair-strip* + fi + + popd &>/dev/null || die + distutils-r1_src_test +} + +python_test() { + cd tests || die + PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ + --jobs $(makeopts_jobs) \ + --timeout 0 \ + || die "Tests fail with ${EPYTHON}" +} + +pkg_postinst() { + use emacs && elisp-site-regen + + elog "If you want to convert repositories from other tools using convert" + elog "extension please install correct tool:" + elog " dev-vcs/cvs" + elog " dev-vcs/darcs" + elog " dev-vcs/git" + elog " dev-vcs/monotone" + elog " dev-vcs/subversion" +} + +pkg_postrm() { + use emacs && elisp-site-regen +} diff --git a/dev-vcs/mercurial/mercurial-6.8.1.ebuild b/dev-vcs/mercurial/mercurial-6.8.1.ebuild deleted file mode 100644 index f0b887149ad7..000000000000 --- a/dev-vcs/mercurial/mercurial-6.8.1.ebuild +++ /dev/null @@ -1,398 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -CARGO_OPTIONAL=1 -DISTUTILS_USE_PEP517="setuptools" -DISTUTILS_EXT=1 -PYTHON_COMPAT=( python3_{10..12} ) -PYTHON_REQ_USE="threads(+)" - -CRATES=" - adler@1.0.2 - ahash@0.8.2 - aho-corasick@0.7.19 - android-tzdata@0.1.1 - android_system_properties@0.1.5 - atty@0.2.14 - autocfg@1.1.0 - bitflags@1.3.2 - bitflags@2.6.0 - bitmaps@2.1.0 - bitvec@1.0.1 - block-buffer@0.9.0 - block-buffer@0.10.3 - bstr@1.6.0 - bumpalo@3.11.1 - byteorder@1.4.3 - bytes-cast@0.3.0 - bytes-cast-derive@0.2.0 - cc@1.0.76 - cfg-if@1.0.0 - chrono@0.4.34 - clap@4.0.24 - clap_derive@4.0.21 - clap_lex@0.3.0 - codespan-reporting@0.11.1 - convert_case@0.4.0 - core-foundation-sys@0.8.3 - cpufeatures@0.2.5 - cpython@0.7.2 - crc32fast@1.3.2 - crossbeam-channel@0.5.6 - crossbeam-deque@0.8.2 - crossbeam-epoch@0.9.11 - crossbeam-utils@0.8.12 - crypto-common@0.1.6 - ctor@0.1.26 - cxx@1.0.81 - cxx-build@1.0.81 - cxxbridge-flags@1.0.81 - cxxbridge-macro@1.0.81 - derive_more@0.99.17 - diff@0.1.13 - digest@0.9.0 - digest@0.10.5 - dirs@5.0.1 - dirs-sys@0.4.1 - either@1.8.0 - env_logger@0.9.3 - fastrand@1.8.0 - flate2@1.0.24 - format-bytes@0.3.0 - format-bytes-macros@0.4.0 - funty@2.0.0 - generic-array@0.14.6 - getrandom@0.1.16 - getrandom@0.2.8 - hashbrown@0.12.3 - hashbrown@0.13.1 - heck@0.4.0 - hermit-abi@0.1.19 - hex@0.4.3 - home@0.5.4 - humantime@2.1.0 - iana-time-zone@0.1.53 - iana-time-zone-haiku@0.1.1 - im-rc@15.1.0 - indexmap@1.9.2 - instant@0.1.12 - itertools@0.10.5 - jobserver@0.1.25 - js-sys@0.3.60 - lazy_static@1.4.0 - libc@0.2.137 - libm@0.2.6 - libredox@0.1.3 - libz-sys@1.1.8 - link-cplusplus@1.0.7 - log@0.4.17 - logging_timer@1.1.0 - logging_timer_proc_macros@1.1.0 - memchr@2.5.0 - memmap2@0.5.8 - memoffset@0.6.5 - miniz_oxide@0.5.4 - nom8@0.2.0 - num-traits@0.2.15 - num_cpus@1.14.0 - once_cell@1.16.0 - opaque-debug@0.3.0 - option-ext@0.2.0 - os_str_bytes@6.4.0 - output_vt100@0.1.3 - paste@1.0.9 - pkg-config@0.3.26 - ppv-lite86@0.2.17 - pretty_assertions@1.3.0 - proc-macro-error@1.0.4 - proc-macro-error-attr@1.0.4 - proc-macro2@1.0.47 - python3-sys@0.7.2 - quote@1.0.21 - radium@0.7.0 - rand@0.7.3 - rand@0.8.5 - rand_chacha@0.2.2 - rand_chacha@0.3.1 - rand_core@0.5.1 - rand_core@0.6.4 - rand_distr@0.4.3 - rand_hc@0.2.0 - rand_pcg@0.3.1 - rand_xoshiro@0.6.0 - rayon@1.7.0 - rayon-core@1.11.0 - redox_syscall@0.2.16 - redox_users@0.4.5 - regex@1.7.0 - regex-automata@0.3.9 - regex-syntax@0.6.28 - remove_dir_all@0.5.3 - rustc_version@0.4.0 - same-file@1.0.6 - scopeguard@1.1.0 - scratch@1.0.2 - self_cell@1.0.0 - semver@1.0.14 - serde@1.0.152 - serde_derive@1.0.152 - serde_spanned@0.6.1 - sha-1@0.9.8 - sha-1@0.10.0 - shellexpand@3.1.0 - sized-chunks@0.6.5 - stable_deref_trait@1.2.0 - static_assertions@1.1.0 - strsim@0.10.0 - syn@1.0.109 - tap@1.0.1 - tempfile@3.3.0 - termcolor@1.1.3 - thiserror@1.0.39 - thiserror-impl@1.0.39 - thread_local@1.1.4 - toml@0.6.0 - toml_datetime@0.5.1 - toml_edit@0.18.1 - twox-hash@1.6.3 - typenum@1.15.0 - unicode-ident@1.0.5 - unicode-width@0.1.10 - vcpkg@0.2.15 - vcsgraph@0.2.0 - version_check@0.9.4 - wasi@0.9.0+wasi-snapshot-preview1 - wasi@0.11.0+wasi-snapshot-preview1 - wasm-bindgen@0.2.83 - wasm-bindgen-backend@0.2.83 - wasm-bindgen-macro@0.2.83 - wasm-bindgen-macro-support@0.2.83 - wasm-bindgen-shared@0.2.83 - web-sys@0.3.60 - which@4.3.0 - whoami@1.4.0 - winapi@0.3.9 - winapi-i686-pc-windows-gnu@0.4.0 - winapi-util@0.1.5 - winapi-x86_64-pc-windows-gnu@0.4.0 - windows-sys@0.48.0 - windows-targets@0.48.5 - windows-targets@0.52.0 - windows_aarch64_gnullvm@0.48.5 - windows_aarch64_gnullvm@0.52.0 - windows_aarch64_msvc@0.48.5 - windows_aarch64_msvc@0.52.0 - windows_i686_gnu@0.48.5 - windows_i686_gnu@0.52.0 - windows_i686_msvc@0.48.5 - windows_i686_msvc@0.52.0 - windows_x86_64_gnu@0.48.5 - windows_x86_64_gnu@0.52.0 - windows_x86_64_gnullvm@0.48.5 - windows_x86_64_gnullvm@0.52.0 - windows_x86_64_msvc@0.48.5 - windows_x86_64_msvc@0.52.0 - wyz@0.5.1 - yansi@0.5.1 - zstd@0.12.3+zstd.1.5.2 - zstd-safe@6.0.4+zstd.1.5.4 - zstd-sys@2.0.7+zstd.1.5.4 -" - -inherit bash-completion-r1 cargo elisp-common distutils-r1 flag-o-matic multiprocessing - -DESCRIPTION="Scalable distributed SCM" -HOMEPAGE="https://www.mercurial-scm.org/" -SRC_URI="https://www.mercurial-scm.org/release/${P}.tar.gz - rust? ( ${CARGO_CRATE_URIS} )" - -LICENSE="GPL-2+ - rust? ( - 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD Boost-1.0 MIT MPL-2.0 PSF-2 Unicode-DFS-2016 Unlicense ZLIB )" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="+chg emacs gpg test tk rust" - -BDEPEND="rust? ( ${RUST_DEPEND} )" -RDEPEND=" - app-misc/ca-certificates - gpg? ( app-crypt/gnupg ) - tk? ( dev-lang/tk )" - -DEPEND="emacs? ( >=app-editors/emacs-23.1:* ) - test? ( - app-arch/unzip - dev-python/pygments[${PYTHON_USEDEP}] - )" - -SITEFILE="70${PN}-gentoo.el" - -RESTRICT="!test? ( test )" - -src_unpack() { - default_src_unpack - if use rust; then - local S="${S}/rust/hg-cpython" - cargo_src_unpack - else - # Needed because distutils-r1 install under cargo_env if cargo is inherited - cargo_gen_config - fi -} - -python_prepare_all() { - # fix up logic that won't work in Gentoo Prefix (also won't outside in - # certain cases), bug #362891 - sed -i -e 's:xcodebuild:nocodebuild:' setup.py || die - sed -i -e 's/__APPLE__/__NO_APPLE__/g' mercurial/cext/osutil.c || die - - # Build assumes the Rust target directory, which is wrong for us. - sed -i -r "s:\brust[/,' ]+target[/,' ]+release\b:rust/$(cargo_target_dir):g" \ - Makefile \ - setup.py \ - tests/run-tests.py \ - || die - - distutils-r1_python_prepare_all -} - -src_compile() { - if use rust; then - pushd rust/hg-cpython || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - distutils-r1_src_compile -} - -python_compile() { - filter-flags -ftracer -ftree-vectorize - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - distutils-r1_python_compile build_ext -} - -python_compile_all() { - rm -r contrib/win32 || die - if use chg; then - emake -C contrib/chg - fi - if use rust; then - pushd rust/rhg || die - cargo_src_compile --no-default-features --jobs $(makeopts_jobs) - popd || die - fi - if use emacs; then - cd contrib || die - elisp-compile mercurial.el || die "elisp-compile failed!" - fi -} - -src_install() { - distutils-r1_src_install -} - -python_install() { - if use rust; then - local -x HGWITHRUSTEXT="cpython" - fi - - distutils-r1_python_install build_ext - python_doscript contrib/hg-ssh -} - -python_install_all() { - distutils-r1_python_install_all - - newbashcomp contrib/bash_completion hg - - insinto /usr/share/zsh/site-functions - newins contrib/zsh_completion _hg - - dobin hgeditor - if use tk; then - dobin contrib/hgk - fi - - if use emacs; then - elisp-install ${PN} contrib/mercurial.el* || die "elisp-install failed!" - elisp-make-site-file "${SITEFILE}" - fi - - local RM_CONTRIB=( hgk hg-ssh bash_completion zsh_completion plan9 *.el ) - - if use chg; then - dobin contrib/chg/chg - doman contrib/chg/chg.1 - RM_CONTRIB+=( chg ) - fi - if use rust; then - dobin "rust/$(cargo_target_dir)/rhg" - fi - - for f in ${RM_CONTRIB[@]}; do - rm -rf contrib/${f} || die - done - - dodoc -r contrib - docompress -x /usr/share/doc/${PF}/contrib - doman doc/*.? - dodoc CONTRIBUTORS hgweb.cgi - - insinto /etc/mercurial/hgrc.d - doins "${FILESDIR}/cacerts.rc" -} - -src_test() { - pushd tests &>/dev/null || die - rm -rf *svn* # Subversion tests fail with 1.5 - rm -f test-archive* # Fails due to verbose tar output changes - rm -f test-convert-baz* # GNU Arch baz - rm -f test-convert-cvs* # CVS - rm -f test-convert-darcs* # Darcs - rm -f test-convert-git* # git - rm -f test-convert-mtn* # monotone - rm -f test-convert-tla* # GNU Arch tla - rm -f test-largefiles* # tends to time out - rm -f test-https* # requires to support tls1.0 - rm -rf test-removeemptydirs* # requires access to access parent directories - if [[ ${EUID} -eq 0 ]]; then - einfo "Removing tests which require user privileges to succeed" - rm -f test-convert* - rm -f test-lock-badness* - rm -f test-permissions* - rm -f test-pull-permission* - rm -f test-journal-exists* - rm -f test-repair-strip* - fi - - popd &>/dev/null || die - distutils-r1_src_test -} - -python_test() { - cd tests || die - PYTHONWARNINGS=ignore "${PYTHON}" run-tests.py \ - --jobs $(makeopts_jobs) \ - --timeout 0 \ - || die "Tests fail with ${EPYTHON}" -} - -pkg_postinst() { - use emacs && elisp-site-regen - - elog "If you want to convert repositories from other tools using convert" - elog "extension please install correct tool:" - elog " dev-vcs/cvs" - elog " dev-vcs/darcs" - elog " dev-vcs/git" - elog " dev-vcs/monotone" - elog " dev-vcs/subversion" -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-vcs/mercurial/mercurial-9999.ebuild b/dev-vcs/mercurial/mercurial-9999.ebuild index 45093fbe0880..df6dbbf2a3de 100644 --- a/dev-vcs/mercurial/mercurial-9999.ebuild +++ b/dev-vcs/mercurial/mercurial-9999.ebuild @@ -9,6 +9,9 @@ DISTUTILS_EXT=1 PYTHON_COMPAT=( python3_{10..12} ) PYTHON_REQ_USE="threads(+)" +# for stdsimd +RUST_MAX_VER=1.77.1 + inherit bash-completion-r1 cargo elisp-common distutils-r1 mercurial flag-o-matic multiprocessing DESCRIPTION="Scalable distributed SCM" @@ -38,6 +41,10 @@ SITEFILE="70${PN}-gentoo.el" RESTRICT="!test? ( test )" +pkg_setup() { + use rust && rust_pkg_setup +} + src_unpack() { mercurial_src_unpack if use rust; then -- cgit v1.2.3