Bug 1272629 - Add taskcluster task to build binutils package; r?glandium
MozReview-Commit-ID: AEOShpN8ZMI
new file mode 100755
--- /dev/null
+++ b/build/unix/build-binutils/build-binutils.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+binutils_version=2.25.1
+make_flags='-j12'
+
+root_dir="$1"
+if [ -z "$root_dir" -o ! -d "$root_dir" ]; then
+ root_dir=$(mktemp -d)
+fi
+cd $root_dir
+
+if test -z $TMPDIR; then
+ TMPDIR=/tmp/
+fi
+
+# Download the source of the specified version of binutils
+wget -c -P $TMPDIR ftp://ftp.gnu.org/gnu/binutils/binutils-${binutils_version}.tar.bz2 || exit 1
+tar xjf $TMPDIR/binutils-${binutils_version}.tar.bz2
+
+# Build binutils
+mkdir binutils-objdir
+cd binutils-objdir
+
+../binutils-$binutils_version/configure --prefix /tools/binutils/ --enable-gold --enable-plugins --disable-nls || exit 1
+make $make_flags || exit 1
+make install $make_flags DESTDIR=$root_dir || exit 1
+
+cd ..
+
+# Make a package of the built binutils
+cd $root_dir/tools
+tar caf $root_dir/binutils.tar.xz binutils/
--- a/taskcluster/ci/toolchain/kind.yml
+++ b/taskcluster/ci/toolchain/kind.yml
@@ -38,8 +38,19 @@ jobs:
symbol: Cc(GCC)
run:
using: toolchain-script
script: build-gcc-linux.sh
when:
files-changed:
- 'build/unix/build-gcc/**'
- 'taskcluster/scripts/misc/build-gcc-linux.sh'
+
+ linux64-binutils/opt:
+ treeherder:
+ symbol: Cc(binutils)
+ run:
+ using: toolchain-script
+ script: build-binutils-linux.sh
+ when:
+ files-changed:
+ - 'build/unix/build-binutils/**'
+ - 'taskcluster/scripts/misc/build-binutils-linux.sh'
new file mode 100755
--- /dev/null
+++ b/taskcluster/scripts/misc/build-binutils-linux.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+set -x -e -v
+
+# This script is for building binutils for Linux.
+
+WORKSPACE=$HOME/workspace
+HOME_DIR=$WORKSPACE/build
+UPLOAD_DIR=$WORKSPACE/artifacts
+
+cd $HOME_DIR/src
+
+build/unix/build-binutils/build-binutils.sh $HOME_DIR
+
+# Put a tarball in the artifacts dir
+mkdir -p $UPLOAD_DIR
+cp $HOME_DIR/binutils.tar.* $UPLOAD_DIR