Add a copy of NASM to util/bot/ in BoringSSL.

This is to transition BoringSSL's Windows build from Yasm to NASM. This
change itself is a no-op for now, but a later change to the BoringSSL
recipes will add a pair of standalone builders here. Then I'll get the
change I have lying around for Chromium moving.

Bug: chromium:766721
Change-Id: I4dca1c299f93bc5c01695983fe0478490c472deb
Reviewed-on: https://boringssl-review.googlesource.com/29324
Reviewed-by: Steven Valdez <svaldez@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
diff --git a/util/bot/DEPS b/util/bot/DEPS
index ac92354..ab6b94e 100644
--- a/util/bot/DEPS
+++ b/util/bot/DEPS
@@ -18,6 +18,7 @@
   'checkout_clang': False,
   'checkout_fuzzer': False,
   'checkout_sde': False,
+  'checkout_nasm': False,
 }
 
 deps = {
@@ -138,7 +139,7 @@
   {
     'name': 'yasm_win32',
     'pattern': '.',
-    'condition': 'host_os == "win"',
+    'condition': 'host_os == "win" and not checkout_nasm',
     'action': [ 'download_from_google_storage',
                 '--no_resume',
                 '--platform=win32',
@@ -148,6 +149,18 @@
     ],
   },
   {
+    'name': 'nasm_win32',
+    'pattern': '.',
+    'condition': 'host_os == "win" and checkout_nasm',
+    'action': [ 'download_from_google_storage',
+                '--no_resume',
+                '--platform=win32',
+                '--no_auth',
+                '--bucket', 'chromium-tools',
+                '-s', 'boringssl/util/bot/nasm-win32.exe.sha1',
+    ],
+  },
+  {
     'name': 'win_toolchain',
     'pattern': '.',
     'condition': 'host_os == "win"',
diff --git a/util/bot/UPDATING b/util/bot/UPDATING
index f5a831b..b358f51 100644
--- a/util/bot/UPDATING
+++ b/util/bot/UPDATING
@@ -41,6 +41,16 @@
 
     The current revision is cmake-3.10.1-win32-x86.zip.
 
+nasm-win32.exe: Update to the appropriate release of NASM, found at
+    https://www.nasm.us/. Use the same version as Chromium, found at
+    https://chromium.googlesource.com/chromium/src/+/master/third_party/nasm/README.chromium
+    Extract nasm.exe from the download named nasm-VERSION-win32.zip.
+
+    The current revision is nasm-2.13.03-win32.zip.
+
+    TODO(davidben): The Chromium link currently does not work. It will get
+    filled in in the future. See https://crbug.com/766721.
+
 perl-win32.zip: Update to the latest 32-bit prebuilt "Portable" edition of
     Strawberry Perl, found at http://strawberryperl.com/releases.html. The
     download will be named strawberry-perl-VERSION-32bit-portable.zip.
diff --git a/util/bot/nasm-win32.exe.sha1 b/util/bot/nasm-win32.exe.sha1
new file mode 100644
index 0000000..009bb3c
--- /dev/null
+++ b/util/bot/nasm-win32.exe.sha1
@@ -0,0 +1 @@
+41438548185ed402ad713b4d5b90187737585d4a
\ No newline at end of file