Stop adding Android-specific defines to SkUserConfig

Remove #defines that lived in gn_to_bp.py and
android_framework_defines.gni. These have been moved into a new file
in Android, SkUserConfigManual.h, in https://googleplex-android-review.git.corp.google.com/#/c/2519600/

Update gn_to_bp.py to include SkUserConfigManual.h, so it will still
result in using the same #defines.

Lately, we've found it difficult to guard changes behind a flag. e.g.
a change to drawing causes a CTS failure in Android, so we have to do
the following:
- put the change behind a flag, and add it to gn_to_bp.py or
android_framework_defines.gni
- generate new images on Android (by running CTS with external/skia
modified to not define the flag)
- create a CL in CTS that uses the new images
- land a CL in Skia that stops defining the flag
- when the Skia change lands, wait for the auto-roller to create a CL
that includes the change, stop the auto-roller, add the topic to the CTS
CL so the two can land at the same time
- land both Android changes (with TreeHugger)
- restart the Android auto-roller

With SkUserConfigManual.h (which lives in Android), the process will
be similar to Chromium:
- land a CL in Android's external/skia that defines a flag e.g.
SK_SUPPORT_LEGACY_FEATURE. Land without TreeHugger because it isn't used
in Skia and does not do anything
- land a change in Skia that changes behavior unless
SK_SUPPORT_LEGACY_FEATURE is defined. This will safely go through the
Android roll and not change any behavior for Android
- create two Android CLs - one in CTS to use the new images, and one in
external/skia to delete SK_SUPPORT_LEGACY_FEATURE. Set them to the same
topic and land them with TreeHugger

In the new process, there is no need to mess with the Android roll.

A downside to the new process is that we cannot test the android
framework defines without checking in to Android. But given how much
we've progressed in automating Android testing, this is fine.

Bug: b/63429612
Change-Id: Idfbaef2f4cae641a75fb6e7bf70428733a441336
Reviewed-on: https://skia-review.googlesource.com/22072
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
diff --git a/BUILD.gn b/BUILD.gn
index dc8cca0..7be16ef 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -3,7 +3,6 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-import("gn/android_framework_defines.gni")
 import("gn/shared_sources.gni")
 
 if (is_fuchsia) {
@@ -33,7 +32,6 @@
   skia_use_metal = false
 
   skia_android_serial = ""
-  skia_enable_android_framework_defines = false
   skia_enable_discrete_gpu = true
   skia_enable_effects = true
   skia_enable_gpu = true
@@ -114,9 +112,6 @@
   if (is_fuchsia || is_linux) {
     defines += [ "SK_SAMPLES_FOR_X" ]
   }
-  if (skia_enable_android_framework_defines) {
-    defines += android_framework_defines
-  }
   if (!skia_enable_gpu) {
     defines += [ "SK_SUPPORT_GPU=0" ]
   }
diff --git a/gn/android_framework_defines.gni b/gn/android_framework_defines.gni
deleted file mode 100644
index 689ba82..0000000
--- a/gn/android_framework_defines.gni
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 2016 Google Inc.
-#
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-android_framework_defines = [
-  # Needed until we fix https://bug.skia.org/2440 .
-  "SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG",
-  "SK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS",
-  "SK_SUPPORT_LEGACY_GRADIENT_DITHERING",
-  "SK_SUPPORT_LEGACY_DRAWFILTER",
-  "SK_IGNORE_GPU_DITHER",
-  "SK_SUPPORT_LEGACY_SHADER_ISABITMAP",
-  "SK_SUPPORT_LEGACY_EMBOSSMASKFILTER",
-  "SK_SUPPORT_DEPRECATED_CLIPOPS",
-  "SK_LEGACY_SWEEP_GRADIENT",
-  "SK_SUPPORT_LEGACY_TILED_BITMAPS",
-  "SK_SUPPORT_LEGACY_BILERP_IGNORING_HACK",
-]
diff --git a/gn/gn_to_bp.py b/gn/gn_to_bp.py
index c8fc0a9..3fc30a0 100644
--- a/gn/gn_to_bp.py
+++ b/gn/gn_to_bp.py
@@ -243,7 +243,6 @@
 nanobench_srcs  = {s for s in nanobench_srcs if not s.endswith('.h')}
 
 # Most defines go into SkUserConfig.h, where they're seen by Skia and its users.
-# Start with the defines :skia uses, minus a couple.  We'll add more in a bit.
 defines = [str(d) for d in js['targets']['//:skia']['defines']]
 defines.remove('NDEBUG')                 # Let the Android build control this.
 defines.remove('SKIA_IMPLEMENTATION=1')  # Only libskia should have this define.
@@ -253,7 +252,6 @@
 
 # This .gni file we want to read is close enough to Python syntax
 # that we can use execfile() if we supply definitions for GN builtins.
-# While we're at it, grab defines specific to Android Framework the same way.
 
 def get_path_info(path, kind):
   assert kind == "abspath"
@@ -264,20 +262,6 @@
 defs = {}
 here = os.path.dirname(__file__)
 execfile(os.path.join(here,                      'opts.gni'), builtins, defs)
-execfile(os.path.join(here, 'android_framework_defines.gni'), builtins, defs)
-
-# This should finish off the defines.
-defines += defs['android_framework_defines']
-defines.extend([
-  'GR_GL_CUSTOM_SETUP_HEADER "gl/GrGLConfig_chrome.h"',
-  'GR_TEST_UTILS 1',
-  'SKIA_DLL',
-  'SK_BUILD_FOR_ANDROID_FRAMEWORK',
-  'SK_DEFAULT_FONT_CACHE_LIMIT   (768 * 1024)',
-  'SK_DEFAULT_GLOBAL_DISCARDABLE_MEMORY_POOL_SIZE (512 * 1024)',
-  'SK_USE_FREETYPE_EMBOLDEN',
-])
-# TODO: move these all to android_framework_defines.gni?
 
 # Turn paths from opts.gni into paths relative to external/skia.
 def scrub(lst):
@@ -326,9 +310,11 @@
 
 #... and all the #defines we want to put in SkUserConfig.h.
 with open('include/config/SkUserConfig.h', 'w') as f:
-  print >>f, '// This file is autogenerated by gn_to_bp.py.'
+  print >>f, '// DO NOT MODIFY! This file is autogenerated by gn_to_bp.py.'
+  print >>f, '// If need to change a define, modify SkUserConfigManual.h'
   print >>f, '#ifndef SkUserConfig_DEFINED'
   print >>f, '#define SkUserConfig_DEFINED'
+  print >>f, '#include "SkUserConfigManual.h"'
   for define in sorted(defines):
     print >>f, '  #define', define.replace('=', ' ')
   print >>f, '#endif//SkUserConfig_DEFINED'
diff --git a/infra/bots/jobs.json b/infra/bots/jobs.json
index 1e2f89b..0a98ed1 100644
--- a/infra/bots/jobs.json
+++ b/infra/bots/jobs.json
@@ -4,7 +4,6 @@
   "Build-Debian9-Clang-arm-Release-Android",
   "Build-Debian9-Clang-arm-Release-Chromebook_ARM_GLES",
   "Build-Debian9-Clang-arm64-Debug-Android",
-  "Build-Debian9-Clang-arm64-Debug-Android_FrameworkDefs",
   "Build-Debian9-Clang-arm64-Debug-Android_Vulkan",
   "Build-Debian9-Clang-arm64-Release-Android",
   "Build-Debian9-Clang-arm64-Release-Android_Vulkan",
diff --git a/infra/bots/recipe_modules/flavor/examples/full.expected/Build-Win-Clang-arm64-Release-Android_FrameworkDefs.json b/infra/bots/recipe_modules/flavor/examples/full.expected/Build-Win-Clang-arm64-Release-Android.json
similarity index 80%
rename from infra/bots/recipe_modules/flavor/examples/full.expected/Build-Win-Clang-arm64-Release-Android_FrameworkDefs.json
rename to infra/bots/recipe_modules/flavor/examples/full.expected/Build-Win-Clang-arm64-Release-Android.json
index 38b00ca..0a7f8e9 100644
--- a/infra/bots/recipe_modules/flavor/examples/full.expected/Build-Win-Clang-arm64-Release-Android_FrameworkDefs.json
+++ b/infra/bots/recipe_modules/flavor/examples/full.expected/Build-Win-Clang-arm64-Release-Android.json
@@ -10,7 +10,7 @@
       "BUILDTYPE": "Release",
       "CHROME_HEADLESS": "1",
       "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
-      "SKIA_OUT": "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android_FrameworkDefs"
+      "SKIA_OUT": "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android"
     },
     "infra_step": true,
     "name": "fetch-gn"
@@ -19,15 +19,15 @@
     "cmd": [
       "[CUSTOM_C:\\_B_WORK]/skia/bin/gn.exe",
       "gen",
-      "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android_FrameworkDefs/Release",
-      "--args=is_debug=false ndk=\"[START_DIR]/n\" skia_enable_android_framework_defines=true target_cpu=\"arm64\""
+      "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android/Release",
+      "--args=is_debug=false ndk=\"[START_DIR]/n\" target_cpu=\"arm64\""
     ],
     "cwd": "[CUSTOM_C:\\_B_WORK]/skia",
     "env": {
       "BUILDTYPE": "Release",
       "CHROME_HEADLESS": "1",
       "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
-      "SKIA_OUT": "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android_FrameworkDefs"
+      "SKIA_OUT": "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android"
     },
     "name": "gn gen"
   },
@@ -35,14 +35,14 @@
     "cmd": [
       "ninja.exe",
       "-C",
-      "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android_FrameworkDefs/Release"
+      "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android/Release"
     ],
     "cwd": "[CUSTOM_C:\\_B_WORK]/skia",
     "env": {
       "BUILDTYPE": "Release",
       "CHROME_HEADLESS": "1",
       "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
-      "SKIA_OUT": "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android_FrameworkDefs"
+      "SKIA_OUT": "[CUSTOM_C:\\_B_WORK]/skia/out/Build-Win-Clang-arm64-Release-Android"
     },
     "name": "ninja"
   },
diff --git a/infra/bots/recipe_modules/flavor/examples/full.py b/infra/bots/recipe_modules/flavor/examples/full.py
index 066e849..14eca7f 100644
--- a/infra/bots/recipe_modules/flavor/examples/full.py
+++ b/infra/bots/recipe_modules/flavor/examples/full.py
@@ -66,7 +66,7 @@
   'Build-Ubuntu-GCC-x86_64-Release-Mesa',
   'Build-Ubuntu-GCC-x86_64-Release-PDFium',
   'Build-Ubuntu-GCC-x86_64-Release-PDFium_SkiaPaths',
-  'Build-Win-Clang-arm64-Release-Android_FrameworkDefs',
+  'Build-Win-Clang-arm64-Release-Android',
   'Build-Win-MSVC-x86_64-Debug-GDI',
   'Build-Win-MSVC-x86_64-Debug-NoGPU',
   'Build-Win-MSVC-x86_64-Release-Exceptions',
diff --git a/infra/bots/recipe_modules/flavor/gn_android_flavor.py b/infra/bots/recipe_modules/flavor/gn_android_flavor.py
index 1ff8b8c..4dd1093 100644
--- a/infra/bots/recipe_modules/flavor/gn_android_flavor.py
+++ b/infra/bots/recipe_modules/flavor/gn_android_flavor.py
@@ -69,8 +69,6 @@
     if 'Vulkan' in extra_config:
       args['ndk_api'] = 24
       args['skia_enable_vulkan_debug_layers'] = 'false'
-    if 'FrameworkDefs' in extra_config:
-      args['skia_enable_android_framework_defines'] = 'true'
     if extra_cflags:
       args['extra_cflags'] = repr(extra_cflags).replace("'", '"')
 
diff --git a/infra/bots/recipes/compile.expected/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs.json b/infra/bots/recipes/compile.expected/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs.json
deleted file mode 100644
index 32f8517..0000000
--- a/infra/bots/recipes/compile.expected/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs.json
+++ /dev/null
@@ -1,181 +0,0 @@
-[
-  {
-    "cmd": [
-      "python",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "ensure-directory",
-      "--mode",
-      "0777",
-      "[CUSTOM_/_B_WORK]"
-    ],
-    "infra_step": true,
-    "name": "makedirs checkout_path"
-  },
-  {
-    "cmd": [
-      "python",
-      "-u",
-      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
-      "--json-output",
-      "/path/to/tmp/json",
-      "remove",
-      "[CUSTOM_/_B_WORK]/.gclient_entries"
-    ],
-    "infra_step": true,
-    "name": "remove [CUSTOM_/_B_WORK]/.gclient_entries"
-  },
-  {
-    "cmd": [
-      "python",
-      "-u",
-      "RECIPE_MODULE[depot_tools::bot_update]/resources/bot_update.py",
-      "--spec",
-      "cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]",
-      "--patch_root",
-      "skia",
-      "--revision_mapping_file",
-      "{\"got_revision\": \"skia\"}",
-      "--git-cache-dir",
-      "[CUSTOM_/_B_CACHE]",
-      "--cleanup-dir",
-      "[CLEANUP]/bot_update",
-      "--output_json",
-      "/path/to/tmp/json",
-      "--revision",
-      "skia@abc123"
-    ],
-    "cwd": "[CUSTOM_/_B_WORK]",
-    "env": {
-      "GIT_HTTP_LOW_SPEED_LIMIT": "1000",
-      "GIT_HTTP_LOW_SPEED_TIME": "300",
-      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
-    },
-    "infra_step": true,
-    "name": "bot_update",
-    "~followup_annotations": [
-      "@@@STEP_TEXT@Some step text@@@",
-      "@@@STEP_LOG_LINE@json.output@{@@@",
-      "@@@STEP_LOG_LINE@json.output@  \"did_run\": true, @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"fixed_revisions\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"skia\": \"abc123\"@@@",
-      "@@@STEP_LOG_LINE@json.output@  }, @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"manifest\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"skia\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/skia.git\", @@@",
-      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
-      "@@@STEP_LOG_LINE@json.output@    }@@@",
-      "@@@STEP_LOG_LINE@json.output@  }, @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"patch_failure\": false, @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"patch_root\": \"skia\", @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"properties\": {@@@",
-      "@@@STEP_LOG_LINE@json.output@    \"got_revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\", @@@",
-      "@@@STEP_LOG_LINE@json.output@    \"got_revision_cp\": \"refs/heads/master@{#164710}\"@@@",
-      "@@@STEP_LOG_LINE@json.output@  }, @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"root\": \"skia\", @@@",
-      "@@@STEP_LOG_LINE@json.output@  \"step_text\": \"Some step text\"@@@",
-      "@@@STEP_LOG_LINE@json.output@}@@@",
-      "@@@STEP_LOG_END@json.output@@@",
-      "@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
-      "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#164710}\"@@@"
-    ]
-  },
-  {
-    "cmd": [
-      "python",
-      "-u",
-      "[CUSTOM_/_B_WORK]/skia/bin/fetch-gn"
-    ],
-    "cwd": "[CUSTOM_/_B_WORK]/skia",
-    "env": {
-      "BUILDTYPE": "Debug",
-      "CC": "/usr/bin/clang",
-      "CHROME_HEADLESS": "1",
-      "CXX": "/usr/bin/clang++",
-      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
-      "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs"
-    },
-    "infra_step": true,
-    "name": "fetch-gn"
-  },
-  {
-    "cmd": [
-      "[CUSTOM_/_B_WORK]/skia/bin/gn",
-      "gen",
-      "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs/Debug",
-      "--args=extra_cflags=[\"-O1\"] ndk=\"[START_DIR]/android_ndk_linux\" skia_enable_android_framework_defines=true target_cpu=\"arm64\""
-    ],
-    "cwd": "[CUSTOM_/_B_WORK]/skia",
-    "env": {
-      "BUILDTYPE": "Debug",
-      "CC": "/usr/bin/clang",
-      "CHROME_HEADLESS": "1",
-      "CXX": "/usr/bin/clang++",
-      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
-      "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs"
-    },
-    "name": "gn gen"
-  },
-  {
-    "cmd": [
-      "ninja",
-      "-C",
-      "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs/Debug"
-    ],
-    "cwd": "[CUSTOM_/_B_WORK]/skia",
-    "env": {
-      "BUILDTYPE": "Debug",
-      "CC": "/usr/bin/clang",
-      "CHROME_HEADLESS": "1",
-      "CXX": "/usr/bin/clang++",
-      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]",
-      "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs"
-    },
-    "name": "ninja"
-  },
-  {
-    "cmd": [
-      "python",
-      "-u",
-      "import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'dm.app', 'nanobench.app', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', 'skpbench', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n  os.makedirs(dst)\nexcept OSError as e:\n  if e.errno != errno.EEXIST:\n    raise\n\nfor pattern in build_products_whitelist:\n  path = os.path.join(src, pattern)\n  for f in glob.glob(path):\n    dst_path = os.path.join(dst, os.path.relpath(f, src))\n    if not os.path.isdir(os.path.dirname(dst_path)):\n      os.makedirs(os.path.dirname(dst_path))\n    print 'Copying build product %s to %s' % (f, dst_path)\n    shutil.move(f, dst_path)\n",
-      "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs/Debug",
-      "[CUSTOM_[SWARM_OUT_DIR]]/out/Debug"
-    ],
-    "infra_step": true,
-    "name": "copy build products",
-    "~followup_annotations": [
-      "@@@STEP_LOG_LINE@python.inline@import errno@@@",
-      "@@@STEP_LOG_LINE@python.inline@import glob@@@",
-      "@@@STEP_LOG_LINE@python.inline@import os@@@",
-      "@@@STEP_LOG_LINE@python.inline@import shutil@@@",
-      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
-      "@@@STEP_LOG_LINE@python.inline@@@@",
-      "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@",
-      "@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@",
-      "@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe', 'dm.app', 'nanobench.app', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', 'skpbench', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']@@@",
-      "@@@STEP_LOG_LINE@python.inline@@@@",
-      "@@@STEP_LOG_LINE@python.inline@try:@@@",
-      "@@@STEP_LOG_LINE@python.inline@  os.makedirs(dst)@@@",
-      "@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@",
-      "@@@STEP_LOG_LINE@python.inline@  if e.errno != errno.EEXIST:@@@",
-      "@@@STEP_LOG_LINE@python.inline@    raise@@@",
-      "@@@STEP_LOG_LINE@python.inline@@@@",
-      "@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@@",
-      "@@@STEP_LOG_LINE@python.inline@  path = os.path.join(src, pattern)@@@",
-      "@@@STEP_LOG_LINE@python.inline@  for f in glob.glob(path):@@@",
-      "@@@STEP_LOG_LINE@python.inline@    dst_path = os.path.join(dst, os.path.relpath(f, src))@@@",
-      "@@@STEP_LOG_LINE@python.inline@    if not os.path.isdir(os.path.dirname(dst_path)):@@@",
-      "@@@STEP_LOG_LINE@python.inline@      os.makedirs(os.path.dirname(dst_path))@@@",
-      "@@@STEP_LOG_LINE@python.inline@    print 'Copying build product %s to %s' % (f, dst_path)@@@",
-      "@@@STEP_LOG_LINE@python.inline@    shutil.move(f, dst_path)@@@",
-      "@@@STEP_LOG_END@python.inline@@@"
-    ]
-  },
-  {
-    "name": "$result",
-    "recipe_result": null,
-    "status_code": 0
-  }
-]
\ No newline at end of file
diff --git a/infra/bots/recipes/compile.py b/infra/bots/recipes/compile.py
index 222b255..622c6c3 100644
--- a/infra/bots/recipes/compile.py
+++ b/infra/bots/recipes/compile.py
@@ -82,7 +82,6 @@
   'Build-Mac-Clang-x86_64-Debug-CommandBuffer',
   'Build-Mac-Clang-x86_64-Release',
   'Build-Ubuntu-Clang-arm-Release-Chromebook_C100p',
-  'Build-Ubuntu-Clang-arm64-Debug-Android_FrameworkDefs',
   'Build-Ubuntu-Clang-arm64-Release-Android',
   'Build-Ubuntu-Clang-arm64-Release-Android_Vulkan',
   'Build-Ubuntu-Clang-mipsel-Debug-Android',
diff --git a/infra/bots/tasks.json b/infra/bots/tasks.json
index 8d56b73..4270ca3 100644
--- a/infra/bots/tasks.json
+++ b/infra/bots/tasks.json
@@ -30,12 +30,6 @@
         "Build-Debian9-Clang-arm64-Debug-Android"
       ]
     },
-    "Build-Debian9-Clang-arm64-Debug-Android_FrameworkDefs": {
-      "priority": 0.8,
-      "tasks": [
-        "Build-Debian9-Clang-arm64-Debug-Android_FrameworkDefs"
-      ]
-    },
     "Build-Debian9-Clang-arm64-Debug-Android_Vulkan": {
       "priority": 0.8,
       "tasks": [
@@ -2467,36 +2461,6 @@
       "isolate": "compile_skia.isolate",
       "priority": 0.8
     },
-    "Build-Debian9-Clang-arm64-Debug-Android_FrameworkDefs": {
-      "cipd_packages": [
-        {
-          "name": "skia/bots/android_ndk_linux",
-          "path": "android_ndk_linux",
-          "version": "version:10"
-        }
-      ],
-      "dimensions": [
-        "cpu:x86-64-avx2",
-        "gpu:none",
-        "os:Debian-9.0",
-        "pool:Skia"
-      ],
-      "extra_args": [
-        "--workdir",
-        "../../..",
-        "compile",
-        "repository=<(REPO)",
-        "buildername=Build-Debian9-Clang-arm64-Debug-Android_FrameworkDefs",
-        "swarm_out_dir=${ISOLATED_OUTDIR}",
-        "revision=<(REVISION)",
-        "patch_repo=<(PATCH_REPO)",
-        "patch_storage=<(PATCH_STORAGE)",
-        "patch_issue=<(ISSUE)",
-        "patch_set=<(PATCHSET)"
-      ],
-      "isolate": "compile_skia.isolate",
-      "priority": 0.8
-    },
     "Build-Debian9-Clang-arm64-Debug-Android_Vulkan": {
       "cipd_packages": [
         {