<pre style='margin:0'>
Dan Villiom Podlaski Christiansen (danchr) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0f7c62a0200e1add72f13d4af9806f055f24c4f9">https://github.com/macports/macports-ports/commit/0f7c62a0200e1add72f13d4af9806f055f24c4f9</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 0f7c62a0200 mercurial: fix issues in port
</span>0f7c62a0200 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 0f7c62a0200e1add72f13d4af9806f055f24c4f9
</span>Author: Dan Villiom Podlaski Christiansen <danchr@macports.org>
AuthorDate: Wed May 14 14:40:43 2025 +0200
<span style='display:block; white-space:pre;color:#404040;'> mercurial: fix issues in port
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> This reinstates the experimental Rust extensions as a separate port,
</span><span style='display:block; white-space:pre;color:#404040;'> configures Mercurial to optionally load them, and reintroduces the
</span><span style='display:block; white-space:pre;color:#404040;'> manual pages, which still require GNU Make to build.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/72455
</span>---
devel/mercurial/Portfile | 187 +++++++++++++++++++++------------
devel/mercurial/files/allow_rust.diff | 28 +++++
devel/mercurial/files/hg.diff | 4 +-
devel/mercurial/files/makefile.diff | 4 +-
devel/mercurial/files/rust_darwin.diff | 29 +++++
devel/mercurial/files/setup_py.diff | 4 +-
6 files changed, 182 insertions(+), 74 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/mercurial/Portfile b/devel/mercurial/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 170ee3cd962..3edcfb31c21 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/mercurial/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/mercurial/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,11 +1,12 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup compiler_blacklist_versions 1.0
</span> PortGroup python 1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[variant_isset rust]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "mercurial-rustext"} {
</span> # see https://trac.macports.org/ticket/63834
<span style='display:block; white-space:pre;background:#ffe0e0;'>- PortGroup rust 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PortGroup cargo 1.0
</span> }
name mercurial
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -14,7 +15,7 @@ name mercurial
</span> # also, please remember that the rust variant needs love too:
# cargo2port rust/Cargo.lock | pbcopy
version 7.0.2
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 3
</span> categories devel python
license GPL-2+
maintainers {danchr @danchr}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -43,101 +44,151 @@ checksums ${distname}${extract.suffix} \
</span> size 8981974
python.default_version 313
<span style='display:block; white-space:pre;background:#ffe0e0;'>-python.pep517 no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+python.pep517 yes
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://trac.macports.org/ticket/65938
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${name} eq ${subport}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/65938
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.blacklist-append \
</span> *gcc-4.0 *gcc-4.2 {clang < 421}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- bin:${prefix}/bin/make:gmake \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bin:${prefix}/bin/gmake:gmake \
</span> port:gettext \
port:py${python.version}-setuptools \
port:py${python.version}-setuptools_scm \
port:py${python.version}-docutils
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_run path:share/curl/curl-ca-bundle.crt:curl-ca-bundle \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path:share/curl/curl-ca-bundle.crt:curl-ca-bundle \
</span> port:py${python.version}-re2 \
port:py${python.version}-gnureadline
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patch.pre_args-replace -p0 -p1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles setup_py.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch.pre_args-replace -p0 -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles setup_py.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ allow_rust.diff \
</span> hg.diff \
makefile.diff
<span style='display:block; white-space:pre;background:#ffe0e0;'>-build.env-append PYTHON=${python.bin} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PYTHON=${python.bin} \
</span> COMPILERFLAG=-j${build.jobs} \
HGPATH=${prefix}/bin/hg \
HGEXTDIR=${python.pkgd}/hgext
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot.env-append \
</span> PYTHON=${python.bin} \
COMPILERFLAG=-j${build.jobs} \
HGPATH=${prefix}/bin/hg \
HGEXTDIR=${python.pkgd}/hgext
<span style='display:block; white-space:pre;background:#ffe0e0;'>-post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s/@BUILD_JOBS@/${build.jobs}/" ${worksrcpath}/setup.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s/@BUILD_JOBS@/${build.jobs}/" ${worksrcpath}/setup.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://trac.macports.org/ticket/71405
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[string match *gcc* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.cmd-prepend \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/71405
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[string match *gcc* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.cmd-prepend \
</span> CFLAGS=-Wno-error=incompatible-pointer-types
<span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "1s,.*,#!${python.bin}," ${destroot}${python.prefix}/bin/hg
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # configure ssl certificates
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d -m 755 ${destroot}${prefix}/etc/mercurial
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d -m 755 ${destroot}${prefix}/etc/mercurial/hgrc.d
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d -m 755 ${destroot}${prefix}/share/doc/mercurial
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 644 ${filespath}/hgrc \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/etc/mercurial/hgrc.default
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|%%PREFIX%%|${prefix}|g" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/etc/mercurial/hgrc.default
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # install html docs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -m 644 -W ${worksrcpath}/doc hg.1.html hgrc.5.html hgignore.5.html \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/doc/mercurial
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # install contrib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xinstall -d -m 755 ${destroot}${prefix}/share/mercurial
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file copy ${worksrcpath}/contrib ${destroot}${prefix}/share/mercurial/contrib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file copy ${worksrcpath}/tests/run-tests.py ${destroot}${prefix}/share/mercurial/contrib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # exclude some cruft and nested packages
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file delete -force \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/automation \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/chg \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/fuzz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/packaging \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/plan9 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/python-zstandard \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${prefix}/share/mercurial/contrib/win32 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ${destroot}${python.pkgd}/hgext3rd
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # copy hgweb.cgi hgwebdir.cgi
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file copy ${worksrcpath}/hgweb.cgi ${destroot}${prefix}/share/mercurial/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # copy hgk, the visual history browser
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file copy ${worksrcpath}/contrib/hgk ${destroot}${prefix}/bin/hgk
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # copy completions, etc.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach f [glob ${destroot}${python.prefix}/share/*] {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- file rename $f ${destroot}${prefix}/share/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # build manual pages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W "${worksrcpath}/doc" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "gmake -j ${build.jobs} all PYTHON=${python.bin}"
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-post-activate {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![file exists ${prefix}/etc/mercurial/hgrc]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- copy ${prefix}/etc/mercurial/hgrc.default ${prefix}/etc/mercurial/hgrc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "1s,.*,#!${python.bin}," ${destroot}${python.prefix}/bin/hg
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # install manual pages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W "${worksrcpath}/doc" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "gmake -j ${build.jobs} install PYTHON=${python.bin} DESTDIR=${destroot} PREFIX=${prefix}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # configure ssl certificates
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 755 ${destroot}${prefix}/etc/mercurial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 755 ${destroot}${prefix}/etc/mercurial/hgrc.d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 755 ${destroot}${prefix}/share/doc/mercurial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 ${filespath}/hgrc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/etc/mercurial/hgrc.default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|%%PREFIX%%|${prefix}|g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/etc/mercurial/hgrc.default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # install html docs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 -W ${worksrcpath}/doc hg.1.html hgrc.5.html hgignore.5.html \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/doc/mercurial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # install contrib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d -m 755 ${destroot}${prefix}/share/mercurial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/contrib ${destroot}${prefix}/share/mercurial/contrib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/tests/run-tests.py ${destroot}${prefix}/share/mercurial/contrib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # exclude some cruft and nested packages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete -force \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/automation \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/chg \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/fuzz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/packaging \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/plan9 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/python-zstandard \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/mercurial/contrib/win32 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${python.pkgd}/hgext3rd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # copy hgweb.cgi hgwebdir.cgi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/hgweb.cgi ${destroot}${prefix}/share/mercurial/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # copy hgk, the visual history browser
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy ${worksrcpath}/contrib/hgk ${destroot}${prefix}/bin/hgk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # copy completions, etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach f [glob ${destroot}${python.prefix}/share/*] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file rename $f ${destroot}${prefix}/share/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {![file exists ${prefix}/etc/mercurial/hgrc]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${prefix}/etc/mercurial/hgrc.default ${prefix}/etc/mercurial/hgrc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant rust description {Enable experimental Rust optimizations} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- build.env-append HGWITHRUSTEXT=cpython CARGO_BUILD_TARGET=
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- destroot.env-append HGWITHRUSTEXT=cpython CARGO_BUILD_TARGET=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport mercurial-rustext {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Experimental Rust optimizations for Mercurial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long_description ${description}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:mercurial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.dir ${worksrcpath}/rust
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PYTHON_SYS_EXECUTABLE=${python.bin} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PYTHONEXECUTABLE=${python.bin} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PYTHON=${python.bin} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PYO3_PYTHON=${python.bin}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch.pre_args-replace -p0 -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles rust_darwin.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set targetpath \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${worksrcpath}/rust/target/[cargo.rust_platform]/release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set suffix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [exec \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${python.bin} -c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "import sysconfig; print(sysconfig.get_config_var(\"EXT_SUFFIX\"))" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${python.pkgd}/mercurial ${prefix}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${targetpath}/librusthg.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${python.pkgd}/mercurial/rustext${suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${targetpath}/librusthgpyo3.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${python.pkgd}/mercurial/pyo3_rustext${suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${targetpath}/rhg \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span>
cargo.crates \
adler2 2.0.0 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627 \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/mercurial/files/allow_rust.diff b/devel/mercurial/files/allow_rust.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..4091f060235
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/mercurial/files/allow_rust.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# HG changeset patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Date 1747228504 -7200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Wed May 14 15:15:04 2025 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Branch stable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Node ID 2f32cc33c8c68d1a20bd8427e293433e5d15b8cd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Parent 809a4c4725436a6f3755e58cb864faed4264ad25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# EXP-Topic patches
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+allow_rust
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/setup.py b/setup.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/setup.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/setup.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -495,13 +495,7 @@ class hgbuildpy(build_py):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def run(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rust = self.distribution.rust
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if self.distribution.pure:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- modulepolicy = 'py'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- elif self.build_lib == '.':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # in-place build should run without rebuilding and Rust extensions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- modulepolicy = 'rust+c-allow' if rust else 'allow'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- modulepolicy = 'rust+c' if rust else 'c'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ modulepolicy = 'rust+c-allow'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ content = b''.join(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/mercurial/files/hg.diff b/devel/mercurial/files/hg.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index e2728cb79a1..8a58eaa565b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/mercurial/files/hg.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/mercurial/files/hg.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,8 +3,8 @@
</span> # Date 1678122146 -3600
# Mon Mar 06 18:02:26 2023 +0100
# Branch stable
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Node ID e6286ab9d66a0661fe5a34444be9621181f54530
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Parent 010a86744bfc6ede2e3ed3ecef3faee0de804f47
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Node ID 6299de7640978d4ac095f8f2f39e531ef5b06409
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Parent a498a90c2455a9da9b71cf208274572152b9826e
</span> # EXP-Topic patches
hg
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/mercurial/files/makefile.diff b/devel/mercurial/files/makefile.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 3be15604726..e6e9e2a753c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/mercurial/files/makefile.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/mercurial/files/makefile.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,8 +3,8 @@
</span> # Date 1678122147 -3600
# Mon Mar 06 18:02:27 2023 +0100
# Branch stable
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Node ID 6008a4450ee3d85a2aa88eaae601984cd10441fe
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Parent e6286ab9d66a0661fe5a34444be9621181f54530
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Node ID c499b1c999728ea3d078dee36b83508bbebe003d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Parent 6299de7640978d4ac095f8f2f39e531ef5b06409
</span> # EXP-Topic patches
makefile
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/mercurial/files/rust_darwin.diff b/devel/mercurial/files/rust_darwin.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..e6082d0c97b
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/mercurial/files/rust_darwin.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# HG changeset patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# User Dan Villiom Podlaski Christiansen <danchr@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Date 1747225899 -7200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Wed May 14 14:31:39 2025 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Branch stable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Node ID 809a4c4725436a6f3755e58cb864faed4264ad25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Parent 8c0474a25ff0c788b147ce6381ffbb2435c1c4c2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# EXP-Topic patches
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+rust_darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/rust/.cargo/config.toml b/rust/.cargo/config.toml
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/rust/.cargo/config.toml
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/rust/.cargo/config.toml
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -5,3 +5,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # (which would be loaded first).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [target.'cfg(target_os = "windows")']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rustflags = ["-Ctarget-feature=+crt-static"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[target.x86_64-apple-darwin]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rustflags = [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "-C", "link-arg=-undefined",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "-C", "link-arg=dynamic_lookup",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[target.aarch64-apple-darwin]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rustflags = [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "-C", "link-arg=-undefined",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "-C", "link-arg=dynamic_lookup",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++]
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/mercurial/files/setup_py.diff b/devel/mercurial/files/setup_py.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index f3538e50f79..3461cc3ea84 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/mercurial/files/setup_py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/mercurial/files/setup_py.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3,8 +3,8 @@
</span> # Date 1678122149 -3600
# Mon Mar 06 18:02:29 2023 +0100
# Branch stable
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Node ID 45f995017b191ad504ac6dced4f694b39e0747e7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Parent 6008a4450ee3d85a2aa88eaae601984cd10441fe
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Node ID 8c0474a25ff0c788b147ce6381ffbb2435c1c4c2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Parent c499b1c999728ea3d078dee36b83508bbebe003d
</span> # EXP-Topic patches
setup_py
</pre><pre style='margin:0'>
</pre>