Copy abi dills in create_sdk build rule

Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: If73dbe5a62eff54ac0f712dada14ccd4c68c293e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96500
Reviewed-by: Alexander Thomas <athom@google.com>
Commit-Queue: Liam Appelbe <liama@google.com>
diff --git a/sdk/BUILD.gn b/sdk/BUILD.gn
index 3f48b0a..c799d89 100644
--- a/sdk/BUILD.gn
+++ b/sdk/BUILD.gn
@@ -495,6 +495,16 @@
   ]
 }
 
+copy("copy_abi_dill_files") {
+  visibility = [ ":create_common_sdk" ]
+  sources = [
+    "../tools/abiversions",
+  ]
+  outputs = [
+    "$root_out_dir/dart-sdk/lib/_internal/abiversions",
+  ]
+}
+
 copy("copy_dart2js_dill_files") {
   visibility = [ ":create_full_sdk" ]
   deps = [
@@ -899,6 +909,7 @@
     ":copy_libraries_specification",
     ":copy_readme",
     ":copy_vm_dill_files",
+    ":copy_abi_dill_files",
     ":write_dartdoc_options",
     ":write_revision_file",
     ":write_version_file",
diff --git a/tools/download_abi_dills.py b/tools/download_abi_dills.py
index 1458934..6480817 100644
--- a/tools/download_abi_dills.py
+++ b/tools/download_abi_dills.py
@@ -7,12 +7,15 @@
 
 
 def main():
+  os.mkdir(os.path.join(utils.DART_DIR, 'tools/abiversions'))
   abi_version = int(utils.GetAbiVersion())
   oldest_abi_version = int(utils.GetOldestSupportedAbiVersion())
   cmd = ['cipd', 'ensure', '-root', 'tools/abiversions', '-ensure-file', '-']
   ensure_file = ''
   for i in xrange(oldest_abi_version, abi_version):
     ensure_file += '@Subdir %d\ndart/abiversions/%d latest\n\n' % (i, i)
+  if not ensure_file:
+    return 0
   p = subprocess.Popen(cmd,
                        stdin = subprocess.PIPE,
                        shell = utils.IsWindows(),