Clone of chromium aad1ce808763f59c7a3753e08f1500a104ecc6fd refs/remotes/origin/HEAD
diff --git a/third_party/binutils/build-all.sh b/third_party/binutils/build-all.sh
new file mode 100755
index 0000000..fc00db1
--- /dev/null
+++ b/third_party/binutils/build-all.sh
@@ -0,0 +1,117 @@
+#!/bin/sh
+# Copyright 2014 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+# Script to build binutils for both i386 and AMD64 Linux architectures.
+# Must be run on an AMD64 supporting machine which has debootstrap and sudo
+# installed.
+# Uses Ubuntu Lucid chroots as build environment.
+
+set -e
+
+if [ x"$(whoami)" = x"root" ]; then
+  echo "Script must not be run as root."
+  exit 1
+fi
+sudo -v
+
+OUTPUTDIR="${1:-$PWD/output-$(date +%Y%m%d-%H%M%S)}"
+if [ ! -d "$OUTPUTDIR" ]; then
+  mkdir -p "$OUTPUTDIR"
+fi
+
+# Download the source
+VERSION=2.24
+wget -c http://ftp.gnu.org/gnu/binutils/binutils-$VERSION.tar.bz2
+
+# Verify the signature
+wget -c -q http://ftp.gnu.org/gnu/binutils/binutils-$VERSION.tar.bz2.sig
+if ! gpg --verify binutils-$VERSION.tar.bz2.sig; then
+  echo "GPG Signature failed to verify."
+  echo ""
+  echo "You may need to import the vendor GPG key with:"
+  echo "# gpg --keyserver pgp.mit.edu --recv-key 4AE55E93"
+  exit 1
+fi
+
+
+if [ ! -d binutils-$VERSION ]; then
+  # Extract the source
+  tar jxf binutils-$VERSION.tar.bz2
+
+  # Patch the source
+  (
+    cd binutils-$VERSION
+    patch -p1 < ../ehframe-race.patch
+  )
+fi
+
+for ARCH in i386 amd64; do
+  if [ ! -d lucid-chroot-$ARCH ]; then
+    # Refresh sudo credentials
+    sudo -v
+
+    # Create the chroot
+    echo ""
+    echo "Building chroot for $ARCH"
+    echo "============================="
+    sudo debootstrap \
+        --arch=$ARCH \
+        --include=build-essential,flex,bison \
+        lucid lucid-chroot-$ARCH
+    echo "============================="
+  fi
+
+  BUILDDIR=lucid-chroot-$ARCH/build
+
+  # Clean up any previous failed build attempts inside chroot
+  if [ -d "$BUILDDIR" ]; then
+    sudo rm -rf "$BUILDDIR"
+  fi
+
+  # Copy data into the chroot
+  sudo mkdir -p "$BUILDDIR"
+  sudo cp -a binutils-$VERSION "$BUILDDIR"
+  sudo cp -a build-one.sh "$BUILDDIR"
+
+  # Do the build
+  PREFIX=
+  case $ARCH in
+   i386)
+     PREFIX="setarch linux32"
+     ARCHNAME=i686-pc-linux-gnu
+   ;;
+   amd64)
+     PREFIX="setarch linux64"
+     ARCHNAME=x86_64-unknown-linux-gnu
+   ;;
+  esac
+  echo ""
+  echo "Building binutils for $ARCH"
+  LOGFILE="$OUTPUTDIR/build-$ARCH.log"
+  if ! sudo $PREFIX chroot lucid-chroot-$ARCH /build/build-one.sh /build/binutils-$VERSION > $LOGFILE 2>&1; then
+    echo "Build failed! See $LOGFILE for details."
+    exit 1
+  fi
+
+  # Copy data out of the chroot
+  sudo chown -R $(whoami) "$BUILDDIR/output/"
+
+  # Strip the output binaries
+  for i in "$BUILDDIR/output/$ARCHNAME/bin/*"; do
+     strip $i
+  done
+
+  # Copy them out of the chroot
+  cp -a "$BUILDDIR/output/$ARCHNAME" "$OUTPUTDIR"
+
+  # Clean up chroot
+  sudo rm -rf "$BUILDDIR"
+done
+
+echo "Check you are happy with the binaries in"
+echo "  $OUTPUTDIR"
+echo "Then"
+echo " * upload to Google Storage using the upload.sh script"
+echo " * roll dependencies"