OLD | NEW |
1 # Updating clang | 1 # Updating clang |
2 | 2 |
3 1. Sync your Chromium tree to the latest revision to pick up any plugin | 3 1. Sync your Chromium tree to the latest revision to pick up any plugin |
4 changes | 4 changes |
5 1. Run `python tools/clang/scripts/upload_revision.py --clang_revision=NNNN` | 5 1. Run `python tools/clang/scripts/upload_revision.py --clang_revision=NNNN` |
6 with the target LLVM SVN revision number | 6 with the target LLVM SVN revision number. This creates a roll CL on a new |
7 1. If the clang upload try bots succeed, run the goma package update script to | 7 branch, uploads it and starts tryjobs that build the compiler binaries into |
8 push these packages to goma. If you do not have the necessary credentials to | 8 a staging bucket on Google Cloud Storage (GCS). |
9 do the upload, ask clang@chromium.org to find someone who does | 9 1. If the clang upload try bots succeed, copy the binaries from the staging |
| 10 bucket to the production one. For example: |
| 11 |
| 12 ``` |
| 13 $ export rev=123456-1 |
| 14 $ for x in Linux_x64 Mac Win ; do \ |
| 15 gsutil cp -n -a public-read gs://chromium-browser-clang-staging/$x/clang-$re
v.tgz \ |
| 16 gs://chromium-browser-clang/$x/clang-$rev.tgz ; \ |
| 17 gsutil cp -n -a public-read gs://chromium-browser-clang-staging/$x/llvmobjdu
mp-$rev.tgz \ |
| 18 gs://chromium-browser-clang/$x/llvmobjdump-$rev.tgz ; \ |
| 19 done |
| 20 $ gsutil cp -n -a public-read gs://chromium-browser-clang-staging/Linux_x64/llvm
gold-$rev.tgz \ |
| 21 gs://chromium-browser-clang/Linux_x64/llvmgold-$rev.tgz |
| 22 ``` |
| 23 |
| 24 1. Run the goma package update script to push these packages to goma. If you do |
| 25 not have the necessary credentials to do the upload, ask clang@chromium.org |
| 26 to find someone who does |
10 1. Run an exhaustive set of try jobs to test the new compiler: | 27 1. Run an exhaustive set of try jobs to test the new compiler: |
11 ``` | 28 ``` |
12 git cl try && | 29 git cl try && |
13 git cl try -m tryserver.chromium.mac -b mac_chromium_asan_rel_ng && | 30 git cl try -m tryserver.chromium.mac -b mac_chromium_asan_rel_ng && |
14 git cl try -m tryserver.chromium.linux -b linux_chromium_chromeos_dbg_ng \ | 31 git cl try -m tryserver.chromium.linux -b linux_chromium_chromeos_dbg_ng \ |
15 -b linux_chromium_chromeos_asan_rel_ng -b linux_chromium_msan_rel_ng && | 32 -b linux_chromium_chromeos_asan_rel_ng -b linux_chromium_msan_rel_ng && |
16 git cl try -m tryserver.blink -b linux_trusty_blink_rel | 33 git cl try -m tryserver.blink -b linux_trusty_blink_rel |
17 ``` | 34 ``` |
18 1. Commit roll CL from the first step | 35 1. Commit roll CL from the first step |
19 1. The bots will now pull the prebuilt binary, and goma will have a matching | 36 1. The bots will now pull the prebuilt binary, and goma will have a matching |
20 binary, too. | 37 binary, too. |
OLD | NEW |