未验证 提交 b3490cf4 编写于 作者: K kennytm 提交者: GitHub

Rollup merge of #58986 - cuviper:ppc64-binutils, r=alexcrichton

[CI] Update binutils for powerpc64 and powerpc64le

Cargo powerpc64 and powerpc64le are seeing `SIGILL` crashes in openssl,
which was found to be a linking problem, fixed by newer binutils. See
<https://github.com/rust-lang/rust/issues/57345#issuecomment-462094555>

For powerpc64 we're using crosstool-ng, which doesn't offer a newer
binutils version, but we can just compile it separately. On powerpc64le
we're already building binutils. Both are now updated to binutils 2.32.

Closes rust-lang/cargo#6320
Closes rust-lang/rust#57345
Closes rust-lang/rustup.rs#1620

r? @alexcrichton
...@@ -3,9 +3,29 @@ set -ex ...@@ -3,9 +3,29 @@ set -ex
source shared.sh source shared.sh
BINUTILS=2.32
TARGET=powerpc64-unknown-linux-gnu
PREFIX=/x-tools/$TARGET
SYSROOT=$PREFIX/$TARGET/sysroot
mkdir build mkdir build
cd build cd build
cp ../powerpc64-linux-gnu.config .config cp ../powerpc64-linux-gnu.config .config
hide_output ct-ng build hide_output ct-ng build
cd .. cd ..
rm -rf build rm -rf build
chmod -R u+w $PREFIX
# Next, download and build newer binutils.
mkdir binutils-$TARGET
pushd binutils-$TARGET
curl https://ftp.gnu.org/gnu/binutils/binutils-$BINUTILS.tar.bz2 | tar xjf -
mkdir binutils-build
cd binutils-build
hide_output ../binutils-$BINUTILS/configure --target=$TARGET \
--prefix=$PREFIX --with-sysroot=$SYSROOT
hide_output make -j10
hide_output make install
popd
rm -rf binutils-$TARGET
...@@ -4,7 +4,7 @@ set -ex ...@@ -4,7 +4,7 @@ set -ex
source shared.sh source shared.sh
BINUTILS=2.25.1 BINUTILS=2.32
GCC=5.3.0 GCC=5.3.0
TARGET=powerpc64le-linux-gnu TARGET=powerpc64le-linux-gnu
SYSROOT=/usr/local/$TARGET/sysroot SYSROOT=/usr/local/$TARGET/sysroot
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册