Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 1 Sep 2019 07:26:54 +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: r510684 - head/lang/rust
Message-ID:  <201909010726.x817Qsot082451@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: tobik
Date: Sun Sep  1 07:26:54 2019
New Revision: 510684
URL: https://svnweb.freebsd.org/changeset/ports/510684

Log:
  lang/rust: Unbreak on armv6
  
  error: couldn't load codegen backend "/usr/ports/lang/rust/work/rustc-1.37.0-src/build/armv6-unknown-freebsd/stage1/lib/rustlib/armv6-unknown-freebsd/codegen-backends/librustc_codegen_llvm-llvm.so": "/usr/ports/lang/rust/work/rustc-1.37.0-src/build/armv6-unknown-freebsd/stage1/lib/rustlib/armv6-unknown-freebsd/codegen-backends/librustc_codegen_llvm-llvm.so: Undefined symbol \"__clear_cache\""
  
  __clear_cache is implemented in compiler-rt and was dropped upstream with [1]:
  https://github.com/rust-lang-nursery/compiler-builtins/commit/aa41e0d25fcb2b11b9b5c269846dd70547f2a787
  
  For some unknown reason this is a problem on armv6.  Bring back the
  compiler-rt submodule for now to workaround this.
  
  Submitted by:	 mikael.urankar_gmail.com
  Differential Revision:	https://reviews.freebsd.org/D21415

Modified:
  head/lang/rust/Makefile
  head/lang/rust/distinfo

Modified: head/lang/rust/Makefile
==============================================================================
--- head/lang/rust/Makefile	Sun Sep  1 07:07:27 2019	(r510683)
+++ head/lang/rust/Makefile	Sun Sep  1 07:26:54 2019	(r510684)
@@ -9,12 +9,15 @@ MASTER_SITES=	https://static.rust-lang.org/dist/:src \
 		https://static.rust-lang.org/dist/:rust_bootstrap \
 		LOCAL/tobik/rust:rust_bootstrap \
 		https://static.rust-lang.org/dist/:cargo_bootstrap \
-		LOCAL/tobik/rust:cargo_bootstrap
+		LOCAL/tobik/rust:cargo_bootstrap \
+		https://github.com/llvm/llvm-project/releases/download/llvmorg-8.0.1/:compiler_rt
 DISTNAME?=	${PORTNAME}c-${PORTVERSION}-src
 DISTFILES?=	${NIGHTLY_SUBDIR}${DISTNAME}${EXTRACT_SUFX}:src \
 		${RUSTC_BOOTSTRAP}${BOOTSTRAPS_SUFFIX}.tar.gz:rust_bootstrap \
 		${RUST_STD_BOOTSTRAP}${BOOTSTRAPS_SUFFIX}.tar.gz:rust_bootstrap \
-		${CARGO_BOOTSTRAP}${BOOTSTRAPS_SUFFIX}.tar.gz:cargo_bootstrap
+		${CARGO_BOOTSTRAP}${BOOTSTRAPS_SUFFIX}.tar.gz:cargo_bootstrap \
+		${DISTFILES_${ARCH}}
+DISTFILES_armv6=	compiler-rt-8.0.1.src.tar.xz:compiler_rt
 DIST_SUBDIR?=	rust
 EXTRACT_ONLY?=	${DISTFILES:N*\:*bootstrap:C/:.*//}
 
@@ -107,6 +110,9 @@ post-extract:
 		${WRKSRC}/build/cache/${RUST_STD_BOOTSTRAP}.tar.gz
 	${LN} -sf ${DISTDIR}/${DIST_SUBDIR}/${CARGO_BOOTSTRAP}${BOOTSTRAPS_SUFFIX}.tar.gz \
 		${WRKSRC}/build/cache/${CARGO_BOOTSTRAP}.tar.gz
+.if ${ARCH} == armv6
+	${LN} -sf ${WRKDIR}/compiler-rt-8.0.1.src ${WRKSRC}/src/llvm-project/compiler-rt
+.endif
 
 post-patch:
 	@${REINPLACE_CMD} 's,gdb,${LOCALBASE}/bin/gdb,' ${WRKSRC}/src/etc/rust-gdb
@@ -243,6 +249,9 @@ makesum:
 .for arch in ${ONLY_FOR_ARCHS:O:[2..-1]}
 	${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=${arch} DISTINFO_FILE=${DISTINFO_FILE}.${arch}
 	${GREP} ${RUST_ARCH_${arch}} ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE}
+.for file in ${DISTFILES_${arch}}
+	${GREP} ${file:S,:, ,:[1]} ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE}
+.endfor
 	${RM} ${DISTINFO_FILE}.${arch}
 .endfor
 	${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=powerpc64 BOOTSTRAPS_SUFFIX="-elfv2" DISTINFO_FILE=${DISTINFO_FILE}.powerpc64-elfv2

Modified: head/lang/rust/distinfo
==============================================================================
--- head/lang/rust/distinfo	Sun Sep  1 07:07:27 2019	(r510683)
+++ head/lang/rust/distinfo	Sun Sep  1 07:26:54 2019	(r510684)
@@ -1,4 +1,4 @@
-TIMESTAMP = 1565879155
+TIMESTAMP = 1567322590
 SHA256 (rust/rustc-1.37.0-src.tar.xz) = 10abffac50a729cf74cef6dd03193a2f4647541bd19ee9281be9e5b12ca8cdfd
 SIZE (rust/rustc-1.37.0-src.tar.xz) = 98654252
 SHA256 (rust/2019-07-04/rustc-1.36.0-aarch64-unknown-freebsd.tar.gz) = 8eec2d7750c96030b6b95eec2bc9ed1b7194780628d6017f615c2effdcc3b928
@@ -19,6 +19,8 @@ SHA256 (rust/2019-07-04/rust-std-1.36.0-armv6-unknown-
 SIZE (rust/2019-07-04/rust-std-1.36.0-armv6-unknown-freebsd.tar.gz) = 79061925
 SHA256 (rust/2019-07-04/cargo-0.37.0-armv6-unknown-freebsd.tar.gz) = e4fa3e76ab448eb8bfdf323b4de976a6f07c35d0eca91cc2bf480b41faa157ec
 SIZE (rust/2019-07-04/cargo-0.37.0-armv6-unknown-freebsd.tar.gz) = 5544892
+SHA256 (rust/compiler-rt-8.0.1.src.tar.xz) = 11828fb4823387d820c6715b25f6b2405e60837d12a7469e7a8882911c721837
+SIZE (rust/compiler-rt-8.0.1.src.tar.xz) = 1954204
 SHA256 (rust/2019-07-04/rustc-1.36.0-armv7-unknown-freebsd.tar.gz) = c652bfb82d0e640e24a91aef39e9eeeedc0bd0b5b828546f9ef47bbae6a279bd
 SIZE (rust/2019-07-04/rustc-1.36.0-armv7-unknown-freebsd.tar.gz) = 70165782
 SHA256 (rust/2019-07-04/rust-std-1.36.0-armv7-unknown-freebsd.tar.gz) = 8750ff6013261b68f692413c7db97fabac6a83583b4c16c2175ebb6a81c1d0c6



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