Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F111043152
D23133.id66619.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
28 KB
Referenced Files
None
Subscribers
None
D23133.id66619.diff
View Options
Index: lang/Makefile
===================================================================
--- lang/Makefile
+++ lang/Makefile
@@ -316,6 +316,7 @@
SUBDIR += ruby26
SUBDIR += runawk
SUBDIR += rust
+ SUBDIR += rust-bootstrap
SUBDIR += rust-nightly
SUBDIR += sagittarius-scheme
SUBDIR += sather-specification
Index: lang/rust-bootstrap/Makefile
===================================================================
--- /dev/null
+++ lang/rust-bootstrap/Makefile
@@ -0,0 +1,221 @@
+# $FreeBSD$
+
+PORTNAME= rust
+PORTVERSION= 1.40.0
+CATEGORIES= lang
+MASTER_SITES= https://static.rust-lang.org/dist/:rust \
+ LOCAL/tobik:armbase \
+ LOCAL/tobik:base \
+ https://download.freebsd.org/ftp/${_RUST_FBSD_SUBDIR_${FLAVOR}}/:base \
+ LOCAL/tobik:powerpc64_gcc
+# http://pkg.freebsd.org/FreeBSD:12:powerpc64/quarterly/All/gcc9-9.2.0.txz?dummy=/:powerpc64_gcc
+PKGNAMESUFFIX= -bootstrap
+DISTNAME= ${PORTNAME}c-${PORTVERSION}-src
+DISTFILES= rust/${DISTNAME}${EXTRACT_SUFX}:rust \
+ ${_RUST_FBSD_DIST_${FLAVOR}}
+
+MAINTAINER= rust@FreeBSD.org
+COMMENT= Create bootstrap compilers for building lang/rust
+
+LICENSE= APACHE20 MIT
+LICENSE_COMB= dual
+LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSE-APACHE
+LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT
+
+ONLY_FOR_ARCHS= amd64
+ONLY_FOR_ARCHS_REASON= untested on other archs
+
+BUILD_DEPENDS= cmake:devel/cmake \
+ gmake:devel/gmake \
+ rust>=1.39.0:lang/rust
+
+FLAVORS= aarch64 amd64 armv6 armv7 i386 powerpc64_elfv1 powerpc64_elfv2
+FLAVOR?= ${FLAVORS:[1]}
+
+aarch64_PKGNAMEPREFIX= aarch64-
+amd64_PKGNAMEPREFIX= amd64-
+armv6_PKGNAMEPREFIX= armv6-
+armv7_PKGNAMEPREFIX= armv7-
+i386_PKGNAMEPREFIX= i386-
+powerpc64_elfv1_PKGNAMEPREFIX= powerpc64-elfv1-
+powerpc64_elfv1_BUILD_DEPENDS= powerpc64-gcc9>0:devel/freebsd-gcc9@powerpc64
+powerpc64_elfv2_PKGNAMEPREFIX= powerpc64-elfv2-
+
+USES= perl5 python:3.3+,build tar:xz
+.if ${FLAVOR} == powerpc64_elfv1
+USE_GCC= yes
+.endif
+# for openssl-src crate
+USE_PERL5= build
+PATCHDIR= ${.CURDIR}/../rust/files
+# Resulting packages are not specific to amd64
+NO_ARCH= yes
+
+_RUST_FBSD_DIST_aarch64= FreeBSD-${_RUST_FBSD_VER}-arm64${EXTRACT_SUFX}:base
+_RUST_FBSD_DIST_amd64= FreeBSD-${_RUST_FBSD_VER}-amd64${EXTRACT_SUFX}:base
+# base.txz for armv* created from WANDBOARD images as there seem
+# to be no generic base.txz for it.
+_RUST_FBSD_DIST_armv6= FreeBSD-${_RUST_FBSD_VER}-arm-armv6${EXTRACT_SUFX}:armbase
+_RUST_FBSD_DIST_armv7= FreeBSD-${_RUST_FBSD_VER}-arm-armv7${EXTRACT_SUFX}:armbase
+_RUST_FBSD_DIST_i386= FreeBSD-${_RUST_FBSD_VER}-i386${EXTRACT_SUFX}:base
+_RUST_FBSD_DIST_powerpc64_elfv1= FreeBSD-${_RUST_FBSD_VER}-powerpc64-elfv1${EXTRACT_SUFX}:base \
+ FreeBSD-${_RUST_FBSD_VER}-powerpc64-elfv1-gcc9-9.2.0${EXTRACT_SUFX}:powerpc64_gcc
+_RUST_FBSD_DIST_powerpc64_elfv2= FreeBSD-${_RUST_FBSD_VER}-powerpc64-elfv2-r356261${EXTRACT_SUFX}:base
+_RUST_FBSD_VER= ${_RUST_FBSD_VER_${FLAVOR}:U11.3-RELEASE}
+_RUST_FBSD_VER_aarch64= 12.1-RELEASE
+_RUST_FBSD_VER_armv7= 12.1-RELEASE
+_RUST_FBSD_VER_powerpc64_elfv1= 12.1-RELEASE
+_RUST_FBSD_VER_powerpc64_elfv2= 13.0-CURRENT
+_RUST_FBSD_SUBDIR_aarch64= releases/arm64/${_RUST_FBSD_VER}/base.txz?dummy=
+_RUST_FBSD_SUBDIR_amd64= releases/amd64/${_RUST_FBSD_VER}/base.txz?dummy=
+_RUST_FBSD_SUBDIR_i386= releases/i386/${_RUST_FBSD_VER}/base.txz?dummy=
+_RUST_FBSD_SUBDIR_powerpc64_elfv1= releases/powerpc/powerpc64/${_RUST_FBSD_VER}/base.txz?dummy=
+_RUST_FBSD_SUBDIR_powerpc64_elfv2= snapshots/powerpc/powerpc64/${_RUST_FBSD_VER}/base.txz?dummy=
+
+_CARGO_VENDOR_DIR= ${WRKSRC}/vendor
+_RUST_ARCH_amd64= x86_64
+_RUST_ARCH_i386= i686
+_RUST_ARCH_powerpc64_elfv1= powerpc64
+_RUST_ARCH_powerpc64_elfv2= powerpc64
+_RUST_HOST= ${_RUST_ARCH_${ARCH}:U${ARCH}}-unknown-${OPSYS:tl}
+_RUST_LLVM_TARGET= ${FLAVOR:C/armv.*/ARM/:S/aarch64/AArch64/:C/powerpc64_elfv[12]/PowerPC/:S/amd64/X86/:S/i386/X86/}
+_RUST_TARGET= ${_RUST_ARCH_${FLAVOR}:U${FLAVOR}}-unknown-${OPSYS:tl}
+_RUST_LLVM_TRIPLE= ${_RUST_LLVM_TRIPLE_${FLAVOR}:U${_RUST_TARGET}}
+_RUST_LLVM_TRIPLE_armv6= armv6-gnueabihf-freebsd
+_RUST_LLVM_TRIPLE_armv7= armv7-gnueabihf-freebsd
+
+.include <bsd.port.pre.mk>
+
+.if ${OPSYS} != FreeBSD
+IGNORE= is only for FreeBSD
+.elif ${OSVERSION} < 1200502
+IGNORE= will not build on 12.0 due to old toolchain; 11.x untested
+.endif
+
+.if exists(${PATCHDIR}/${FLAVOR:S/_/-/})
+EXTRA_PATCHES+= ${PATCHDIR}/${FLAVOR:S/_/-/}
+.endif
+
+post-patch:
+# Disable vendor checksums
+ @${REINPLACE_CMD} 's,"files":{[^}]*},"files":{},' \
+ ${_CARGO_VENDOR_DIR}/*/.cargo-checksum.json
+.if ${FLAVOR:Mpowerpc64_*}
+ @${REINPLACE_CMD} -e 's,powerpc64-unknown-freebsd,${_RUST_TARGET}${_RUST_FBSD_VER:S/-/ /:[1]},' \
+ ${WRKSRC}/src/librustc_target/spec/powerpc64_unknown_freebsd.rs
+.endif
+.if ${FLAVOR:Mpowerpc64_elfv1}
+ @${REINPLACE_CMD} -e 's,"c++","stdc++",g' \
+ ${WRKSRC}/src/librustc_llvm/build.rs
+.endif
+ @${REINPLACE_CMD} -e 's,%CC%,${CC},g' \
+ -e 's,%WRKDIR%,${WRKDIR},g' \
+ ${WRKSRC}/src/librustc_llvm/build.rs \
+ ${WRKSRC}/src/bootstrap/native.rs
+
+do-configure:
+ @${ECHO_CMD} '[build]' > ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'vendor=true' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'extended=false' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'python="${PYTHON_CMD}"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'docs=false' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'verbose=2' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cargo-native-static=true' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cargo="${LOCALBASE}/bin/cargo"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'rustc="${LOCALBASE}/bin/rustc"' >> ${WRKSRC}/config.toml
+.if ${_RUST_HOST} != ${_RUST_TARGET}
+ @${ECHO_CMD} 'host=["${_RUST_HOST}","${_RUST_TARGET}"]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'target=["${_RUST_TARGET}"]' >> ${WRKSRC}/config.toml
+.endif
+ @${ECHO_CMD} '[rust]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'channel="stable"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'default-linker="${CC}"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} '[llvm]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'link-shared=false' >> ${WRKSRC}/config.toml
+.if ${FLAVOR} == powerpc64_elfv1
+ @${ECHO_CMD} 'static-libstdcpp=true' >> ${WRKSRC}/config.toml
+.endif
+.if defined(WITH_CCACHE_BUILD) && !defined(NO_CCACHE)
+ @${ECHO_CMD} 'ccache="${CCACHE_BIN}"' >> ${WRKSRC}/config.toml
+.else
+ @${ECHO_CMD} 'ccache=false' >> ${WRKSRC}/config.toml
+.endif
+# we need to make sure to always build llvm with X86 support to get a
+# host compiler that can build the host->target compiler
+ @${ECHO_CMD} 'targets="${_RUST_LLVM_TARGET};X86"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} '[target.${_RUST_TARGET}]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cc="${WRKDIR}/${_RUST_TARGET}-cc"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cxx="${WRKDIR}/${_RUST_TARGET}-c++"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'linker="${WRKDIR}/${_RUST_TARGET}-cc"' >> ${WRKSRC}/config.toml
+.for _key _util in ar ${AR} ranlib ${RANLIB}
+ @bin="$$(which ${_util})"; \
+ ${ECHO_CMD} "${_key}=\"$$bin\"" >> ${WRKSRC}/config.toml
+.endfor
+.if ${_RUST_HOST} != ${_RUST_TARGET}
+ @${ECHO_CMD} '[target.${_RUST_HOST}]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cc="${CC}"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'cxx="${CXX}"' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'linker="${CC}"' >> ${WRKSRC}/config.toml
+.endif
+ @${ECHO_CMD} '[dist]' >> ${WRKSRC}/config.toml
+ @${ECHO_CMD} 'src-tarball=false' >> ${WRKSRC}/config.toml
+.if ${FLAVOR} == powerpc64_elfv1
+ @${RLN} ${WRKDIR}${LOCALBASE}/lib/gcc9/libstdc++.a ${WRKDIR}/usr/lib/libstdc++.a
+ @${RLN} ${WRKDIR}${LOCALBASE}/lib/gcc9/libstdc++.a ${WRKDIR}/usr/lib/libc++.a
+ @gcc="$$(${ECHO_CMD} ${LOCALBASE}/bin/${_RUST_TARGET}*[0-9]-gcc9)"; \
+ ${PRINTF} '#!/bin/sh\nexec %s --sysroot=${WRKDIR} -Wl,-rpath=${LOCALBASE}/lib/gcc9 -L${WRKDIR}${LOCALBASE}/lib/gcc9 "$$@"\n' "$${gcc}" \
+ > ${WRKDIR}/${_RUST_TARGET}-cc
+ @gcc="$$(${ECHO_CMD} ${LOCALBASE}/bin/${_RUST_TARGET}*[0-9]-g++9)"; \
+ cxxinc="/$$(cd ${WRKDIR} && ${ECHO_CMD} ${LOCALBASE:S,^/,,}/lib/gcc9/include/c++/powerpc64-*)"; \
+ ${PRINTF} '#!/bin/sh\nexec %s --sysroot=${WRKDIR} -isystem=${LOCALBASE}/lib/gcc9/include/c++ -isystem=%s -Wl,-rpath=${LOCALBASE}/lib/gcc9 -L${WRKDIR}${LOCALBASE}/lib/gcc9 "$$@"\n' "$${gcc}" "$${cxxinc}" \
+ > ${WRKDIR}/${_RUST_TARGET}-c++
+.elif ${FLAVOR} == powerpc64_elfv2
+ @${PRINTF} '#!/bin/sh\nexec ${CC} --sysroot=${WRKDIR} -mabi=elfv2 --target=${_RUST_LLVM_TRIPLE} "$$@"\n' \
+ > ${WRKDIR}/${_RUST_TARGET}-cc
+ @${PRINTF} '#!/bin/sh\nexec ${CXX} --sysroot=${WRKDIR} -mabi=elfv2 --target=${_RUST_LLVM_TRIPLE} -stdlib=libc++ "$$@"\n' \
+ > ${WRKDIR}/${_RUST_TARGET}-c++
+.else
+ @${PRINTF} '#!/bin/sh\nexec ${CC} --sysroot=${WRKDIR} --target=${_RUST_LLVM_TRIPLE} "$$@"\n' \
+ > ${WRKDIR}/${_RUST_TARGET}-cc
+ @${PRINTF} '#!/bin/sh\nexec ${CXX} --sysroot=${WRKDIR} --target=${_RUST_LLVM_TRIPLE} -stdlib=libc++ "$$@"\n' \
+ > ${WRKDIR}/${_RUST_TARGET}-c++
+.endif
+ @${CHMOD} +x ${WRKDIR}/${_RUST_TARGET}-c*
+# sanity check cross compilers. we cannot execute the result but
+# at least check that it can link a simple program before going further.
+ @${PRINTF} '#include <stdio.h>\nint main(){return printf("hello\\n");}' | ${WRKDIR}/${_RUST_TARGET}-cc -o ${WRKDIR}/test-c -xc -
+# produce some useful info for the build logs like what release/arch test-c is compiled for
+ @cd ${WRKDIR} && ${FILE} test-c
+ @${PRINTF} '#include <iostream>\nint main(){std::cout<<"hello"<<std::endl;return 0;}' | ${WRKDIR}/${_RUST_TARGET}-c++ -o ${WRKDIR}/test-c++ -xc++ -
+
+do-build:
+ @cd ${WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${PYTHON_CMD} x.py dist --config=config.toml \
+ --jobs=${MAKE_JOBS_NUMBER} cargo src/librustc src/libstd
+
+do-install:
+ @${MKDIR} ${STAGEDIR}${PREFIX}/rust-bootstrap
+ ${INSTALL_DATA} ${WRKSRC}/build/dist/*-${_RUST_TARGET}*${EXTRACT_SUFX} \
+ ${STAGEDIR}${PREFIX}/rust-bootstrap
+.if ${FLAVOR:Mpowerpc64_*}
+ @cd ${STAGEDIR}${PREFIX}/rust-bootstrap && for f in *${EXTRACT_SUFX}; do \
+ ${MV} $$f $${f%%${EXTRACT_SUFX}}-${FLAVOR:S/_/ /:[2]}${EXTRACT_SUFX}; \
+ done
+.endif
+ @cd ${STAGEDIR}${PREFIX} && \
+ ${FIND} rust-bootstrap -type f >> ${TMPPLIST}
+
+.if !defined(_RUST_MAKESUM_GUARD)
+makesum:
+ ${MAKE} -D_RUST_MAKESUM_GUARD makesum FLAVOR=${FLAVORS:O:[1]} DISTINFO_FILE=${DISTINFO_FILE}.tmp
+.for _flavor in ${FLAVORS:O:[2..-1]}
+ ${MAKE} -D_RUST_MAKESUM_GUARD makesum FLAVOR=${_flavor} DISTINFO_FILE=${DISTINFO_FILE}.${_flavor}
+ ${SED} 1d ${DISTINFO_FILE}.${_flavor} >> ${DISTINFO_FILE}.tmp
+ ${RM} ${DISTINFO_FILE}.${_flavor}
+.endfor
+ ${AWK} '!seen[$$0]++' ${DISTINFO_FILE}.tmp > ${DISTINFO_FILE}
+ ${RM} ${DISTINFO_FILE}.tmp
+.endif
+
+.include <bsd.port.post.mk>
+RUN_DEPENDS:= ${RUN_DEPENDS:Ngcc*}
Index: lang/rust-bootstrap/distinfo
===================================================================
--- /dev/null
+++ lang/rust-bootstrap/distinfo
@@ -0,0 +1,19 @@
+TIMESTAMP = 1578621346
+SHA256 (rust/rustc-1.40.0-src.tar.xz) = 6e2aa3a91697f4b225c6b394cbae6b97666f061dba491f666a5281698fe2aace
+SIZE (rust/rustc-1.40.0-src.tar.xz) = 92306352
+SHA256 (FreeBSD-12.1-RELEASE-arm64.tar.xz) = daffac169a2ab46adb4c4df69d20ff2e479e8054d9fcb2697385e81a359e0965
+SIZE (FreeBSD-12.1-RELEASE-arm64.tar.xz) = 141131988
+SHA256 (FreeBSD-11.3-RELEASE-amd64.tar.xz) = 4599023ac136325b86f2fddeec64c1624daa83657e40b00b2ef944c81463a4ff
+SIZE (FreeBSD-11.3-RELEASE-amd64.tar.xz) = 117877900
+SHA256 (FreeBSD-11.3-RELEASE-arm-armv6.tar.xz) = 0292ce8186908b3e4b5eb5e5923e1f43d22fcb0ab7f6071b493fcc17d386deab
+SIZE (FreeBSD-11.3-RELEASE-arm-armv6.tar.xz) = 83402220
+SHA256 (FreeBSD-12.1-RELEASE-arm-armv7.tar.xz) = 0292ce8186908b3e4b5eb5e5923e1f43d22fcb0ab7f6071b493fcc17d386deab
+SIZE (FreeBSD-12.1-RELEASE-arm-armv7.tar.xz) = 83402220
+SHA256 (FreeBSD-11.3-RELEASE-i386.tar.xz) = 9c0adb8c34b7e11d277c2fb9354f7864d91a4620e5238d7eb9dbfe51601ed5cb
+SIZE (FreeBSD-11.3-RELEASE-i386.tar.xz) = 94399236
+SHA256 (FreeBSD-12.1-RELEASE-powerpc64-elfv1.tar.xz) = 2223e22babc169260f9a3f03bbbaf926ef76b1c44d2e81fb172f907ab8fd7aac
+SIZE (FreeBSD-12.1-RELEASE-powerpc64-elfv1.tar.xz) = 108905368
+SHA256 (FreeBSD-12.1-RELEASE-powerpc64-elfv1-gcc9-9.2.0.tar.xz) = fe208feb93a75e6043e1cd1b9e50be853858d6d600296aaf2b25b55525e58bb2
+SIZE (FreeBSD-12.1-RELEASE-powerpc64-elfv1-gcc9-9.2.0.tar.xz) = 38150240
+SHA256 (FreeBSD-13.0-CURRENT-powerpc64-elfv2-r356261.tar.xz) = db762f136e41dd3c6676d6dc104282be6d6d6684afb348506fc44ceccd43ce17
+SIZE (FreeBSD-13.0-CURRENT-powerpc64-elfv2-r356261.tar.xz) = 150455928
Index: lang/rust-bootstrap/pkg-descr
===================================================================
--- /dev/null
+++ lang/rust-bootstrap/pkg-descr
@@ -0,0 +1,7 @@
+Rust is an open-source systems programming language that runs blazingly
+fast, prevents almost all crashes, and eliminates data races.
+
+This port creates the required bootstrap compilers for building
+lang/rust.
+
+WWW: https://www.rust-lang.org/
Index: lang/rust/Makefile
===================================================================
--- lang/rust/Makefile
+++ lang/rust/Makefile
@@ -44,6 +44,11 @@
CONFLICTS_INSTALL?= rust-nightly
+# lang/rust-bootstrap builds the bundled libgit2 and using the patch
+# to fix runtime with system libgit2 is incompatible with it. Keep
+# it separate.
+EXTRA_PATCHES= ${PATCHDIR}/extra-patch-vendor_libgit2-sys_lib.rs
+
PLIST_FILES= lib/rustlib/components \
lib/rustlib/rust-installer-version
@@ -56,9 +61,9 @@
GDB_RUN_DEPENDS= ${LOCALBASE}/bin/gdb:devel/gdb
# See WRKSRC/src/stage0.txt for the date and version values.
-BOOTSTRAPS_DATE?= 2019-11-07
-RUST_BOOTSTRAP_VERSION?= 1.39.0
-CARGO_BOOTSTRAP_VERSION?= 0.40.0
+BOOTSTRAPS_DATE?= 2020-01-11
+RUST_BOOTSTRAP_VERSION?= 1.40.0
+CARGO_BOOTSTRAP_VERSION?= 0.41.0
COMPILER_RT_VERSION?= 9.0.0
BOOTSTRAPS_SUFFIX?= ${BOOTSTRAPS_SUFFIX_${ARCH}}
Index: lang/rust/distinfo
===================================================================
--- lang/rust/distinfo
+++ lang/rust/distinfo
@@ -1,47 +1,47 @@
-TIMESTAMP = 1578730697
+TIMESTAMP = 1578732724
SHA256 (rust/rustc-1.40.0-src.tar.xz) = 6e2aa3a91697f4b225c6b394cbae6b97666f061dba491f666a5281698fe2aace
SIZE (rust/rustc-1.40.0-src.tar.xz) = 92306352
-SHA256 (rust/2019-11-07/rustc-1.39.0-aarch64-unknown-freebsd.tar.xz) = 44098962a570e05d691d3b7c3337b873b1e1f22ac49fd19c0d5d3362c0008eb5
-SIZE (rust/2019-11-07/rustc-1.39.0-aarch64-unknown-freebsd.tar.xz) = 23895952
-SHA256 (rust/2019-11-07/rust-std-1.39.0-aarch64-unknown-freebsd.tar.xz) = 21372596cda35c4acdb11bab0e6d3f62f815a8166eb717e57e223548f3afee08
-SIZE (rust/2019-11-07/rust-std-1.39.0-aarch64-unknown-freebsd.tar.xz) = 164721768
-SHA256 (rust/2019-11-07/cargo-0.40.0-aarch64-unknown-freebsd.tar.xz) = 184f64a67f05c23597f1b52ef13e31c5e12288032ccb94bddfc217f26b77c93f
-SIZE (rust/2019-11-07/cargo-0.40.0-aarch64-unknown-freebsd.tar.xz) = 3054584
-SHA256 (rust/2019-11-07/rustc-1.39.0-x86_64-unknown-freebsd.tar.xz) = 802aa5124f15002ba07b33838f6b8ecb394e3d63d2f9bd2de725c85baf8b8bf5
-SIZE (rust/2019-11-07/rustc-1.39.0-x86_64-unknown-freebsd.tar.xz) = 33790600
-SHA256 (rust/2019-11-07/rust-std-1.39.0-x86_64-unknown-freebsd.tar.xz) = 7015a0b0a991af19b0a7d0cbb1b0e2aae612a19cf2a4ab9cdb49f91f9e443201
-SIZE (rust/2019-11-07/rust-std-1.39.0-x86_64-unknown-freebsd.tar.xz) = 189611944
-SHA256 (rust/2019-11-07/cargo-0.40.0-x86_64-unknown-freebsd.tar.xz) = 762c436fa220120bc57a0a4d5256b69f6b55e8d07153744cb6c81e4d064912bf
-SIZE (rust/2019-11-07/cargo-0.40.0-x86_64-unknown-freebsd.tar.xz) = 4908636
-SHA256 (rust/2019-11-07/rustc-1.39.0-armv6-unknown-freebsd.tar.xz) = c1f014f8c4f804d413be842dba3655ab69ee70d663b25d1a0027224480e511f3
-SIZE (rust/2019-11-07/rustc-1.39.0-armv6-unknown-freebsd.tar.xz) = 25359460
-SHA256 (rust/2019-11-07/rust-std-1.39.0-armv6-unknown-freebsd.tar.xz) = 09bf68c8aaf0a4de36d7608e15001878ac048f1a9eda3bef7a66338b31bd1cd4
-SIZE (rust/2019-11-07/rust-std-1.39.0-armv6-unknown-freebsd.tar.xz) = 170165620
-SHA256 (rust/2019-11-07/cargo-0.40.0-armv6-unknown-freebsd.tar.xz) = 4c13fee359a77a73ce96f524c58198cca567971692b17e97e41ecb01fe70dc5c
-SIZE (rust/2019-11-07/cargo-0.40.0-armv6-unknown-freebsd.tar.xz) = 3183372
+SHA256 (rust/2020-01-11/rustc-1.40.0-aarch64-unknown-freebsd.tar.xz) = d75ce85e8c8f08eb5b2730d141e26d3ae3c20d0c50dcf740cf00364ed462e87d
+SIZE (rust/2020-01-11/rustc-1.40.0-aarch64-unknown-freebsd.tar.xz) = 26372924
+SHA256 (rust/2020-01-11/rust-std-1.40.0-aarch64-unknown-freebsd.tar.xz) = 9d155d5916a094dcae194eb639325620d2af494cbba778146e8f154add13f901
+SIZE (rust/2020-01-11/rust-std-1.40.0-aarch64-unknown-freebsd.tar.xz) = 13916464
+SHA256 (rust/2020-01-11/cargo-0.41.0-aarch64-unknown-freebsd.tar.xz) = 317584e53b936b680ce0e77d5e507c2bbd3cdd10860ee40c53ac1d7d6d070cea
+SIZE (rust/2020-01-11/cargo-0.41.0-aarch64-unknown-freebsd.tar.xz) = 3723164
+SHA256 (rust/2020-01-11/rustc-1.40.0-x86_64-unknown-freebsd.tar.xz) = e95b3c7c0fec14fb9efd23155812c61bae08e1513fb62cd15fca30fafec7cd5e
+SIZE (rust/2020-01-11/rustc-1.40.0-x86_64-unknown-freebsd.tar.xz) = 28440532
+SHA256 (rust/2020-01-11/rust-std-1.40.0-x86_64-unknown-freebsd.tar.xz) = f5aa2fddf200a701eee4fcebe43725e77333283d7714a273ae92c06de3601a9a
+SIZE (rust/2020-01-11/rust-std-1.40.0-x86_64-unknown-freebsd.tar.xz) = 14603276
+SHA256 (rust/2020-01-11/cargo-0.41.0-x86_64-unknown-freebsd.tar.xz) = 629de6db56cd659856a28679be68dfadbdb31a28a65c156d65cec769ff43a7e7
+SIZE (rust/2020-01-11/cargo-0.41.0-x86_64-unknown-freebsd.tar.xz) = 4399816
+SHA256 (rust/2020-01-11/rustc-1.40.0-armv6-unknown-freebsd.tar.xz) = 746391fc5bc1b3cd4f07e525c2725cf115cc6b5acb098d86841c3685d97a4a17
+SIZE (rust/2020-01-11/rustc-1.40.0-armv6-unknown-freebsd.tar.xz) = 27438180
+SHA256 (rust/2020-01-11/rust-std-1.40.0-armv6-unknown-freebsd.tar.xz) = 665fcfeab7ae65bb8f12f6c5b76cae820d9a607f9540fdcf55d12a890b492949
+SIZE (rust/2020-01-11/rust-std-1.40.0-armv6-unknown-freebsd.tar.xz) = 13926284
+SHA256 (rust/2020-01-11/cargo-0.41.0-armv6-unknown-freebsd.tar.xz) = 60d34a77946e37a281be4f1616a9d9f6efa040e0767a02ec21649d3d654b8d04
+SIZE (rust/2020-01-11/cargo-0.41.0-armv6-unknown-freebsd.tar.xz) = 3813256
SHA256 (rust/compiler-rt-9.0.0.src.tar.xz) = 56e4cd96dd1d8c346b07b4d6b255f976570c6f2389697347a6c3dcb9e820d10e
SIZE (rust/compiler-rt-9.0.0.src.tar.xz) = 1993084
-SHA256 (rust/2019-11-07/rustc-1.39.0-armv7-unknown-freebsd.tar.xz) = 5902ceb1aefbced859969a928c4ad15063a58e120d79a18cab37dc4d7384d591
-SIZE (rust/2019-11-07/rustc-1.39.0-armv7-unknown-freebsd.tar.xz) = 24862380
-SHA256 (rust/2019-11-07/rust-std-1.39.0-armv7-unknown-freebsd.tar.xz) = 5469b9c844ac9e830d77715a988c3185f287962de9a2408513b89dac9662ac34
-SIZE (rust/2019-11-07/rust-std-1.39.0-armv7-unknown-freebsd.tar.xz) = 169316140
-SHA256 (rust/2019-11-07/cargo-0.40.0-armv7-unknown-freebsd.tar.xz) = 3acfcd4b7ce2a5d1646d0b53d453140d4a3b9216fcb66c435d1d4b83381b2499
-SIZE (rust/2019-11-07/cargo-0.40.0-armv7-unknown-freebsd.tar.xz) = 3134692
-SHA256 (rust/2019-11-07/rustc-1.39.0-i686-unknown-freebsd.tar.xz) = eebab1fb8cbbfa7e348daeb319a8fdf3ab40c7439deb012fd9ceeed322518f7c
-SIZE (rust/2019-11-07/rustc-1.39.0-i686-unknown-freebsd.tar.xz) = 34660340
-SHA256 (rust/2019-11-07/rust-std-1.39.0-i686-unknown-freebsd.tar.xz) = bd19a91be5f470c838c524a86a6ff83557247e7fbe498d773c643b06a78be97f
-SIZE (rust/2019-11-07/rust-std-1.39.0-i686-unknown-freebsd.tar.xz) = 189894544
-SHA256 (rust/2019-11-07/cargo-0.40.0-i686-unknown-freebsd.tar.xz) = 9daad89cecfa45e85e191f4870613e5b0acfa92742ae8c07eb4f48a1f3f4d9be
-SIZE (rust/2019-11-07/cargo-0.40.0-i686-unknown-freebsd.tar.xz) = 4875016
-SHA256 (rust/2019-11-07/rustc-1.39.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 0f0b89fb869a4ff856a3c3b971fa7bd0e317b2d567f5db994159e019100d7d23
-SIZE (rust/2019-11-07/rustc-1.39.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 28846960
-SHA256 (rust/2019-11-07/rust-std-1.39.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 378efabaf53ff15165bda53509b40fb347e3f88275ca4cc81f4cfb185eed981e
-SIZE (rust/2019-11-07/rust-std-1.39.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 164834720
-SHA256 (rust/2019-11-07/cargo-0.40.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 707eef9bac71a44db8e1d64c70a771fbac1f81f7ca58a2e3025ec1cc4d263b18
-SIZE (rust/2019-11-07/cargo-0.40.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 3423776
-SHA256 (rust/2019-11-07/rustc-1.39.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 65a7eed0737ae94e54d60a0cf5cc67634fb8ddd978bdfb0ce4e5f46d309daa0a
-SIZE (rust/2019-11-07/rustc-1.39.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 24483956
-SHA256 (rust/2019-11-07/rust-std-1.39.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 60782554de07997c25bf2aa279b44baa8009158b25cc3c5364b1496a2d40f2a4
-SIZE (rust/2019-11-07/rust-std-1.39.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 163926244
-SHA256 (rust/2019-11-07/cargo-0.40.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 75ecd88d83e8f394ce33f0213b622a045cbcfc55973f4b5140403de298f73968
-SIZE (rust/2019-11-07/cargo-0.40.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 3268696
+SHA256 (rust/2020-01-11/rustc-1.40.0-armv7-unknown-freebsd.tar.xz) = 9d89a89d0f441e1e074e2d0c9d255e07852971c60bd3f4e533e8d1e9fded60e0
+SIZE (rust/2020-01-11/rustc-1.40.0-armv7-unknown-freebsd.tar.xz) = 27393212
+SHA256 (rust/2020-01-11/rust-std-1.40.0-armv7-unknown-freebsd.tar.xz) = 5e4ef87f5403f273856ecfcb822d439628fc95dd7c77d2bd21ac7f33b7e4cba6
+SIZE (rust/2020-01-11/rust-std-1.40.0-armv7-unknown-freebsd.tar.xz) = 13862568
+SHA256 (rust/2020-01-11/cargo-0.41.0-armv7-unknown-freebsd.tar.xz) = a07620fe97be95523d3f915ae03c4b37fcd467fd4f141d62188670dd069e98a2
+SIZE (rust/2020-01-11/cargo-0.41.0-armv7-unknown-freebsd.tar.xz) = 3808576
+SHA256 (rust/2020-01-11/rustc-1.40.0-i686-unknown-freebsd.tar.xz) = a785bede5f78784a62e5b93557e46fed32263d0625e3abe186847f9d6bee89aa
+SIZE (rust/2020-01-11/rustc-1.40.0-i686-unknown-freebsd.tar.xz) = 29109748
+SHA256 (rust/2020-01-11/rust-std-1.40.0-i686-unknown-freebsd.tar.xz) = d44c08d8bc59eec45784c5dd53d5b5a723afa0786a33e52e23a3a169c932242d
+SIZE (rust/2020-01-11/rust-std-1.40.0-i686-unknown-freebsd.tar.xz) = 14501104
+SHA256 (rust/2020-01-11/cargo-0.41.0-i686-unknown-freebsd.tar.xz) = e4360a14e9b7bf24c273d72a0f043f276be8500974d8c00df9eb2b56abff5ae3
+SIZE (rust/2020-01-11/cargo-0.41.0-i686-unknown-freebsd.tar.xz) = 4356888
+SHA256 (rust/2020-01-11/rustc-1.40.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = b68ce52ccf2a04d165ac0cc69e6eb6dd1d4b69c5334c7e20e1ada9387f34d788
+SIZE (rust/2020-01-11/rustc-1.40.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 32015204
+SHA256 (rust/2020-01-11/rust-std-1.40.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 9193a9c30fe63f8d0644c99be9c253dc0e685d994812bc22a2e35c8046a64430
+SIZE (rust/2020-01-11/rust-std-1.40.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 13903088
+SHA256 (rust/2020-01-11/cargo-0.41.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = e434e724c635aadac3bd859b49504903133182fca862bdc1c2129659e2129cdd
+SIZE (rust/2020-01-11/cargo-0.41.0-powerpc64-unknown-freebsd-elfv1.tar.xz) = 4253612
+SHA256 (rust/2020-01-11/rustc-1.40.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 7ef1dcdf471b5ff8fdb106573594589978d96c39931972750e21bd4ab001e856
+SIZE (rust/2020-01-11/rustc-1.40.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 26694028
+SHA256 (rust/2020-01-11/rust-std-1.40.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 8dfaff61d5d631afb04cd7a6235dfac3a803fa1fd13def934746e69b6ec35b38
+SIZE (rust/2020-01-11/rust-std-1.40.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 13866172
+SHA256 (rust/2020-01-11/cargo-0.41.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 10e96fb30baa14a95ffede8074867209feda189af2b49f5da1caf5457c9751b2
+SIZE (rust/2020-01-11/cargo-0.41.0-powerpc64-unknown-freebsd-elfv2.tar.xz) = 3982652
Index: lang/rust/files/extra-patch-vendor_libgit2-sys_lib.rs
===================================================================
--- /dev/null
+++ lang/rust/files/extra-patch-vendor_libgit2-sys_lib.rs
@@ -0,0 +1,30 @@
+Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
+
+--- vendor/libgit2-sys/lib.rs.orig 2019-11-04 17:34:46 UTC
++++ vendor/libgit2-sys/lib.rs
+@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
+ pub push_negotiation: Option<git_push_negotiation>,
+ pub transport: Option<git_transport_cb>,
+ pub payload: *mut c_void,
+- pub resolve_url: Option<git_url_resolve_cb>,
+ }
+
+ #[repr(C)]
+@@ -385,8 +384,6 @@ pub type git_push_negotiation =
+
+ pub type git_push_update_reference_cb =
+ extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
+-pub type git_url_resolve_cb =
+- extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
+
+ #[repr(C)]
+ pub struct git_push_update {
+@@ -2280,7 +2277,7 @@ extern "C" {
+ source: *const git_tree,
+ ) -> c_int;
+ pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
+- pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
++ pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
+ pub fn git_treebuilder_free(bld: *mut git_treebuilder);
+ pub fn git_treebuilder_get(
+ bld: *mut git_treebuilder,
Index: lang/rust/files/patch-vendor_libgit2-sys_lib.rs
===================================================================
--- lang/rust/files/patch-vendor_libgit2-sys_lib.rs
+++ /dev/null
@@ -1,30 +0,0 @@
-Revert to libgit2 0.28 API per https://github.com/rust-lang/git2-rs/issues/458
-
---- vendor/libgit2-sys/lib.rs.orig 2019-11-04 17:34:46 UTC
-+++ vendor/libgit2-sys/lib.rs
-@@ -331,7 +331,6 @@ pub struct git_remote_callbacks {
- pub push_negotiation: Option<git_push_negotiation>,
- pub transport: Option<git_transport_cb>,
- pub payload: *mut c_void,
-- pub resolve_url: Option<git_url_resolve_cb>,
- }
-
- #[repr(C)]
-@@ -385,8 +384,6 @@ pub type git_push_negotiation =
-
- pub type git_push_update_reference_cb =
- extern "C" fn(*const c_char, *const c_char, *mut c_void) -> c_int;
--pub type git_url_resolve_cb =
-- extern "C" fn(*mut git_buf, *const c_char, c_int, *mut c_void) -> c_int;
-
- #[repr(C)]
- pub struct git_push_update {
-@@ -2280,7 +2277,7 @@ extern "C" {
- source: *const git_tree,
- ) -> c_int;
- pub fn git_treebuilder_clear(bld: *mut git_treebuilder);
-- pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> size_t;
-+ pub fn git_treebuilder_entrycount(bld: *mut git_treebuilder) -> c_uint;
- pub fn git_treebuilder_free(bld: *mut git_treebuilder);
- pub fn git_treebuilder_get(
- bld: *mut git_treebuilder,
Index: lang/rust/files/patch-vendor_openssl-src_src_lib.rs
===================================================================
--- /dev/null
+++ lang/rust/files/patch-vendor_openssl-src_src_lib.rs
@@ -0,0 +1,27 @@
+--- vendor/openssl-src/src/lib.rs.orig 2020-01-08 04:20:57 UTC
++++ vendor/openssl-src/src/lib.rs
+@@ -135,6 +135,7 @@ impl Build {
+ // that bypasses basically everything `cc` does, so let's just cop
+ // out and say it's linux and hope it works.
+ "aarch64-linux-android" => "linux-aarch64",
++ "aarch64-unknown-freebsd" => "BSD-generic64",
+ "aarch64-unknown-linux-gnu" => "linux-aarch64",
+ "aarch64-unknown-linux-musl" => "linux-aarch64",
+ "aarch64-pc-windows-msvc" => "VC-WIN64-ARM",
+@@ -144,6 +145,8 @@ impl Build {
+ "arm-unknown-linux-gnueabihf" => "linux-armv4",
+ "arm-unknown-linux-musleabi" => "linux-armv4",
+ "arm-unknown-linux-musleabihf" => "linux-armv4",
++ "armv6-unknown-freebsd" => "BSD-generic32",
++ "armv7-unknown-freebsd" => "BSD-generic32",
+ "armv7-unknown-linux-gnueabihf" => "linux-armv4",
+ "armv7-unknown-linux-musleabihf" => "linux-armv4",
+ "asmjs-unknown-emscripten" => "gcc",
+@@ -159,6 +162,7 @@ impl Build {
+ "mips64el-unknown-linux-gnuabi64" => "linux64-mips64",
+ "mipsel-unknown-linux-gnu" => "linux-mips32",
+ "powerpc-unknown-linux-gnu" => "linux-ppc",
++ "powerpc64-unknown-freebsd" => "BSD-generic64",
+ "powerpc64-unknown-linux-gnu" => "linux-ppc64",
+ "powerpc64le-unknown-linux-gnu" => "linux-ppc64le",
+ "s390x-unknown-linux-gnu" => "linux64-s390x",
Index: lang/rust/files/powerpc64-elfv1/patch-src_librustc__llvm_build.rs
===================================================================
--- lang/rust/files/powerpc64-elfv1/patch-src_librustc__llvm_build.rs
+++ lang/rust/files/powerpc64-elfv1/patch-src_librustc__llvm_build.rs
@@ -1,12 +1,16 @@
---- src/librustc_llvm/build.rs.orig 2019-11-04 15:45:21 UTC
+--- src/librustc_llvm/build.rs.orig 2019-12-16 15:38:05 UTC
+++ src/librustc_llvm/build.rs
-@@ -273,7 +273,10 @@ fn main() {
+@@ -273,7 +273,14 @@ fn main() {
};
// C++ runtime library
- if !target.contains("msvc") {
+ if target == "powerpc64-unknown-freebsd" {
-+ println!("cargo:rustc-link-search=native=/usr/local/lib/%CC%");
++ if is_crossed {
++ println!("cargo:rustc-link-search=native=%WRKDIR%/usr/local/lib/%CC%");
++ } else {
++ println!("cargo:rustc-link-search=native=/usr/local/lib/%CC%");
++ }
+ println!("cargo:rustc-link-lib=static=stdc++");
+ } else if !target.contains("msvc") {
if let Some(s) = llvm_static_stdcpp {
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Feb 27, 3:13 PM (19 h, 8 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16870451
Default Alt Text
D23133.id66619.diff (28 KB)
Attached To
Mode
D23133: lang/rust-bootstrap: Cross-compile Rust bootstraps for all archs
Attached
Detach File
Event Timeline
Log In to Comment