| Index: tools/valgrind/build-valgrind-for-chromium.sh | 
| =================================================================== | 
| --- tools/valgrind/build-valgrind-for-chromium.sh	(revision 26827) | 
| +++ tools/valgrind/build-valgrind-for-chromium.sh	(working copy) | 
| @@ -18,6 +18,11 @@ | 
| # and TSAN may be out of sync, so you have to check that out by rev anyway | 
| TSAN_SVN_REV=1129 | 
|  | 
| +# suffix for build and install dir to denote our set of patches (may be empty) | 
| +PATCHLEVEL=-redzone | 
| + | 
| +DIRNAME=valgrind-${VALGRIND_SVN_REV}${PATCHLEVEL} | 
| + | 
| THISDIR=$(dirname "${0}") | 
| THISDIR=$(cd "${THISDIR}" && /bin/pwd) | 
|  | 
| @@ -27,8 +32,7 @@ | 
| echo "Usage: sh build-valgrind-for-chromium.sh [prefix]" | 
| echo "Prefix is optional, but if present, must be the absolute path to where" | 
| echo "you want to install valgrind's bin, include, and lib directories." | 
| -  echo "Prefix defaults to /usr/local/valgrind-${VALGRIND_SVN_REV}, where" | 
| -  echo "${VALGRIND_SVN_REV} is the revision used when retrieving valgrind from svn." | 
| +  echo "Prefix defaults to /usr/local/$DIRNAME." | 
| echo "Will use sudo to do the install if you don't own the parent of prefix." | 
| exit 1 | 
| ;; | 
| @@ -44,15 +48,15 @@ | 
| fi | 
|  | 
| # Clean checkout our untar | 
| -rm -rf "valgrind-${VALGRIND_SVN_REV}" | 
| -mkdir -p "valgrind-${VALGRIND_SVN_REV}" | 
| +test -d "$DIRNAME" && rm -rf ./"$DIRNAME" | 
| +mkdir -p "$DIRNAME" | 
|  | 
| if test "x${USE_TARBALL}" != "xyes" | 
| then | 
| # Check out latest version that following patches known to apply against | 
| -  svn co -r "${VALGRIND_SVN_REV}" "svn://svn.valgrind.org/valgrind/trunk" "valgrind-${VALGRIND_SVN_REV}" | 
| +  svn co -r "${VALGRIND_SVN_REV}" "svn://svn.valgrind.org/valgrind/trunk" "$DIRNAME" | 
|  | 
| -  cd "valgrind-${VALGRIND_SVN_REV}" | 
| +  cd "$DIRNAME" | 
|  | 
| # Make sure svn gets the right version of the external VEX repo, too | 
| svn update -r "${VEX_SVN_REV}" VEX/ | 
| @@ -69,6 +73,9 @@ | 
| # "Need library load address in log files" | 
| patch -p0 < "${THISDIR}/xml-loadadr.patch" | 
|  | 
| +  # Make red zone 64 bytes bigger to catch more buffer overruns | 
| +  patch -p0 < "${THISDIR}/redzone.patch" | 
| + | 
| if [ "${INSTALL_TSAN}" = "yes" ] | 
| then | 
| # Add ThreadSanitier to the installation. | 
| @@ -85,7 +92,7 @@ | 
| then | 
| # replace symlink with actual contents! | 
| cp install-sh install-sh.new | 
| -    mv install-sh.new install-sh | 
| +    mv -f install-sh.new install-sh | 
| chmod +x install-sh | 
| fi | 
|  | 
| @@ -101,17 +108,17 @@ | 
|  | 
| if test "x${MAKE_TARBALL}" = "xyes" | 
| then | 
| -  tar -czvf "valgrind-${VALGRIND_SVN_REV}.tgz" "valgrind-${VALGRIND_SVN_REV}" | 
| +  tar -czvf "$DIRNAME".tgz "$DIRNAME" | 
| fi | 
|  | 
| if test "x${USE_TARBALL}" = "xyes" | 
| then | 
| -  tar -xzvf "valgrind-${VALGRIND_SVN_REV}.tgz" | 
| +  tar -xzvf "$DIRNAME".tgz | 
| fi | 
|  | 
| if test "x${MAKE_TARBALL}" != "xyes" | 
| then | 
| -  cd "valgrind-${VALGRIND_SVN_REV}" | 
| +  cd "$DIRNAME" | 
|  | 
| OVERRIDE_LD_DIR="${THISDIR}/override_ld" | 
| if ld --version | grep gold | 
| @@ -139,7 +146,7 @@ | 
| fi | 
|  | 
| # Desired parent directory for valgrind's bin, include, etc. | 
| -  PREFIX="${1:-/usr/local/valgrind-${VALGRIND_SVN_REV}}" | 
| +  PREFIX="${1:-/usr/local/$DIRNAME}" | 
| parent_of_prefix=$(dirname "${PREFIX}") | 
| if test ! -d "${parent_of_prefix}" | 
| then | 
|  |