From owner-svn-ports-all@freebsd.org Thu Jul 19 20:57:13 2018 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6D674104AAFC; Thu, 19 Jul 2018 20:57:13 +0000 (UTC) (envelope-from dumbbell@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1F30A7BF4C; Thu, 19 Jul 2018 20:57:13 +0000 (UTC) (envelope-from dumbbell@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 0114F2E6CE; Thu, 19 Jul 2018 20:57:13 +0000 (UTC) (envelope-from dumbbell@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w6JKvCLC062213; Thu, 19 Jul 2018 20:57:12 GMT (envelope-from dumbbell@FreeBSD.org) Received: (from dumbbell@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w6JKv9HT062197; Thu, 19 Jul 2018 20:57:09 GMT (envelope-from dumbbell@FreeBSD.org) Message-Id: <201807192057.w6JKv9HT062197@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dumbbell set sender to dumbbell@FreeBSD.org using -f From: =?UTF-8?Q?Jean-S=c3=a9bastien_P=c3=a9dron?= Date: Thu, 19 Jul 2018 20:57:09 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r474978 - in head/lang/rust: . files X-SVN-Group: ports-head X-SVN-Commit-Author: dumbbell X-SVN-Commit-Paths: in head/lang/rust: . files X-SVN-Commit-Revision: 474978 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Jul 2018 20:57:13 -0000 Author: dumbbell Date: Thu Jul 19 20:57:09 2018 New Revision: 474978 URL: https://svnweb.freebsd.org/changeset/ports/474978 Log: lang/rust: Update to 1.27.1 Release notes: * https://blog.rust-lang.org/2018/06/21/Rust-1.27.html * https://blog.rust-lang.org/2018/07/10/Rust-1.27.1.html Rust is marked as broken on aarch64. The reason is the bootstrap compiler crashes currently. See PR 228892 which tracks the issue. A patch for aarch64 is still included. It fixes the sign for unqualified C char. This patch still needs to be upstream, but for that, the compiler needs to work again first. PR: 228892 Added: head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_dragonfly_mod.rs (contents, props changed) head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_aarch64.rs (contents, props changed) head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_x86.rs (contents, props changed) head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_x86__64.rs (contents, props changed) head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_mod.rs (contents, props changed) head/lang/rust/files/patch-src_librustc__target_spec_i686__unknown__freebsd.rs (contents, props changed) head/lang/rust/files/patch-src_libstd_os_raw_mod.rs (contents, props changed) head/lang/rust/files/patch-src_libstd_sys_unix_stack__overflow.rs (contents, props changed) head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_dragonfly_mod.rs (contents, props changed) head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_aarch64.rs (contents, props changed) head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_x86.rs (contents, props changed) head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_x86__64.rs (contents, props changed) head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_mod.rs (contents, props changed) Deleted: head/lang/rust/files/patch-src_librustc__back_target_i686__unknown__freebsd.rs Modified: head/lang/rust/Makefile head/lang/rust/distinfo head/lang/rust/files/patch-src_llvm_utils_llvm-build_llvmbuild_main.py Modified: head/lang/rust/Makefile ============================================================================== --- head/lang/rust/Makefile Thu Jul 19 20:45:03 2018 (r474977) +++ head/lang/rust/Makefile Thu Jul 19 20:57:09 2018 (r474978) @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= rust -PORTVERSION?= 1.26.2 +PORTVERSION?= 1.27.1 PORTREVISION?= CATEGORIES= lang MASTER_SITES= http://static.rust-lang.org/dist/:src \ @@ -36,6 +36,8 @@ LIB_DEPENDS= libcurl.so:ftp/curl \ ONLY_FOR_ARCHS?= aarch64 amd64 i386 ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap compiler +BROKEN_aarch64= fails to build: bootstrap compiler crashes + # FIXME: The bootstrapped rustc adds -L/usr/local/lib in front of # the LDFLAGS. When stage0's rustc is linked, it picks the installed # librust*so and fails. @@ -44,13 +46,13 @@ ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap com CONFLICTS_INSTALL?= rust-nightly # See WRKSRC/src/stage0.txt for this date and version values. -BOOTSTRAPS_DATE?= 2018-03-29 +BOOTSTRAPS_DATE?= 2018-05-10 -RUST_BOOTSTRAP_VERSION?= 1.25.0 +RUST_BOOTSTRAP_VERSION?= 1.26.0 RUSTC_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}.tar.gz RUST_STD_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}.tar.gz -CARGO_BOOTSTRAP_VERSION?= 0.26.0 +CARGO_BOOTSTRAP_VERSION?= 0.27.0 CARGO_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/cargo-${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}-${RUST_TARGET}.tar.gz RUST_CHANNEL= ${PKGNAMESUFFIX:Ustable:S/^-//} @@ -250,7 +252,7 @@ do-install: cd ${WRKSRC} && \ ${SETENV} ${X_PY_ENV} \ DESTDIR=${STAGEDIR} \ - ${X_PY_CMD} install \ + ${X_PY_CMD} 'install' \ --verbose \ --config ./config.toml \ --jobs ${MAKE_JOBS_NUMBER} @@ -334,8 +336,8 @@ do-test: --jobs ${MAKE_JOBS_NUMBER} makesum-all-archs: - ${MAKE} makesum ARCH=${ONLY_FOR_ARCHS:[1]} -.for arch in ${ONLY_FOR_ARCHS:[2..-1]} + ${MAKE} makesum ARCH=${ONLY_FOR_ARCHS:O:[1]} +.for arch in ${ONLY_FOR_ARCHS:O:[2..-1]} ${MAKE} makesum ARCH=${arch} DISTINFO_FILE=${DISTINFO_FILE}.${arch} ${GREP} ${RUST_ARCH_${arch}} ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE} ${RM} ${DISTINFO_FILE}.${arch} Modified: head/lang/rust/distinfo ============================================================================== --- head/lang/rust/distinfo Thu Jul 19 20:45:03 2018 (r474977) +++ head/lang/rust/distinfo Thu Jul 19 20:57:09 2018 (r474978) @@ -1,21 +1,21 @@ -TIMESTAMP = 1528500986 -SHA256 (rust/rustc-1.26.2-src.tar.xz) = a1202800bd5621f5cac027177904da0b964eb43b93606d3e4c7b342a9f7473b4 -SIZE (rust/rustc-1.26.2-src.tar.xz) = 54613640 -SHA256 (rust/2018-03-29/rustc-1.25.0-aarch64-unknown-freebsd.tar.gz) = bef48b3ba5d560ae2eae532bfa4858827cd90687684e42ba515cb6dd78348ea9 -SIZE (rust/2018-03-29/rustc-1.25.0-aarch64-unknown-freebsd.tar.gz) = 62374768 -SHA256 (rust/2018-03-29/rust-std-1.25.0-aarch64-unknown-freebsd.tar.gz) = 994e415d2bec4c862cede93ca8f50fdc30272930170d30d963f5f9e127f8e60b -SIZE (rust/2018-03-29/rust-std-1.25.0-aarch64-unknown-freebsd.tar.gz) = 59733871 -SHA256 (rust/2018-03-29/cargo-0.26.0-aarch64-unknown-freebsd.tar.gz) = a2efee9c92a87ac48d3281eafeb24d713e32aca18dc7b287079f054dd68c533f -SIZE (rust/2018-03-29/cargo-0.26.0-aarch64-unknown-freebsd.tar.gz) = 4170950 -SHA256 (rust/2018-03-29/rustc-1.25.0-x86_64-unknown-freebsd.tar.gz) = 42279e4bb3ab6a6be87096c023ee62a43ffcefb36d2d23ed13b762c5b509ea6d -SIZE (rust/2018-03-29/rustc-1.25.0-x86_64-unknown-freebsd.tar.gz) = 56569917 -SHA256 (rust/2018-03-29/rust-std-1.25.0-x86_64-unknown-freebsd.tar.gz) = c5c62da893a1563e7ccff77ff313417a241300e09b4d06d9f5165bf35a72c58a -SIZE (rust/2018-03-29/rust-std-1.25.0-x86_64-unknown-freebsd.tar.gz) = 50228076 -SHA256 (rust/2018-03-29/cargo-0.26.0-x86_64-unknown-freebsd.tar.gz) = f5c4c0fbbb11b36223de815b734ab6f3497b6c453ca7f9fb93d457316fbfc1b7 -SIZE (rust/2018-03-29/cargo-0.26.0-x86_64-unknown-freebsd.tar.gz) = 5211772 -SHA256 (rust/2018-03-29/rustc-1.25.0-i686-unknown-freebsd.tar.gz) = 8a2488f0d905bd2d498addf8943bed58f817f3fad8387ba4cb7124f38a4c24dd -SIZE (rust/2018-03-29/rustc-1.25.0-i686-unknown-freebsd.tar.gz) = 56770706 -SHA256 (rust/2018-03-29/rust-std-1.25.0-i686-unknown-freebsd.tar.gz) = fe470bcb2e46d91d866b8a7cb22d7f78f421962b54116938b78286a4f9242775 -SIZE (rust/2018-03-29/rust-std-1.25.0-i686-unknown-freebsd.tar.gz) = 50402505 -SHA256 (rust/2018-03-29/cargo-0.26.0-i686-unknown-freebsd.tar.gz) = 3736e794fcede8f24dae8798d70ec4252b47516978460448e324b7dd3d875a73 -SIZE (rust/2018-03-29/cargo-0.26.0-i686-unknown-freebsd.tar.gz) = 4930623 +TIMESTAMP = 1531989867 +SHA256 (rust/rustc-1.27.1-src.tar.xz) = 948e2645057960ee1c03d9f0e8f78133a5f73d9ca9a24bc56126e395a212d25c +SIZE (rust/rustc-1.27.1-src.tar.xz) = 55458892 +SHA256 (rust/2018-05-10/rustc-1.26.0-aarch64-unknown-freebsd.tar.gz) = 74e87fe6b29fe56a353f045f8b0c1069c55e2fea8bd9e2d5da44606fdbcee362 +SIZE (rust/2018-05-10/rustc-1.26.0-aarch64-unknown-freebsd.tar.gz) = 62636938 +SHA256 (rust/2018-05-10/rust-std-1.26.0-aarch64-unknown-freebsd.tar.gz) = 73180f8ddde7e56622f596d9167beae0a1ab548bd5bf258cee276fdc87f30dca +SIZE (rust/2018-05-10/rust-std-1.26.0-aarch64-unknown-freebsd.tar.gz) = 62613320 +SHA256 (rust/2018-05-10/cargo-0.27.0-aarch64-unknown-freebsd.tar.gz) = 6cc48fd7a2d04ff151d7399c536d2e6a4cd37a7cd51ced67bb6978121b4bc3cb +SIZE (rust/2018-05-10/cargo-0.27.0-aarch64-unknown-freebsd.tar.gz) = 4349432 +SHA256 (rust/2018-05-10/rustc-1.26.0-x86_64-unknown-freebsd.tar.gz) = 9499ce5b68d631f8345c387e1f59b21892d97e0acb5650deb61a34719310bd38 +SIZE (rust/2018-05-10/rustc-1.26.0-x86_64-unknown-freebsd.tar.gz) = 64672199 +SHA256 (rust/2018-05-10/rust-std-1.26.0-x86_64-unknown-freebsd.tar.gz) = 38cd138eba2ccaff59513d154fec580b6663ca6ef38cd620c348364aa1e11a40 +SIZE (rust/2018-05-10/rust-std-1.26.0-x86_64-unknown-freebsd.tar.gz) = 64727651 +SHA256 (rust/2018-05-10/cargo-0.27.0-x86_64-unknown-freebsd.tar.gz) = ee0e709f26f14be1cf88a8fdff50063b78d33bb73d8e343aad7b2562a5730249 +SIZE (rust/2018-05-10/cargo-0.27.0-x86_64-unknown-freebsd.tar.gz) = 5905896 +SHA256 (rust/2018-05-10/rustc-1.26.0-i686-unknown-freebsd.tar.gz) = 11111cb60c00bc6e5ea27a0748068d3f2430809d2a3a7f8554750c24d1a728a9 +SIZE (rust/2018-05-10/rustc-1.26.0-i686-unknown-freebsd.tar.gz) = 65599090 +SHA256 (rust/2018-05-10/rust-std-1.26.0-i686-unknown-freebsd.tar.gz) = 549129f86701a8968b411b0c39e296312b2a3a0b3a8c221865d876b72f265972 +SIZE (rust/2018-05-10/rust-std-1.26.0-i686-unknown-freebsd.tar.gz) = 65229010 +SHA256 (rust/2018-05-10/cargo-0.27.0-i686-unknown-freebsd.tar.gz) = 438288ab5e28ffff96d2a4aeaaf656f7388cbc4b6706ad9e7423301089d615da +SIZE (rust/2018-05-10/cargo-0.27.0-i686-unknown-freebsd.tar.gz) = 5671969 Added: head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_dragonfly_mod.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_dragonfly_mod.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/liblibc/src/unix/bsd/freebsdlike/dragonfly/mod.rs.orig 2018-06-19 04:36:14 UTC ++++ src/liblibc/src/unix/bsd/freebsdlike/dragonfly/mod.rs +@@ -1,3 +1,4 @@ ++pub type c_char = i8; + pub type clock_t = u64; + pub type ino_t = u64; + pub type lwpid_t = i32; Added: head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_aarch64.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_aarch64.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/liblibc/src/unix/bsd/freebsdlike/freebsd/aarch64.rs.orig 2018-06-19 04:36:14 UTC ++++ src/liblibc/src/unix/bsd/freebsdlike/freebsd/aarch64.rs +@@ -1,3 +1,4 @@ ++pub type c_char = u8; + pub type c_long = i64; + pub type c_ulong = u64; + pub type time_t = i64; Added: head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_x86.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_x86.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/liblibc/src/unix/bsd/freebsdlike/freebsd/x86.rs.orig 2018-06-19 04:36:14 UTC ++++ src/liblibc/src/unix/bsd/freebsdlike/freebsd/x86.rs +@@ -1,3 +1,4 @@ ++pub type c_char = i8; + pub type c_long = i32; + pub type c_ulong = u32; + pub type time_t = i32; Added: head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_x86__64.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_freebsd_x86__64.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/liblibc/src/unix/bsd/freebsdlike/freebsd/x86_64.rs.orig 2018-06-19 04:36:14 UTC ++++ src/liblibc/src/unix/bsd/freebsdlike/freebsd/x86_64.rs +@@ -1,3 +1,4 @@ ++pub type c_char = i8; + pub type c_long = i64; + pub type c_ulong = u64; + pub type time_t = i64; Added: head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_mod.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_liblibc_src_unix_bsd_freebsdlike_mod.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,18 @@ +--- src/liblibc/src/unix/bsd/freebsdlike/mod.rs.orig 2018-06-19 04:36:14 UTC ++++ src/liblibc/src/unix/bsd/freebsdlike/mod.rs +@@ -1,4 +1,3 @@ +-pub type c_char = i8; + pub type dev_t = u32; + pub type mode_t = u16; + pub type pthread_attr_t = *mut ::c_void; +@@ -84,7 +83,10 @@ s! { + + pub struct stack_t { + // In FreeBSD 11 and later, ss_sp is actually a void* ++ #[cfg(not(target_arch = "aarch64"))] + pub ss_sp: *mut ::c_char, ++ #[cfg(target_arch = "aarch64")] ++ pub ss_sp: *mut ::c_void, + pub ss_size: ::size_t, + pub ss_flags: ::c_int, + } Added: head/lang/rust/files/patch-src_librustc__target_spec_i686__unknown__freebsd.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_librustc__target_spec_i686__unknown__freebsd.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,11 @@ +--- src/librustc_target/spec/i686_unknown_freebsd.rs.orig 2018-06-19 04:35:53 UTC ++++ src/librustc_target/spec/i686_unknown_freebsd.rs +@@ -12,7 +12,7 @@ use spec::{LinkerFlavor, Target, TargetResult}; + + pub fn target() -> TargetResult { + let mut base = super::freebsd_base::opts(); +- base.cpu = "pentium4".to_string(); ++ base.cpu = "pentiumpro".to_string(); + base.max_atomic_width = Some(64); + base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string()); + base.stack_probes = true; Added: head/lang/rust/files/patch-src_libstd_os_raw_mod.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_libstd_os_raw_mod.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,18 @@ +--- src/libstd/os/raw/mod.rs.orig 2018-06-19 04:35:53 UTC ++++ src/libstd/os/raw/mod.rs +@@ -29,6 +29,7 @@ use fmt; + all(target_os = "android", any(target_arch = "aarch64", + target_arch = "arm")), + all(target_os = "l4re", target_arch = "x86_64"), ++ all(target_os = "freebsd", target_arch = "aarch64"), + all(target_os = "openbsd", target_arch = "aarch64"), + all(target_os = "fuchsia", target_arch = "aarch64")))] + #[stable(feature = "raw_os", since = "1.1.0")] pub type c_char = u8; +@@ -41,6 +42,7 @@ use fmt; + all(target_os = "android", any(target_arch = "aarch64", + target_arch = "arm")), + all(target_os = "l4re", target_arch = "x86_64"), ++ all(target_os = "freebsd", target_arch = "aarch64"), + all(target_os = "openbsd", target_arch = "aarch64"), + all(target_os = "fuchsia", target_arch = "aarch64"))))] + #[stable(feature = "raw_os", since = "1.1.0")] pub type c_char = i8; Added: head/lang/rust/files/patch-src_libstd_sys_unix_stack__overflow.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_libstd_sys_unix_stack__overflow.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,31 @@ +--- src/libstd/sys/unix/stack_overflow.rs.orig 2018-06-19 04:35:53 UTC ++++ src/libstd/sys/unix/stack_overflow.rs +@@ -148,18 +148,20 @@ mod imp { + stackp + } + +- #[cfg(any(target_os = "linux", +- target_os = "macos", +- target_os = "bitrig", +- target_os = "netbsd", +- target_os = "openbsd", +- target_os = "solaris"))] ++ #[cfg(any(any(target_os = "linux", ++ target_os = "macos", ++ target_os = "bitrig", ++ target_os = "netbsd", ++ target_os = "openbsd", ++ target_os = "solaris"), ++ all(target_os = "freebsd", target_arch = "aarch64")))] + unsafe fn get_stack() -> libc::stack_t { + libc::stack_t { ss_sp: get_stackp(), ss_flags: 0, ss_size: SIGSTKSZ } + } + +- #[cfg(any(target_os = "freebsd", +- target_os = "dragonfly"))] ++ #[cfg(all(any(target_os = "freebsd", ++ target_os = "dragonfly"), ++ not(target_arch = "aarch64")))] + unsafe fn get_stack() -> libc::stack_t { + libc::stack_t { ss_sp: get_stackp() as *mut i8, ss_flags: 0, ss_size: SIGSTKSZ } + } Modified: head/lang/rust/files/patch-src_llvm_utils_llvm-build_llvmbuild_main.py ============================================================================== --- head/lang/rust/files/patch-src_llvm_utils_llvm-build_llvmbuild_main.py Thu Jul 19 20:45:03 2018 (r474977) +++ head/lang/rust/files/patch-src_llvm_utils_llvm-build_llvmbuild_main.py Thu Jul 19 20:57:09 2018 (r474978) @@ -1,6 +1,6 @@ ---- src/llvm/utils/llvm-build/llvmbuild/main.py.orig 2015-10-28 01:10:50 UTC +--- src/llvm/utils/llvm-build/llvmbuild/main.py.orig 2018-04-04 08:39:57 UTC +++ src/llvm/utils/llvm-build/llvmbuild/main.py -@@ -719,6 +719,8 @@ def add_magic_target_components(parser, +@@ -752,6 +752,8 @@ def add_magic_target_components(parser, project, opts) # We handle a few special cases of target names here for historical # reasons, as these are the names configure currently comes up with. native_target_name = { 'x86' : 'X86', Added: head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_dragonfly_mod.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_dragonfly_mod.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs.orig 2018-06-19 05:52:22 UTC ++++ src/vendor/libc/src/unix/bsd/freebsdlike/dragonfly/mod.rs +@@ -1,3 +1,4 @@ ++pub type c_char = i8; + pub type clock_t = u64; + pub type ino_t = u64; + pub type lwpid_t = i32; Added: head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_aarch64.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_aarch64.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/aarch64.rs.orig 2018-06-19 05:52:22 UTC ++++ src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/aarch64.rs +@@ -1,3 +1,4 @@ ++pub type c_char = u8; + pub type c_long = i64; + pub type c_ulong = u64; + pub type time_t = i64; Added: head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_x86.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_x86.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs.orig 2018-06-19 05:52:22 UTC ++++ src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86.rs +@@ -1,3 +1,4 @@ ++pub type c_char = i8; + pub type c_long = i32; + pub type c_ulong = u32; + pub type time_t = i32; Added: head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_x86__64.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_freebsd_x86__64.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,7 @@ +--- src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86_64.rs.orig 2018-06-19 05:52:22 UTC ++++ src/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86_64.rs +@@ -1,3 +1,4 @@ ++pub type c_char = i8; + pub type c_long = i64; + pub type c_ulong = u64; + pub type time_t = i64; Added: head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_mod.rs ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lang/rust/files/patch-src_vendor_libc_src_unix_bsd_freebsdlike_mod.rs Thu Jul 19 20:57:09 2018 (r474978) @@ -0,0 +1,18 @@ +--- src/vendor/libc/src/unix/bsd/freebsdlike/mod.rs.orig 2018-06-19 05:52:22 UTC ++++ src/vendor/libc/src/unix/bsd/freebsdlike/mod.rs +@@ -1,4 +1,3 @@ +-pub type c_char = i8; + pub type dev_t = u32; + pub type mode_t = u16; + pub type pthread_attr_t = *mut ::c_void; +@@ -84,7 +83,10 @@ s! { + + pub struct stack_t { + // In FreeBSD 11 and later, ss_sp is actually a void* ++ #[cfg(not(target_arch = "aarch64"))] + pub ss_sp: *mut ::c_char, ++ #[cfg(target_arch = "aarch64")] ++ pub ss_sp: *mut ::c_void, + pub ss_size: ::size_t, + pub ss_flags: ::c_int, + }