<pre style='margin:0'>
Herby Gillot (herbygillot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/4c5878867bdeb08e5d8c394a76598343cefd081a">https://github.com/macports/macports-ports/commit/4c5878867bdeb08e5d8c394a76598343cefd081a</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 4c5878867bd rust: update to 1.50.0
</span>4c5878867bd is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 4c5878867bdeb08e5d8c394a76598343cefd081a
</span>Author: Herby Gillot <herby.gillot@gmail.com>
AuthorDate: Sat Mar 6 20:48:23 2021 -0500

<span style='display:block; white-space:pre;color:#404040;'>    rust: update to 1.50.0
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    - Add ARM64 support provided by @fabius here:
</span><span style='display:block; white-space:pre;color:#404040;'>      https://github.com/macports/macports-ports/pull/9904
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    - Use Rust's LLVM instead of MacPorts. This increases build time, but
</span><span style='display:block; white-space:pre;color:#404040;'>      Rust will now build and run in exactly the way it's meant to.
</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/62395
</span><span style='display:block; white-space:pre;color:#404040;'>    See:    https://trac.macports.org/ticket/60943
</span><span style='display:block; white-space:pre;color:#404040;'>    See:    https://trac.macports.org/ticket/61082
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Co-authored-by: Fabian Deifuß <deifussfabian@icloud.com>
</span>---
 lang/rust/Portfile                               | 98 ++++++++++++++----------
 lang/rust/files/patch-src-librustc-llvm-lib.diff |  8 --
 2 files changed, 57 insertions(+), 49 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/rust/Portfile b/lang/rust/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e3e4e80f879..2f9bf57de45 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/rust/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/rust/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,13 +1,13 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=portfile:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=portfile:et:sw=4:ts=4:sts=4:ft=tcl
</span> 
 PortSystem          1.0
 
 name                rust
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             1.47.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             1.50.0
</span> revision            0
 categories          lang devel
 platforms           darwin
<span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs     x86_64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+supported_archs     x86_64 arm64
</span> license             {MIT Apache-2} BSD zlib NCSA Permissive
 maintainers         {g5pw @g5pw} \
                     {gmail.com:herby.gillot @herbygillot} \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,49 +24,66 @@ long_description    Rust is a curly-brace, block-structured expression \
</span>                     and operational -- that preserve large-system \
                     integrity, availability and concurrency.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage            https://www.rust-lang.org/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://www.rust-lang.org
</span> 
 # Get from src/stage0.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set ruststd_version 1.46.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set rustc_version   1.46.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cargo_version   0.47.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set llvm_version    9.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Rust stable 1.x usually requires `set rustc_version 1.(x-1)`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set rustc_version    1.49.0
</span> 
 # can use cmake or cmake-devel; default to cmake.
 depends_build       path:bin/cmake:cmake \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    bin:python2.7:python27
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python39 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:git \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:openssl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:ninja \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib         port:libffi
</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;'>+set arch ${configure.build_arch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${configure.build_arch} == "arm64"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set arch "aarch64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib         port:llvm-${llvm_version} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:libffi
</span> 
 master_sites        https://static.rust-lang.org/dist
 
 distname            ${name}c-${version}-src
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles          patch-src-librustc-llvm-lib.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-distfiles-append    rust-std-${ruststd_version}-${configure.build_arch}-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rustc-${rustc_version}-${configure.build_arch}-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    cargo-${cargo_version}-${configure.build_arch}-apple-${os.platform}${extract.suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distfiles-append    rust-std-${rustc_version}-${arch}-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rustc-${rustc_version}-${arch}-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    cargo-${rustc_version}-${arch}-apple-${os.platform}${extract.suffix}
</span> 
 checksums           ${distname}${extract.suffix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  2fee85c5e52046982a51eff62f64e123f798ed56 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  3185df064c4747f2c8b9bb8c4468edd58ff4ad6d07880c879ac1b173b768d81d \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    151861620 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rust-std-${ruststd_version}-x86_64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  bd8d58fca200428b03603d770beeee8bf94e5de6 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  8c897982bc38c9528b448fe551f089fee7716e692dece98052f4459ccc6e591c \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    22888748 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  07633389398c9e746a6d349e97775201aaeeeb3b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  95978f8d02bb6175ae3238930baf03563c240aedf9a70bebdc3eaa2a8c3c5a5e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    159542148
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums-append    rust-std-${rustc_version}-x86_64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  b43ecabbcfa19327be5dccf09fc72855d0707a49 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  c4389a8534b8da3ae3570646d68fea9a25268b17ed138867e31d4517312759af \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    35384330 \
</span>                     rustc-${rustc_version}-x86_64-apple-${os.platform}${extract.suffix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  1503424f7cfeee88d6b7133ed5db689fb786bd34 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  f690b375df7b1399e5baa69b64932e3e4a3f2b651e5ef2ebc85509bee777a9d9 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    73665558 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    cargo-${cargo_version}-x86_64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  123269f99aba6a0def22e77603ada120947023a9 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  6e8f3319069dd14e1ef756906fa0ef3799816f1aba439bdeea9d18681c353ad6 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    5685128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  ebe1ff219b1bd8d12a610a3cf228a5eae3de9de6 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  09333f9aacb9c5959e2a2798d7e283cae674255f063a35ea28f91595caa0a78b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    79819120 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    cargo-${rustc_version}-x86_64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  83a5c42490e8579d8767dc8c5c4c5e3d13da0bba \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  ab1bcd7840c715832dbe4a2c5cd64882908cc0d0e6686dd6aec43d2e4332a003 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    5945516 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rust-std-${rustc_version}-aarch64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  1ddc99fbc545b2e601d507d90b5f88bd8cdb1a32 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  cf3308806fc3b6fe00ce49f1e63b1cb1d1443cc812eff7947257f31f590465d3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    27145897 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rustc-${rustc_version}-aarch64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  2307caf7575c72bf3988698c49cce824dcf71160 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  3e8c0c9101f27623f7607f2d8acef5f28dcb2bdfcded56f210d9d370cf9a9c06 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    70161621 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    cargo-${rustc_version}-aarch64-apple-${os.platform}${extract.suffix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  cf2de4de6008e9e176d75f7da7c0809dca9d15eb \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  2bd6eb276193b70b871c594ed74641235c8c4dcd77e9b8f193801c281b55478d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    5388171
</span> 
 if {${os.platform} eq "darwin" && ${os.major} < 11} {
     known_fail yes
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -76,24 +93,21 @@ if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set rust_platform       ${arch}-apple-${os.platform}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set rust_root           ${worksrcpath}/build/stage0-${arch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-extract {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set rust_root     ${worksrcpath}/build/stage0-${configure.build_arch}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set rust_platform ${configure.build_arch}-apple-${os.platform}
</span>     file mkdir ${rust_root}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    system "cp -r ${workpath}/rust-std-${ruststd_version}-${rust_platform}/rust-std-${rust_platform}/* ${rust_root}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "cp -r ${workpath}/rust-std-${rustc_version}-${rust_platform}/rust-std-${rust_platform}/* ${rust_root}"
</span>     system "cp -r ${workpath}/rustc-${rustc_version}-${rust_platform}/rustc/* ${rust_root}"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    system "cp -r ${workpath}/cargo-${cargo_version}-${rust_platform}/cargo/* ${rust_root}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system "cp -r ${workpath}/cargo-${rustc_version}-${rust_platform}/cargo/* ${rust_root}"
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set rust_platform       ${configure.build_arch}-apple-${os.platform}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set rust_root           ${worksrcpath}/build/stage0-${configure.build_arch}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> configure.args          --enable-vendor \
                         --default-linker=${configure.cc} \
                         --disable-codegen-tests \
                         --disable-docs \
                         --release-channel=stable \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        --llvm-root=${prefix}/libexec/llvm-${llvm_version} \
</span>                         --build=${rust_platform} \
                         --local-rust-root=${rust_root} \
                         --set=target.${rust_platform}.cc=${configure.cc} \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -107,7 +121,6 @@ post-configure {
</span>     xinstall -d -m 0755 ${workpath}/.home/.cargo
     set config [open ${workpath}/.home/.cargo/config w]
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set rust_platform ${configure.build_arch}-apple-${os.platform}
</span>     puts ${config} "\[target.${rust_platform}\]"
     puts ${config} "linker = \"${configure.cc}\""
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -115,6 +128,7 @@ post-configure {
</span> }
 
 build.args          VERBOSE=1 BOOTSTRAP_ARGS="-v -j${build.jobs}"
<span style='display:block; white-space:pre;background:#e0ffe0;'>+build.env-append    OPENSSL_DIR=${prefix}
</span> 
 test.run            yes
 test.target         check
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,6 +139,8 @@ destroot.args       VERBOSE=1
</span> if {${subport} eq ${name}} {
 
     post-destroot {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        delete ${destroot}${prefix}/lib/rustlib/install.log
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        delete ${destroot}${prefix}/lib/rustlib/uninstall.sh
</span>         xinstall -d ${destroot}${prefix}/share/${name}
         xinstall -m 644 ${worksrcpath}/src/etc/ctags.rust \
             ${destroot}${prefix}/share/${name}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/rust/files/patch-src-librustc-llvm-lib.diff b/lang/rust/files/patch-src-librustc-llvm-lib.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 47c0c310b77..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/rust/files/patch-src-librustc-llvm-lib.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,8 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/librustc_llvm/lib.rs.orig  2019-09-23 21:15:52.000000000 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/librustc_llvm/lib.rs       2019-10-09 05:55:05.000000000 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -106,3 +106,5 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                  LLVMInitializeWebAssemblyTargetMC,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                  LLVMInitializeWebAssemblyAsmPrinter);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#[link(name = "ffi")] extern {}
</span></pre><pre style='margin:0'>

</pre>