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"
