Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 #!/bin/sh | 1 #!/bin/sh |
| 2 | 2 |
| 3 # Copyright (c) 2009 The Chromium Authors. All rights reserved. | 3 # Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 # Script to build valgrind for use with chromium | 7 # Script to build valgrind for use with chromium |
| 8 # | 8 # |
| 9 # Can also be used to just prepare patched source tarball with MAKE_TARBALL=yes | 9 # Can also be used to just prepare patched source tarball with MAKE_TARBALL=yes |
| 10 # or to just build from a patched source tarball with USE_TARBALL=yes. | 10 # or to just build from a patched source tarball with USE_TARBALL=yes. |
| 11 # These are useful when configuring jailed buildbots which are not allowed to | 11 # These are useful when configuring jailed buildbots which are not allowed to |
| 12 # fetch valgrind source via svn. Most users won't need those options. | 12 # fetch valgrind source via svn. Most users won't need those options. |
| 13 | 13 |
| 14 # Checkout by date doesn't work unless you specify the friggin' timezone | 14 # Checkout by date doesn't work unless you specify the friggin' timezone |
| 15 VALGRIND_SVN_REV=10880 | 15 VALGRIND_SVN_REV=10880 |
| 16 # And svn isn't smart enough to figure out what rev of the linked tree to get | 16 # And svn isn't smart enough to figure out what rev of the linked tree to get |
| 17 VEX_SVN_REV=1914 | 17 VEX_SVN_REV=1914 |
| 18 # and TSAN may be out of sync, so you have to check that out by rev anyway | 18 # and TSAN may be out of sync, so you have to check that out by rev anyway |
| 19 TSAN_SVN_REV=1129 | 19 TSAN_SVN_REV=1129 |
|
Timur Iskhodzhanov
2009/10/21 09:33:28
1178 should be fine
| |
| 20 | 20 |
| 21 # suffix for build and install dir to denote our set of patches (may be empty) | 21 # suffix for build and install dir to denote our set of patches (may be empty) |
| 22 PATCHLEVEL=-redzone | 22 PATCHLEVEL=-redzone |
| 23 | 23 |
| 24 DIRNAME=valgrind-${VALGRIND_SVN_REV}${PATCHLEVEL} | 24 DIRNAME=valgrind-${VALGRIND_SVN_REV}${PATCHLEVEL} |
| 25 | 25 |
| 26 THISDIR=$(dirname "${0}") | 26 THISDIR=$(dirname "${0}") |
| 27 THISDIR=$(cd "${THISDIR}" && /bin/pwd) | 27 THISDIR=$(cd "${THISDIR}" && /bin/pwd) |
| 28 | 28 |
| 29 case "x${1}" in | 29 case "x${1}" in |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 69 # "Want --show-possible option so I can ignore the bazillion possible leaks... " | 69 # "Want --show-possible option so I can ignore the bazillion possible leaks... " |
| 70 patch -p0 < "${THISDIR}/possible.patch" | 70 patch -p0 < "${THISDIR}/possible.patch" |
| 71 | 71 |
| 72 # Add feature bug https://bugs.kde.org/show_bug.cgi?id=205000 | 72 # Add feature bug https://bugs.kde.org/show_bug.cgi?id=205000 |
| 73 # "Need library load address in log files" | 73 # "Need library load address in log files" |
| 74 patch -p0 < "${THISDIR}/xml-loadadr.patch" | 74 patch -p0 < "${THISDIR}/xml-loadadr.patch" |
| 75 | 75 |
| 76 # Make red zone 64 bytes bigger to catch more buffer overruns | 76 # Make red zone 64 bytes bigger to catch more buffer overruns |
| 77 patch -p0 < "${THISDIR}/redzone.patch" | 77 patch -p0 < "${THISDIR}/redzone.patch" |
| 78 | 78 |
| 79 # Fix/work around https://bugs.kde.org/show_bug.cgi?id=210481 | |
| 80 # which prevented valgrind from handling v8 on 64 bits | |
| 81 patch -p0 < "${THISDIR}/vbug210481.patch" | |
| 82 | |
| 83 # Fix/work around https://bugs.kde.org/show_bug.cgi?id=205541 | |
| 84 # which prevented valgrind from handling wine | |
| 85 patch -p0 < "${THISDIR}/vbug205541.patch" | |
| 86 | |
| 79 if [ "${INSTALL_TSAN}" = "yes" ] | 87 if [ "${INSTALL_TSAN}" = "yes" ] |
| 80 then | 88 then |
| 81 # Add ThreadSanitier to the installation. | 89 # Add ThreadSanitier to the installation. |
| 82 # ThreadSanitizer is an experimental dynamic data race detector. | 90 # ThreadSanitizer is an experimental dynamic data race detector. |
| 83 # See http://code.google.com/p/data-race-test/wiki/ThreadSanitizer | 91 # See http://code.google.com/p/data-race-test/wiki/ThreadSanitizer |
| 84 svn checkout -r "${TSAN_SVN_REV}" http://data-race-test.googlecode.com/svn/t runk/tsan tsan | 92 svn checkout -r "${TSAN_SVN_REV}" http://data-race-test.googlecode.com/svn/t runk/tsan tsan |
| 85 mkdir tsan/tests | 93 mkdir tsan/tests |
| 86 touch tsan/tests/Makefile.am | 94 touch tsan/tests/Makefile.am |
| 87 patch -p 0 < tsan/valgrind.patch | 95 patch -p 0 < tsan/valgrind.patch |
| 88 fi | 96 fi |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 188 # Don't use sudo if we own the destination | 196 # Don't use sudo if we own the destination |
| 189 if test -w "${parent_of_prefix}" | 197 if test -w "${parent_of_prefix}" |
| 190 then | 198 then |
| 191 make install | 199 make install |
| 192 else | 200 else |
| 193 sudo make install | 201 sudo make install |
| 194 fi | 202 fi |
| 195 | 203 |
| 196 cd .. | 204 cd .. |
| 197 fi | 205 fi |
| OLD | NEW |