OLD | NEW |
1 #!/usr/bin/env bash | 1 #!/usr/bin/env bash |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 # This script will check out llvm and clang into third_party/llvm and build it. | 6 # This script will check out llvm and clang into third_party/llvm and build it. |
7 | 7 |
8 # Do NOT CHANGE this if you don't know what you're doing -- see | 8 # Do NOT CHANGE this if you don't know what you're doing -- see |
9 # https://code.google.com/p/chromium/wiki/UpdatingClang | 9 # https://code.google.com/p/chromium/wiki/UpdatingClang |
10 # Reverting problematic clang rolls is safe, though. | 10 # Reverting problematic clang rolls is safe, though. |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 if [[ "${OS}" == "Darwin" ]]; then | 136 if [[ "${OS}" == "Darwin" ]]; then |
137 # clang is used on Mac. | 137 # clang is used on Mac. |
138 true | 138 true |
139 elif [[ "$GYP_DEFINES" =~ .*(clang|tsan|asan|lsan|msan)=1.* ]]; then | 139 elif [[ "$GYP_DEFINES" =~ .*(clang|tsan|asan|lsan|msan)=1.* ]]; then |
140 # clang requested via $GYP_DEFINES. | 140 # clang requested via $GYP_DEFINES. |
141 true | 141 true |
142 elif [[ -d "${LLVM_BUILD_DIR}" ]]; then | 142 elif [[ -d "${LLVM_BUILD_DIR}" ]]; then |
143 # clang previously downloaded, remove third_party/llvm-build to prevent | 143 # clang previously downloaded, remove third_party/llvm-build to prevent |
144 # updating. | 144 # updating. |
145 true | 145 true |
| 146 elif [[ "${OS}" == "Linux" ]]; then |
| 147 # Temporarily use clang on linux. Leave a stamp file behind, so that |
| 148 # this script can remove clang again on machines where it was autoinstalled. |
| 149 mkdir -p "${LLVM_BUILD_DIR}" |
| 150 touch "${LLVM_BUILD_DIR}/autoinstall_stamp" |
| 151 true |
146 else | 152 else |
147 # clang wasn't needed, not doing anything. | 153 # clang wasn't needed, not doing anything. |
148 exit 0 | 154 exit 0 |
149 fi | 155 fi |
150 fi | 156 fi |
151 | 157 |
152 | 158 |
153 # Check if there's anything to be done, exit early if not. | 159 # Check if there's anything to be done, exit early if not. |
154 if [[ -f "${STAMP_FILE}" ]]; then | 160 if [[ -f "${STAMP_FILE}" ]]; then |
155 PREVIOUSLY_BUILT_REVISON=$(cat "${STAMP_FILE}") | 161 PREVIOUSLY_BUILT_REVISON=$(cat "${STAMP_FILE}") |
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
487 "${TOOL_SRC_DIR}/tests/test.sh" "${LLVM_BUILD_DIR}/Release+Asserts" | 493 "${TOOL_SRC_DIR}/tests/test.sh" "${LLVM_BUILD_DIR}/Release+Asserts" |
488 fi | 494 fi |
489 done | 495 done |
490 pushd "${LLVM_BUILD_DIR}" | 496 pushd "${LLVM_BUILD_DIR}" |
491 ${MAKE} check-all | 497 ${MAKE} check-all |
492 popd | 498 popd |
493 fi | 499 fi |
494 | 500 |
495 # After everything is done, log success for this revision. | 501 # After everything is done, log success for this revision. |
496 echo "${CLANG_AND_PLUGINS_REVISION}" > "${STAMP_FILE}" | 502 echo "${CLANG_AND_PLUGINS_REVISION}" > "${STAMP_FILE}" |
OLD | NEW |