Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Mar 2021 08:43:49 +0000 (UTC)
From:      Tobias Kortkamp <tobik@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r569013 - in head/lang/rust-nightly: . files
Message-ID:  <202103230843.12N8hn2Q054801@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tobik
Date: Tue Mar 23 08:43:48 2021
New Revision: 569013
URL: https://svnweb.freebsd.org/changeset/ports/569013

Log:
  lang/rust-nightly: Update to 1.53.0.20210323
  
  - Sync patches with lang/rust
  - Add the rust-nightly update script
  
  Changes:	https://github.com/rust-lang/rust/compare/45b3c28518...5d04957a4b

Added:
  head/lang/rust-nightly/files/patch-backtrace
     - copied, changed from r569007, head/lang/rust/files/patch-backtrace
  head/lang/rust-nightly/files/patch-src_bootstrap_install.rs
     - copied unchanged from r569007, head/lang/rust/files/patch-src_bootstrap_install.rs
  head/lang/rust-nightly/update.sh   (contents, props changed)
Modified:
  head/lang/rust-nightly/Makefile
  head/lang/rust-nightly/distinfo

Modified: head/lang/rust-nightly/Makefile
==============================================================================
--- head/lang/rust-nightly/Makefile	Tue Mar 23 08:24:57 2021	(r569012)
+++ head/lang/rust-nightly/Makefile	Tue Mar 23 08:43:48 2021	(r569013)
@@ -1,7 +1,8 @@
 # Created by: Jean-Sébastien Pédron <dumbbell@FreeBSD.org>
 # $FreeBSD$
 
-PORTVERSION=	1.50.0.${NIGHTLY_DATE:C,-,,g}
+# Run update.sh to update to the latest nightly
+PORTVERSION=	1.53.0.${NIGHTLY_DATE:C,-,,g}
 # Always set PORTREVISION explicitly as otherwise it is inherited from lang/rust
 PORTREVISION=	0
 PKGNAMESUFFIX=	-nightly
@@ -16,13 +17,8 @@ MASTERDIR=	${.CURDIR}/../rust
 PATCHDIR=	${.CURDIR}/files
 DISTINFO_FILE=	${.CURDIR}/distinfo
 
-# Get latest from top level 'date' key in
-# https://static.rust-lang.org/dist/channel-rust-nightly.toml
-NIGHTLY_DATE=	2021-03-05
-
-# See WRKSRC/src/stage0.txt for this date
-BOOTSTRAPS_DATE=		2021-02-14
-RUST_BOOTSTRAP_VERSION=		beta
-CARGO_BOOTSTRAP_VERSION=	beta
+NIGHTLY_DATE=		2021-03-23
+BOOTSTRAPS_DATE=	2021-02-14
+RUST_BOOTSTRAP_VERSION=	beta
 
 .include "${MASTERDIR}/Makefile"

Modified: head/lang/rust-nightly/distinfo
==============================================================================
--- head/lang/rust-nightly/distinfo	Tue Mar 23 08:24:57 2021	(r569012)
+++ head/lang/rust-nightly/distinfo	Tue Mar 23 08:43:48 2021	(r569013)
@@ -1,6 +1,6 @@
-TIMESTAMP = 1614940829
-SHA256 (rust/2021-03-05/rustc-nightly-src.tar.xz) = 53a31c16c0b119fddcace0aa7d57e107a8e21b40d4d04b976ddcb363f0273fce
-SIZE (rust/2021-03-05/rustc-nightly-src.tar.xz) = 114645532
+TIMESTAMP = 1616475173
+SHA256 (rust/2021-03-23/rustc-nightly-src.tar.xz) = ad47a8bef68e6d130e0477e16c0cab89e4f2e447f16578fc7243bac095a5ea56
+SIZE (rust/2021-03-23/rustc-nightly-src.tar.xz) = 115047736
 SHA256 (rust/2021-02-14/rustc-beta-x86_64-unknown-freebsd.tar.xz) = 1eb1f1508887449de36aa0dc75e549b8185d7d0bd4f86d503adda09295397fb7
 SIZE (rust/2021-02-14/rustc-beta-x86_64-unknown-freebsd.tar.xz) = 79211584
 SHA256 (rust/2021-02-14/rust-std-beta-x86_64-unknown-freebsd.tar.xz) = f366210bf594eda2b3a6547aff7fb0f32cde99e1a0ec427d2a05a430cc9795b2

Copied and modified: head/lang/rust-nightly/files/patch-backtrace (from r569007, head/lang/rust/files/patch-backtrace)
==============================================================================
--- head/lang/rust/files/patch-backtrace	Tue Mar 23 06:39:47 2021	(r569007, copy source)
+++ head/lang/rust-nightly/files/patch-backtrace	Tue Mar 23 08:43:48 2021	(r569013)
@@ -10,909 +10,3 @@ https://github.com/rust-lang/rust/issues/78184
      ))] {
          // Other Unix (e.g. Linux) platforms use ELF as an object file format
          // and typically implement an API called `dl_iterate_phdr` to load
---- vendor/libc-0.2.77/src/unix/bsd/freebsdlike/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc-0.2.77/src/unix/bsd/freebsdlike/mod.rs
-@@ -14,6 +14,38 @@ pub type nl_item = ::c_int;
- pub type id_t = i64;
- pub type vm_size_t = ::uintptr_t;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
-+// link.h
-+
- #[cfg_attr(feature = "extra_traits", derive(Debug))]
- pub enum timezone {}
- impl ::Copy for timezone {}
-@@ -233,6 +265,43 @@ s! {
-         pub piod_addr: *mut ::c_void,
-         pub piod_len: ::size_t,
-     }
-+
-+    // elf.h
-+
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+        pub dlpi_adds: ::c_ulonglong,
-+        pub dlpi_subs: ::c_ulonglong,
-+        pub dlpi_tls_modid: usize,
-+        pub dlpi_tls_data: *mut ::c_void,
-+    }
- }
- 
- s_no_extra_traits! {
-@@ -1514,6 +1583,18 @@ extern "C" {
- 
-     pub fn ntp_adjtime(buf: *mut timex) -> ::c_int;
-     pub fn ntp_gettime(buf: *mut ntptimeval) -> ::c_int;
-+
-+    // #include <link.h>
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- #[link(name = "rt")]
---- vendor/libc-0.2.77/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc-0.2.77/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -11,6 +11,36 @@ pub type vm_size_t = ::uintptr_t;
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
- impl siginfo_t {
-     pub unsafe fn si_value(&self) -> ::sigval {
-         #[repr(C)]
-@@ -341,6 +371,42 @@ s! {
-         pub time_state: ::c_int,
-     }
- 
-+    // elf.h
-+
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+        pub dlpi_adds: ::c_ulonglong,
-+        pub dlpi_subs: ::c_ulonglong,
-+        pub dlpi_tls_modid: usize,
-+        pub dlpi_tls_data: *mut ::c_void,
-+    }
- }
- 
- s_no_extra_traits! {
-@@ -1988,6 +2054,19 @@ extern "C" {
-         needle: *const ::c_void,
-         needlelen: ::size_t,
-     ) -> *mut ::c_void;
-+
-+    // link.h
-+
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- #[link(name = "util")]
---- vendor/libc-0.2.77/src/unix/bsd/netbsdlike/openbsd/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc-0.2.77/src/unix/bsd/netbsdlike/openbsd/mod.rs
-@@ -16,6 +16,36 @@ pub type pthread_rwlock_t = *mut ::c_void;
- pub type pthread_rwlockattr_t = *mut ::c_void;
- pub type caddr_t = *mut ::c_char;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
- s! {
-     pub struct glob_t {
-         pub gl_pathc:   ::size_t,
-@@ -321,6 +351,38 @@ s! {
-         __shm_ctimensec: c_long,
-         pub shm_internal: *mut ::c_void,
-     }
-+
-+    // elf.h
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+    }
- }
- 
- impl siginfo_t {
-@@ -1480,6 +1542,17 @@ extern "C" {
-         needle: *const ::c_void,
-         needlelen: ::size_t,
-     ) -> *mut ::c_void;
-+    // #include <link.h>
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- cfg_if! {
---- vendor/libc-0.2.79/src/unix/bsd/freebsdlike/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc-0.2.79/src/unix/bsd/freebsdlike/mod.rs
-@@ -14,6 +14,38 @@ pub type nl_item = ::c_int;
- pub type id_t = i64;
- pub type vm_size_t = ::uintptr_t;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
-+// link.h
-+
- #[cfg_attr(feature = "extra_traits", derive(Debug))]
- pub enum timezone {}
- impl ::Copy for timezone {}
-@@ -233,6 +265,43 @@ s! {
-         pub piod_addr: *mut ::c_void,
-         pub piod_len: ::size_t,
-     }
-+
-+    // elf.h
-+
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+        pub dlpi_adds: ::c_ulonglong,
-+        pub dlpi_subs: ::c_ulonglong,
-+        pub dlpi_tls_modid: usize,
-+        pub dlpi_tls_data: *mut ::c_void,
-+    }
- }
- 
- s_no_extra_traits! {
-@@ -1514,6 +1583,18 @@ extern "C" {
- 
-     pub fn ntp_adjtime(buf: *mut timex) -> ::c_int;
-     pub fn ntp_gettime(buf: *mut ntptimeval) -> ::c_int;
-+
-+    // #include <link.h>
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- #[link(name = "rt")]
---- vendor/libc-0.2.79/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc-0.2.79/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -11,6 +11,36 @@ pub type vm_size_t = ::uintptr_t;
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
- impl siginfo_t {
-     pub unsafe fn si_value(&self) -> ::sigval {
-         #[repr(C)]
-@@ -341,6 +371,42 @@ s! {
-         pub time_state: ::c_int,
-     }
- 
-+    // elf.h
-+
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+        pub dlpi_adds: ::c_ulonglong,
-+        pub dlpi_subs: ::c_ulonglong,
-+        pub dlpi_tls_modid: usize,
-+        pub dlpi_tls_data: *mut ::c_void,
-+    }
- }
- 
- s_no_extra_traits! {
-@@ -1990,6 +2056,19 @@ extern "C" {
-         needle: *const ::c_void,
-         needlelen: ::size_t,
-     ) -> *mut ::c_void;
-+
-+    // link.h
-+
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- #[link(name = "util")]
---- vendor/libc-0.2.79/src/unix/bsd/netbsdlike/openbsd/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc-0.2.79/src/unix/bsd/netbsdlike/openbsd/mod.rs
-@@ -16,6 +16,36 @@ pub type pthread_rwlock_t = *mut ::c_void;
- pub type pthread_rwlockattr_t = *mut ::c_void;
- pub type caddr_t = *mut ::c_char;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
- s! {
-     pub struct glob_t {
-         pub gl_pathc:   ::size_t,
-@@ -321,6 +351,38 @@ s! {
-         __shm_ctimensec: c_long,
-         pub shm_internal: *mut ::c_void,
-     }
-+
-+    // elf.h
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+    }
- }
- 
- impl siginfo_t {
-@@ -1482,6 +1544,17 @@ extern "C" {
-         needle: *const ::c_void,
-         needlelen: ::size_t,
-     ) -> *mut ::c_void;
-+    // #include <link.h>
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- cfg_if! {
---- vendor/libc/src/unix/bsd/freebsdlike/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc/src/unix/bsd/freebsdlike/mod.rs
-@@ -14,6 +14,38 @@ pub type nl_item = ::c_int;
- pub type id_t = i64;
- pub type vm_size_t = ::uintptr_t;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
-+// link.h
-+
- #[cfg_attr(feature = "extra_traits", derive(Debug))]
- pub enum timezone {}
- impl ::Copy for timezone {}
-@@ -233,6 +265,43 @@ s! {
-         pub piod_addr: *mut ::c_void,
-         pub piod_len: ::size_t,
-     }
-+
-+    // elf.h
-+
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+        pub dlpi_adds: ::c_ulonglong,
-+        pub dlpi_subs: ::c_ulonglong,
-+        pub dlpi_tls_modid: usize,
-+        pub dlpi_tls_data: *mut ::c_void,
-+    }
- }
- 
- s_no_extra_traits! {
-@@ -1514,6 +1583,18 @@ extern "C" {
- 
-     pub fn ntp_adjtime(buf: *mut timex) -> ::c_int;
-     pub fn ntp_gettime(buf: *mut ntptimeval) -> ::c_int;
-+
-+    // #include <link.h>
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- #[link(name = "rt")]
---- vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc/src/unix/bsd/netbsdlike/netbsd/mod.rs
-@@ -11,6 +11,36 @@ pub type vm_size_t = ::uintptr_t;
- pub type lwpid_t = ::c_uint;
- pub type shmatt_t = ::c_uint;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
- impl siginfo_t {
-     pub unsafe fn si_value(&self) -> ::sigval {
-         #[repr(C)]
-@@ -341,6 +371,42 @@ s! {
-         pub time_state: ::c_int,
-     }
- 
-+    // elf.h
-+
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+        pub dlpi_adds: ::c_ulonglong,
-+        pub dlpi_subs: ::c_ulonglong,
-+        pub dlpi_tls_modid: usize,
-+        pub dlpi_tls_data: *mut ::c_void,
-+    }
- }
- 
- s_no_extra_traits! {
-@@ -2002,6 +2068,19 @@ extern "C" {
-         needle: *const ::c_void,
-         needlelen: ::size_t,
-     ) -> *mut ::c_void;
-+
-+    // link.h
-+
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- #[link(name = "util")]
---- vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs.orig	2021-02-10 18:18:38 UTC
-+++ vendor/libc/src/unix/bsd/netbsdlike/openbsd/mod.rs
-@@ -16,6 +16,36 @@ pub type pthread_rwlock_t = *mut ::c_void;
- pub type pthread_rwlockattr_t = *mut ::c_void;
- pub type caddr_t = *mut ::c_char;
- 
-+// elf.h
-+
-+pub type Elf32_Addr = u32;
-+pub type Elf32_Half = u16;
-+pub type Elf32_Lword = u64;
-+pub type Elf32_Off = u32;
-+pub type Elf32_Sword = i32;
-+pub type Elf32_Word = u32;
-+
-+pub type Elf64_Addr = u64;
-+pub type Elf64_Half = u16;
-+pub type Elf64_Lword = u64;
-+pub type Elf64_Off = u64;
-+pub type Elf64_Sword = i32;
-+pub type Elf64_Sxword = i64;
-+pub type Elf64_Word = u32;
-+pub type Elf64_Xword = u64;
-+
-+cfg_if! {
-+    if #[cfg(target_pointer_width = "64")] {
-+        type Elf_Addr = Elf64_Addr;
-+        type Elf_Half = Elf64_Half;
-+        type Elf_Phdr = Elf64_Phdr;
-+    } else if #[cfg(target_pointer_width = "32")] {
-+        type Elf_Addr = Elf32_Addr;
-+        type Elf_Half = Elf32_Half;
-+        type Elf_Phdr = Elf32_Phdr;
-+    }
-+}
-+
- s! {
-     pub struct glob_t {
-         pub gl_pathc:   ::size_t,
-@@ -321,6 +351,38 @@ s! {
-         __shm_ctimensec: c_long,
-         pub shm_internal: *mut ::c_void,
-     }
-+
-+    // elf.h
-+    pub struct Elf32_Phdr {
-+        pub p_type: Elf32_Word,
-+        pub p_offset: Elf32_Off,
-+        pub p_vaddr: Elf32_Addr,
-+        pub p_paddr: Elf32_Addr,
-+        pub p_filesz: Elf32_Word,
-+        pub p_memsz: Elf32_Word,
-+        pub p_flags: Elf32_Word,
-+        pub p_align: Elf32_Word,
-+    }
-+
-+    pub struct Elf64_Phdr {
-+        pub p_type: Elf64_Word,
-+        pub p_flags: Elf64_Word,
-+        pub p_offset: Elf64_Off,
-+        pub p_vaddr: Elf64_Addr,
-+        pub p_paddr: Elf64_Addr,
-+        pub p_filesz: Elf64_Xword,
-+        pub p_memsz: Elf64_Xword,
-+        pub p_align: Elf64_Xword,
-+    }
-+
-+    // link.h
-+
-+    pub struct dl_phdr_info {
-+        pub dlpi_addr: Elf_Addr,
-+        pub dlpi_name: *const ::c_char,
-+        pub dlpi_phdr: *const Elf_Phdr,
-+        pub dlpi_phnum: Elf_Half,
-+    }
- }
- 
- impl siginfo_t {
-@@ -1482,6 +1544,17 @@ extern "C" {
-         needle: *const ::c_void,
-         needlelen: ::size_t,
-     ) -> *mut ::c_void;
-+    // #include <link.h>
-+    pub fn dl_iterate_phdr(
-+        callback: ::Option<
-+            unsafe extern "C" fn(
-+                info: *mut dl_phdr_info,
-+                size: usize,
-+                data: *mut ::c_void,
-+            ) -> ::c_int,
-+        >,
-+        data: *mut ::c_void,
-+    ) -> ::c_int;
- }
- 
- cfg_if! {

Copied: head/lang/rust-nightly/files/patch-src_bootstrap_install.rs (from r569007, head/lang/rust/files/patch-src_bootstrap_install.rs)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/rust-nightly/files/patch-src_bootstrap_install.rs	Tue Mar 23 08:43:48 2021	(r569013, copy of r569007, head/lang/rust/files/patch-src_bootstrap_install.rs)
@@ -0,0 +1,17 @@
+Only install docs for the host target
+
+It otherwise wastes significant time (there are a lot of individual
+files) and stages host docs, wasm docs, which unstages the host
+docs first.
+
+--- src/bootstrap/install.rs.orig	2021-03-22 17:05:25 UTC
++++ src/bootstrap/install.rs
+@@ -133,7 +133,7 @@ macro_rules! install {
+ }
+ 
+ install!((self, builder, _config),
+-    Docs, "src/doc", _config.docs, only_hosts: false, {
++    Docs, "src/doc", _config.docs, only_hosts: true, {
+         let tarball = builder.ensure(dist::Docs { host: self.target }).expect("missing docs");
+         install_sh(builder, "docs", self.compiler.stage, Some(self.target), &tarball);
+     };

Added: head/lang/rust-nightly/update.sh
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/rust-nightly/update.sh	Tue Mar 23 08:43:48 2021	(r569013)
@@ -0,0 +1,37 @@
+#!/bin/sh
+# Requires: pkg install portfmt
+# Run in lang/rust-nightly
+set -eu
+
+get_commit() {
+	awk '
+$1 == "[pkg.rustc]" { pkg_rustc = 1 }
+pkg_rustc && $1 == "git_commit_hash" {
+	print substr($3, 2, 10)
+	exit
+}'
+}
+
+prev_date=$(portedit get '^NIGHTLY_DATE$' .)
+prev_commit=$(fetch -qo - https://static.rust-lang.org/dist/${prev_date}/channel-rust-nightly.toml | get_commit)
+fetch -qo /tmp/channel-rust-nightly.toml https://static.rust-lang.org/dist/channel-rust-nightly.toml
+</tmp/channel-rust-nightly.toml awk '
+$1 == "[pkg.rustc]" { pkg_rustc = 1 }
+date == "" && $1 == "date" { date = substr($3, 2, length($3) - 2) }
+date && pkg_rustc && $1 == "version" {
+	version = substr($3, 2, length($3) - length("-nightly") - 1)
+	printf("PORTVERSION=%s.${NIGHTLY_DATE:C,-,,g}\nPORTREVISION=0\nNIGHTLY_DATE=%s\n", version, date)
+	exit

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202103230843.12N8hn2Q054801>