Changeset View
Changeset View
Standalone View
Standalone View
head/lang/rust/Makefile
# Created by: Jyun-Yan You <jyyou@cs.nctu.edu.tw> | # Created by: Jyun-Yan You <jyyou@cs.nctu.edu.tw> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= rust | PORTNAME= rust | ||||
PORTVERSION?= 1.35.0 | PORTVERSION?= 1.36.0 | ||||
PORTREVISION?= 0 | PORTREVISION?= 0 | ||||
CATEGORIES= lang | CATEGORIES= lang | ||||
MASTER_SITES= https://static.rust-lang.org/dist/:src \ | MASTER_SITES= https://static.rust-lang.org/dist/:src \ | ||||
LOCAL/tobik/rust:rust_bootstrap \ | |||||
https://static.rust-lang.org/dist/:rust_bootstrap \ | https://static.rust-lang.org/dist/:rust_bootstrap \ | ||||
LOCAL/tobik/rust:cargo_bootstrap \ | LOCAL/tobik/rust:rust_bootstrap \ | ||||
https://static.rust-lang.org/dist/:cargo_bootstrap | https://static.rust-lang.org/dist/:cargo_bootstrap \ | ||||
LOCAL/tobik/rust:cargo_bootstrap | |||||
DISTNAME?= ${PORTNAME}c-${PORTVERSION}-src | DISTNAME?= ${PORTNAME}c-${PORTVERSION}-src | ||||
DISTFILES?= ${NIGHTLY_SUBDIR}${DISTNAME}${EXTRACT_SUFX}:src \ | DISTFILES?= ${NIGHTLY_SUBDIR}${DISTNAME}${EXTRACT_SUFX}:src \ | ||||
${RUSTC_BOOTSTRAP}:rust_bootstrap \ | ${RUSTC_BOOTSTRAP}:rust_bootstrap \ | ||||
${RUST_STD_BOOTSTRAP}:rust_bootstrap \ | ${RUST_STD_BOOTSTRAP}:rust_bootstrap \ | ||||
${CARGO_BOOTSTRAP}:cargo_bootstrap | ${CARGO_BOOTSTRAP}:cargo_bootstrap | ||||
DIST_SUBDIR?= rust | DIST_SUBDIR?= rust | ||||
EXTRACT_ONLY?= ${DISTFILES:N*\:*bootstrap:C/:.*//} | EXTRACT_ONLY?= ${DISTFILES:N*\:*bootstrap:C/:.*//} | ||||
Show All 12 Lines | LIB_DEPENDS= libcurl.so:ftp/curl \ | ||||
libssh2.so:security/libssh2 | libssh2.so:security/libssh2 | ||||
ONLY_FOR_ARCHS?= aarch64 amd64 armv6 armv7 i386 powerpc64 | ONLY_FOR_ARCHS?= aarch64 amd64 armv6 armv7 i386 powerpc64 | ||||
ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap compiler | ONLY_FOR_ARCHS_REASON= requires prebuilt bootstrap compiler | ||||
CONFLICTS_INSTALL?= rust-nightly | CONFLICTS_INSTALL?= rust-nightly | ||||
# See WRKSRC/src/stage0.txt for this date and version values. | # See WRKSRC/src/stage0.txt for this date and version values. | ||||
BOOTSTRAPS_DATE?= 2019-05-14 | BOOTSTRAPS_DATE?= 2019-05-23 | ||||
BOOTSTRAPS_SUFFIX?= ${BOOTSTRAPS_SUFFIX_${ARCH}} | |||||
BOOTSTRAPS_SUFFIX_powerpc64?= -elfv1 | |||||
RUST_BOOTSTRAP_VERSION?= 1.34.2 | RUST_BOOTSTRAP_VERSION?= 1.35.0 | ||||
RUST_BOOTSTRAP_VERSION_aarch64?= 1.34.0 | RUSTC_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rustc-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}${BOOTSTRAPS_SUFFIX}.tar.gz | ||||
RUST_BOOTSTRAP_VERSION_armv6?= 1.34.0 | RUST_STD_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/rust-std-${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}-${RUST_TARGET}${BOOTSTRAPS_SUFFIX}.tar.gz | ||||
RUST_BOOTSTRAP_VERSION_armv7?= 1.34.0 | |||||
RUST_BOOTSTRAP_VERSION_powerpc64?= 1.34.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.35.0 | CARGO_BOOTSTRAP_VERSION?= 0.36.0 | ||||
CARGO_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/cargo-${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}-${RUST_TARGET}.tar.gz | CARGO_BOOTSTRAP= ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}/cargo-${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}-${RUST_TARGET}${BOOTSTRAPS_SUFFIX}.tar.gz | ||||
CARGO_VENDOR_DIR?= ${WRKSRC}/vendor | CARGO_VENDOR_DIR?= ${WRKSRC}/vendor | ||||
RUST_CHANNEL= ${PKGNAMESUFFIX:Ustable:S/^-//} | RUST_CHANNEL= ${PKGNAMESUFFIX:Ustable:S/^-//} | ||||
# Rust's target arch string is different from *BSD arch strings | # Rust's target arch string is different from *BSD arch strings | ||||
RUST_ARCH_aarch64= aarch64 | RUST_ARCH_aarch64= aarch64 | ||||
RUST_ARCH_amd64= x86_64 | RUST_ARCH_amd64= x86_64 | ||||
▲ Show 20 Lines • Show All 60 Lines • ▼ Show 20 Lines | post-extract: | ||||
${LN} -sf ${DISTDIR}/${DIST_SUBDIR}/${RUST_STD_BOOTSTRAP} \ | ${LN} -sf ${DISTDIR}/${DIST_SUBDIR}/${RUST_STD_BOOTSTRAP} \ | ||||
${WRKSRC}/build/cache/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}} | ${WRKSRC}/build/cache/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}} | ||||
${LN} -sf ${DISTDIR}/${DIST_SUBDIR}/${CARGO_BOOTSTRAP} \ | ${LN} -sf ${DISTDIR}/${DIST_SUBDIR}/${CARGO_BOOTSTRAP} \ | ||||
${WRKSRC}/build/cache/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}} | ${WRKSRC}/build/cache/${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}} | ||||
post-patch: | post-patch: | ||||
@${REINPLACE_CMD} -e 's|gdb|${LOCALBASE}/bin/gdb|' \ | @${REINPLACE_CMD} -e 's|gdb|${LOCALBASE}/bin/gdb|' \ | ||||
${WRKSRC}/src/etc/rust-gdb | ${WRKSRC}/src/etc/rust-gdb | ||||
@${ECHO_MSG} "Canonical bootstrap date and version before patching:" | |||||
@${GREP} -E '^(date|rustc|cargo)' ${WRKSRC}/src/stage0.txt | |||||
# If we override the versions and date of the bootstraps (for instance | # If we override the versions and date of the bootstraps (for instance | ||||
# on aarch64 where we provide our own bootstraps), we need to update | # on aarch64 where we provide our own bootstraps), we need to update | ||||
# places where they are recorded. | # places where they are recorded. | ||||
@${REINPLACE_CMD} -e \ | @${REINPLACE_CMD} -e \ | ||||
's|^date:.*|date: ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}|' \ | 's|^date:.*|date: ${BOOTSTRAPS_DATE_${ARCH}:U${BOOTSTRAPS_DATE}}|' \ | ||||
${WRKSRC}/src/stage0.txt | ${WRKSRC}/src/stage0.txt | ||||
@${REINPLACE_CMD} -e \ | @${REINPLACE_CMD} -e \ | ||||
's|^rustc:.*|rustc: ${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}|' \ | 's|^rustc:.*|rustc: ${RUST_BOOTSTRAP_VERSION_${ARCH}:U${RUST_BOOTSTRAP_VERSION}}|' \ | ||||
${WRKSRC}/src/stage0.txt | ${WRKSRC}/src/stage0.txt | ||||
@${REINPLACE_CMD} -e \ | @${REINPLACE_CMD} -e \ | ||||
's|^cargo:.*|cargo: ${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}|' \ | 's|^cargo:.*|cargo: ${CARGO_BOOTSTRAP_VERSION_${ARCH}:U${CARGO_BOOTSTRAP_VERSION}}|' \ | ||||
${WRKSRC}/src/stage0.txt | ${WRKSRC}/src/stage0.txt | ||||
@${ECHO_MSG} "Bootstrap date and version after patching:" | |||||
@${GREP} -E '^(date|rustc|cargo)' ${WRKSRC}/src/stage0.txt | |||||
# Disable vendor checksums | # Disable vendor checksums | ||||
@${REINPLACE_CMD} -e \ | @${REINPLACE_CMD} -e \ | ||||
's/"files":{[^}]*}/"files":{}/' \ | 's/"files":{[^}]*}/"files":{}/' \ | ||||
${CARGO_VENDOR_DIR}/*/.cargo-checksum.json | ${CARGO_VENDOR_DIR}/*/.cargo-checksum.json | ||||
post-patch-SOURCES-off: | post-patch-SOURCES-off: | ||||
# Mimic tools in config.toml with just src excluded | # Mimic tools in config.toml with just src excluded | ||||
@${REINPLACE_CMD} -e 's/config.tools.*"src".*/false;/' \ | @${REINPLACE_CMD} -e 's/config.tools.*"src".*/false;/' \ | ||||
▲ Show 20 Lines • Show All 140 Lines • ▼ Show 20 Lines | |||||
.if !defined(_RUST_MAKESUM_GUARD) | .if !defined(_RUST_MAKESUM_GUARD) | ||||
makesum: | makesum: | ||||
${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=${ONLY_FOR_ARCHS:O:[1]} | ${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=${ONLY_FOR_ARCHS:O:[1]} | ||||
.for arch in ${ONLY_FOR_ARCHS:O:[2..-1]} | .for arch in ${ONLY_FOR_ARCHS:O:[2..-1]} | ||||
${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=${arch} DISTINFO_FILE=${DISTINFO_FILE}.${arch} | ${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=${arch} DISTINFO_FILE=${DISTINFO_FILE}.${arch} | ||||
${GREP} ${RUST_ARCH_${arch}} ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE} | ${GREP} ${RUST_ARCH_${arch}} ${DISTINFO_FILE}.${arch} >> ${DISTINFO_FILE} | ||||
${RM} ${DISTINFO_FILE}.${arch} | ${RM} ${DISTINFO_FILE}.${arch} | ||||
.endfor | .endfor | ||||
${MAKE} -D_RUST_MAKESUM_GUARD makesum ARCH=powerpc64 BOOTSTRAPS_SUFFIX="" DISTINFO_FILE=${DISTINFO_FILE}.powerpc64-elfv2 | |||||
${GREP} ${RUST_ARCH_powerpc64} ${DISTINFO_FILE}.powerpc64-elfv2 >> ${DISTINFO_FILE} | |||||
${RM} ${DISTINFO_FILE}.powerpc64-elfv2 | |||||
.endif | .endif | ||||
BOOTSTRAPS_SOURCE_PKG_FBSDVER= 10 | BOOTSTRAPS_SOURCE_PKG_FBSDVER= 10 | ||||
BOOTSTRAPS_SOURCE_PKG_FBSDVER_aarch64= 11 | BOOTSTRAPS_SOURCE_PKG_FBSDVER_aarch64= 11 | ||||
BOOTSTRAPS_SOURCE_PKG_FBSDVER_armv6= 11 | BOOTSTRAPS_SOURCE_PKG_FBSDVER_armv6= 11 | ||||
BOOTSTRAPS_SOURCE_PKG_FBSDVER_armv7= 12 | BOOTSTRAPS_SOURCE_PKG_FBSDVER_armv7= 12 | ||||
BOOTSTRAPS_SOURCE_PKG_FBSDVER_powerpc64= 11 | BOOTSTRAPS_SOURCE_PKG_FBSDVER_powerpc64= 11 | ||||
BOOTSTRAPS_SOURCE_PKG_REV= | BOOTSTRAPS_SOURCE_PKG_REV= | ||||
Show All 35 Lines |