svn commit: r453052 - head/lang/rust
Jean-Sébastien Pédron
dumbbell at FreeBSD.org
Sat Oct 28 09:13:22 UTC 2017
Author: dumbbell
Date: Sat Oct 28 09:13:21 2017
New Revision: 453052
URL: https://svnweb.freebsd.org/changeset/ports/453052
Log:
lang/rust: Update to 1.21.0
The official bootstraps wouldn't work: rustc was stalled on a mutex
while compiling a crate early in the build. This was solved by creating
a new bootstraps for "rustc" and "rust-std" from the existing FreeBSD
package. We keep using the official "cargo" bootstrap.
PR: 223123
Modified:
head/lang/rust/Makefile
head/lang/rust/distinfo
Modified: head/lang/rust/Makefile
==============================================================================
--- head/lang/rust/Makefile Sat Oct 28 08:26:27 2017 (r453051)
+++ head/lang/rust/Makefile Sat Oct 28 09:13:21 2017 (r453052)
@@ -2,15 +2,14 @@
# $FreeBSD$
PORTNAME= rust
-PORTVERSION?= 1.20.0
-PORTREVISION?= 1
+PORTVERSION?= 1.21.0
CATEGORIES= lang
MASTER_SITES= http://static.rust-lang.org/dist/:src \
- https://static.rust-lang.org/dist/:rust_bootstrap \
LOCAL/dumbbell/rust:rust_bootstrap \
+ https://static.rust-lang.org/dist/:rust_bootstrap \
+ LOCAL/dumbbell/rust:cargo_bootstrap \
https://static.rust-lang.org/dist/:cargo_bootstrap \
https://s3.amazonaws.com/rust-lang-ci/cargo-builds/:cargo_bootstrap \
- LOCAL/dumbbell/rust:cargo_bootstrap \
LOCAL/marino:bootstrap
DISTNAME?= ${PORTNAME}c-${PORTVERSION}-src
DISTFILES?= ${DISTNAME}${EXTRACT_SUFX}:src \
@@ -43,16 +42,13 @@ ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap com
#CONFLICTS_BUILD+= ${PKGBASE}
CONFLICTS_INSTALL?= rust-nightly
-BOOTSTRAPS_DATE?= 2017-07-20
-BOOTSTRAPS_DATE_aarch64?= 2017-07-20
+BOOTSTRAPS_DATE?= 2017-08-31
-RUST_BOOTSTRAP_VERSION?= 1.19.0
-RUST_BOOTSTRAP_VERSION_aarch64?=1.19.0
+RUST_BOOTSTRAP_VERSION?= 1.20.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.20.0
-CARGO_BOOTSTRAP_VERSION_aarch64?=0.20.0
+CARGO_BOOTSTRAP_VERSION?= 0.21.0
CARGO_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/cargo-${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}-${RUST_TARGET}${EXTRACT_SUFX}
RUST_CHANNEL= ${PKGNAMESUFFIX:Ustable:S/^-//}
@@ -134,8 +130,9 @@ pre-fetch:
fi
RUST_STD_DIR= ${RUST_STD_BOOTSTRAP:T:R:R}
-LIBSTD_SUFFIX= 35ad9950c7e5074b
-LIBSTD_SUFFIX_aarch64= ab4dd4f618cec2e9
+LIBSTD_SUFFIX_aarch64= 8eed00280b051035
+LIBSTD_SUFFIX_amd64= fdf1c4a03a15a71f
+LIBSTD_SUFFIX_i386= aaa09cdd21ad338f
LIBSTD= ${RUST_STD_DIR}/rust-std-${RUST_TARGET}/lib/rustlib/${RUST_TARGET}/lib/libstd-${LIBSTD_SUFFIX_${ARCH}:U${LIBSTD_SUFFIX}}.rlib
STDF= ${LIBSTD:T:R:S/lib//}.0.o
@@ -168,23 +165,23 @@ post-patch:
# If we override the versions and date of the bootstraps (for instance
# on aarch64 where we provide our own bootstraps), we need to update
# places where they are recorded.
- @if test "${BOOTSTRAPS_DATE_${ARCH}}"; then \
+ @if test "${BOOTSTRAPS_DATE_${ARCH}}" && \
+ test "${BOOTSTRAPS_DATE_${ARCH}}" != "${BOOTSTRAPS_DATE}"; then \
${REINPLACE_CMD} -e \
's|^date:.*|date: ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}|' \
${WRKSRC}/src/stage0.txt; \
fi
- @if test "${RUST_BOOTSTRAP_VERSION_${ARCH}}"; then \
+ @if test "${RUST_BOOTSTRAP_VERSION_${ARCH}}" && \
+ test "${RUST_BOOTSTRAP_VERSION_${ARCH}}" != "${RUST_BOOTSTRAP_VERSION}"; then \
${REINPLACE_CMD} -e \
's|^rustc:.*|rustc: ${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}|' \
${WRKSRC}/src/stage0.txt; \
fi
- @if test "${CARGO_BOOTSTRAP_VERSION_${ARCH}}"; then \
+ @if test "${CARGO_BOOTSTRAP_VERSION_${ARCH}}" && \
+ test "${CARGO_BOOTSTRAP_VERSION_${ARCH}}" != "${CARGO_BOOTSTRAP_VERSION}"; then \
${REINPLACE_CMD} -e \
's|^cargo:.*|cargo: ${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}|' \
${WRKSRC}/src/stage0.txt; \
- ${REINPLACE_CMD} -e \
- 's|cargo-nightly-|cargo-${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}-|' \
- ${WRKSRC}/src/bootstrap/bootstrap.py; \
fi
# After patching crates, we need to update their corresponding
# `.cargo-checksum.json` to reflect the new checksums verified by Cargo.
@@ -352,5 +349,41 @@ do-test:
--verbose \
--config ./config.toml \
--jobs ${MAKE_JOBS_NUMBER}
+
+BOOTSTRAPS_SOURCE_PKG_FBSDVER= 10
+BOOTSTRAPS_SOURCE_PKG_FBSDVER_aarch64= 11
+BOOTSTRAPS_SOURCE_PKG_URL= http://pkg.freebsd.org/FreeBSD:${BOOTSTRAPS_SOURCE_PKG_FBSDVER_${ARCH}:U${BOOTSTRAPS_SOURCE_PKG_FBSDVER}}:${ARCH}/latest/All/rust-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}.txz
+BOOTSTRAPS_SOURCE_PKG= ${_DISTDIR}/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rust-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${ARCH}.txz
+
+package-to-bootstraps: ${BOOTSTRAPS_SOURCE_PKG}
+ ${MKDIR} ${WRKDIR}/bootstraps
+ ${RM} -r ${WRKDIR}/bootstraps/usr
+ ${EXTRACT_CMD} \
+ -C ${WRKDIR}/bootstraps \
+ --strip-components 3 \
+ ${EXTRACT_BEFORE_ARGS} ${BOOTSTRAPS_SOURCE_PKG} ${LOCALBASE}
+# `rustc` bootstrap.
+ ${RM} -r ${WRKDIR}/bootstraps/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}
+ ${MKDIR} ${WRKDIR}/bootstraps/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}
+ cd ${WRKDIR}/bootstraps/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET} && \
+ ${MKDIR} rustc/bin rustc/lib && \
+ ${MV} ${WRKDIR}/bootstraps/bin/rust* rustc/bin && \
+ ${MV} ${WRKDIR}/bootstraps/lib/*.so rustc/lib
+ ${TAR} -cz --format=ustar -C ${WRKDIR}/bootstraps \
+ -f ${_DISTDIR}/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}.tar.gz \
+ rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}
+# `rust-std` bootstrap.
+ ${RM} -r ${WRKDIR}/bootstraps/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}
+ ${MKDIR} ${WRKDIR}/bootstraps/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}
+ cd ${WRKDIR}/bootstraps/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET} && \
+ ${MKDIR} rust-std-${RUST_TARGET}/lib/rustlib/${RUST_TARGET} && \
+ ${MV} ${WRKDIR}/bootstraps/lib/rustlib/${RUST_TARGET}/lib rust-std-${RUST_TARGET}/lib/rustlib/${RUST_TARGET}
+ ${TAR} -cz --format=ustar -C ${WRKDIR}/bootstraps \
+ -f ${_DISTDIR}/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}.tar.gz \
+ rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}
+
+${BOOTSTRAPS_SOURCE_PKG}:
+ ${MKDIR} ${@:H}
+ ${FETCH_CMD} -o $@ ${BOOTSTRAPS_SOURCE_PKG_URL}
.include <bsd.port.post.mk>
Modified: head/lang/rust/distinfo
==============================================================================
--- head/lang/rust/distinfo Sat Oct 28 08:26:27 2017 (r453051)
+++ head/lang/rust/distinfo Sat Oct 28 09:13:21 2017 (r453052)
@@ -1,21 +1,21 @@
-TIMESTAMP = 1506544334
-SHA256 (rust/rustc-1.20.0-src.tar.gz) = 2aa4875ff4472c6e35262bbb9052cb2623da3dae6084a858cc59d36f33f18214
-SIZE (rust/rustc-1.20.0-src.tar.gz) = 50418082
-SHA256 (rust/2017-07-20/rustc-1.19.0-aarch64-unknown-freebsd.tar.gz) = 0386e8f2f1b85f40d9d6d15de1b4c4fb384e3b22966f232bc7dac4afc969c4ad
-SIZE (rust/2017-07-20/rustc-1.19.0-aarch64-unknown-freebsd.tar.gz) = 43149574
-SHA256 (rust/2017-07-20/rust-std-1.19.0-aarch64-unknown-freebsd.tar.gz) = 587369524975204ef503d1d008f703122cf20912bd5f5545efbf2996323e4642
-SIZE (rust/2017-07-20/rust-std-1.19.0-aarch64-unknown-freebsd.tar.gz) = 58375655
-SHA256 (rust/2017-07-20/cargo-0.20.0-aarch64-unknown-freebsd.tar.gz) = 73ecd5277dc4e44f1616c2bd9e0ea4062e163740d3082d9c64681a856d6b3b83
-SIZE (rust/2017-07-20/cargo-0.20.0-aarch64-unknown-freebsd.tar.gz) = 3029610
-SHA256 (rust/2017-07-20/rustc-1.19.0-i686-unknown-freebsd.tar.gz) = ee9a40272800d6bca5d797489101bf0629bb8b84b195d402452d24ebd7e07709
-SIZE (rust/2017-07-20/rustc-1.19.0-i686-unknown-freebsd.tar.gz) = 54627942
-SHA256 (rust/2017-07-20/rust-std-1.19.0-i686-unknown-freebsd.tar.gz) = c06a89909adde2f97c4f280ea186e41d9c47c4999912267e4eb3f6379ac35aa0
-SIZE (rust/2017-07-20/rust-std-1.19.0-i686-unknown-freebsd.tar.gz) = 74163023
-SHA256 (rust/2017-07-20/cargo-0.20.0-i686-unknown-freebsd.tar.gz) = e43cde13c169be7c738623a8b57023648375d68524e5005df5a907e31fc73a1f
-SIZE (rust/2017-07-20/cargo-0.20.0-i686-unknown-freebsd.tar.gz) = 5162200
-SHA256 (rust/2017-07-20/rustc-1.19.0-x86_64-unknown-freebsd.tar.gz) = 7f6c02b075b55c897962cd17f05355c7f07a4975c66a4b1dabb10556bd6efb0f
-SIZE (rust/2017-07-20/rustc-1.19.0-x86_64-unknown-freebsd.tar.gz) = 52460523
-SHA256 (rust/2017-07-20/rust-std-1.19.0-x86_64-unknown-freebsd.tar.gz) = ab1098ec8e8940bbbfec48a9bd1821e5af74b7da4352dd95f16274ab1f437f80
-SIZE (rust/2017-07-20/rust-std-1.19.0-x86_64-unknown-freebsd.tar.gz) = 72454102
-SHA256 (rust/2017-07-20/cargo-0.20.0-x86_64-unknown-freebsd.tar.gz) = a2460994c0c58bd97d38010c5ac0698137522a4e7730f1480b7a03b3a667e9b9
-SIZE (rust/2017-07-20/cargo-0.20.0-x86_64-unknown-freebsd.tar.gz) = 5248001
+TIMESTAMP = 1508970863
+SHA256 (rust/rustc-1.21.0-src.tar.gz) = 1707c142244b5bd909993559c6116c81987c1de21d6207c05d3ecbe5bba548fa
+SIZE (rust/rustc-1.21.0-src.tar.gz) = 52555346
+SHA256 (rust/2017-08-31/rustc-1.20.0-aarch64-unknown-freebsd.tar.gz) = 6703e3205c5d7075ea49acb5a0a2bf4fb1dfe3a10daf160a67a1c4376e37e530
+SIZE (rust/2017-08-31/rustc-1.20.0-aarch64-unknown-freebsd.tar.gz) = 42731935
+SHA256 (rust/2017-08-31/rust-std-1.20.0-aarch64-unknown-freebsd.tar.gz) = 9da54867a9b65e708f7e31c615f7a31bfacad2d9fe5459e570575118f29a122c
+SIZE (rust/2017-08-31/rust-std-1.20.0-aarch64-unknown-freebsd.tar.gz) = 59365419
+SHA256 (rust/2017-08-31/cargo-0.21.0-aarch64-unknown-freebsd.tar.gz) = 9d556e11ea2f391bfa382f08818185c5d05bf94966ff35ae24e53a510f7ae5da
+SIZE (rust/2017-08-31/cargo-0.21.0-aarch64-unknown-freebsd.tar.gz) = 2915815
+SHA256 (rust/2017-08-31/rustc-1.20.0-i686-unknown-freebsd.tar.gz) = 58c8c4f73c9170cd0e81071147cd0772fc5e8512f4fcfb6fd08ad2c60b69177d
+SIZE (rust/2017-08-31/rustc-1.20.0-i686-unknown-freebsd.tar.gz) = 44170684
+SHA256 (rust/2017-08-31/rust-std-1.20.0-i686-unknown-freebsd.tar.gz) = 3426262d596ab8bf41b818965f995588256ae7008c162a39f83eed93ce3c42f8
+SIZE (rust/2017-08-31/rust-std-1.20.0-i686-unknown-freebsd.tar.gz) = 60720005
+SHA256 (rust/2017-08-31/cargo-0.21.0-i686-unknown-freebsd.tar.gz) = cad85e8beb87eeacfa80944b63653ed00a60b9d6f7e423ea0c58a83db8a2ea4a
+SIZE (rust/2017-08-31/cargo-0.21.0-i686-unknown-freebsd.tar.gz) = 5134986
+SHA256 (rust/2017-08-31/rustc-1.20.0-x86_64-unknown-freebsd.tar.gz) = d7f06662a29023043e21f598d24803d6c2f0d801635016abb32636b55ca14535
+SIZE (rust/2017-08-31/rustc-1.20.0-x86_64-unknown-freebsd.tar.gz) = 43348607
+SHA256 (rust/2017-08-31/rust-std-1.20.0-x86_64-unknown-freebsd.tar.gz) = aa1773ec1049247ef0730195eb83a7a73f22df556fe759029679aabe0235a3d3
+SIZE (rust/2017-08-31/rust-std-1.20.0-x86_64-unknown-freebsd.tar.gz) = 60215051
+SHA256 (rust/2017-08-31/cargo-0.21.0-x86_64-unknown-freebsd.tar.gz) = 522592cdee824d8d7b7c3472f29ded39d10f1fb3d07f3b3ea0673b8edf6d5b66
+SIZE (rust/2017-08-31/cargo-0.21.0-x86_64-unknown-freebsd.tar.gz) = 5183277
More information about the svn-ports-head
mailing list