Merge "Simplify app data files"
diff --git a/tools/chrome_data.py b/tools/chrome_data.py
index 8004656..5dcd41b 100644
--- a/tools/chrome_data.py
+++ b/tools/chrome_data.py
@@ -5,8 +5,7 @@
 import os
 import utils
 
-THIRD_PARTY = os.path.join(utils.REPO_ROOT, 'third_party')
-BASE = os.path.join(THIRD_PARTY, 'chrome')
+BASE = os.path.join(utils.THIRD_PARTY, 'chrome')
 
 INPUT_JARS = [
     'out/Release/gen/chrome/android/monochrome_public_apk/monochrome_public_apk.jar',
diff --git a/tools/gmail_data.py b/tools/gmail_data.py
index ba95450..5149389 100644
--- a/tools/gmail_data.py
+++ b/tools/gmail_data.py
@@ -6,9 +6,8 @@
 import os
 import utils
 
-THIRD_PARTY = os.path.join(utils.REPO_ROOT, 'third_party')
 ANDROID_L_API = '21'
-BASE = os.path.join(THIRD_PARTY, 'gmail')
+BASE = os.path.join(utils.THIRD_PARTY, 'gmail')
 
 V170604_16_BASE = os.path.join(BASE, 'gmail_android_170604.16')
 V170604_16_PREFIX = os.path.join(V170604_16_BASE, 'Gmail_release_unstripped')
@@ -17,7 +16,7 @@
 V180826_15_PREFIX = os.path.join(V180826_15_BASE, 'Gmail_release_unstripped')
 
 # NOTE: We always use android.jar for SDK v25 for now.
-ANDROID_JAR = os.path.join(THIRD_PARTY, 'android_jar', 'lib-v25', 'android.jar')
+ANDROID_JAR = utils.get_android_jar(25)
 
 VERSIONS = {
   '170604.16': {
@@ -48,7 +47,7 @@
       'inputs': ['%s_deploy.jar' % V180826_15_PREFIX],
       'pgconf': [
           '%s_proguard.config' % V180826_15_PREFIX,
-          '%s/proguardsettings/Gmail_proguard.config' % THIRD_PARTY],
+          '%s/proguardsettings/Gmail_proguard.config' % utils.THIRD_PARTY],
       'min-api' : ANDROID_L_API,
     },
     'proguarded' : {
diff --git a/tools/gmscore_data.py b/tools/gmscore_data.py
index e6d7677..44971c1 100644
--- a/tools/gmscore_data.py
+++ b/tools/gmscore_data.py
@@ -6,8 +6,7 @@
 import os
 import utils
 
-THIRD_PARTY = os.path.join(utils.REPO_ROOT, 'third_party')
-BASE = os.path.join(THIRD_PARTY, 'gmscore')
+BASE = os.path.join(utils.THIRD_PARTY, 'gmscore')
 
 V4_BASE = os.path.join(BASE, 'v4')
 V5_BASE = os.path.join(BASE, 'v5')
@@ -27,7 +26,7 @@
 
 # NOTE: we always use android.jar for SDK v25, later we might want to revise it
 #       to use proper android.jar version for each of gmscore version separately.
-ANDROID_JAR = os.path.join(THIRD_PARTY, 'android_jar', 'lib-v25', 'android.jar')
+ANDROID_JAR = utils.get_android_jar(25)
 
 VERSIONS = {
   'v4': {
@@ -113,7 +112,7 @@
       'inputs': ['%s_deploy.jar' % LATEST_PREFIX],
       'pgconf': [
           '%s_proguard.config' % LATEST_PREFIX,
-          '%s/proguardsettings/GmsCore_proguard.config' % THIRD_PARTY],
+          '%s/proguardsettings/GmsCore_proguard.config' % utils.THIRD_PARTY],
       'min-api' : ANDROID_L_API,
     },
     'proguarded' : {
diff --git a/tools/nest_data.py b/tools/nest_data.py
index af3e35a..92435f6 100644
--- a/tools/nest_data.py
+++ b/tools/nest_data.py
@@ -1,19 +1,18 @@
-# Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file
+# Copyright (c) 2018, the R8 project authors. Please see the AUTHORS file
 # for details. All rights reserved. Use of this source code is governed by a
 # BSD-style license that can be found in the LICENSE file.
 
 import os
 import utils
 
-THIRD_PARTY = os.path.join(utils.REPO_ROOT, 'third_party')
 ANDROID_L_API = '21'
-BASE = os.path.join(THIRD_PARTY, 'nest')
+BASE = os.path.join(utils.THIRD_PARTY, 'nest')
 
 V20180926_BASE = os.path.join(BASE, 'nest_20180926_7c6cfb')
 
 # NOTE: we always use android.jar for SDK v25, later we might want to revise it
-#       to use proper android.jar version for each of youtube version separately.
-ANDROID_JAR = os.path.join(THIRD_PARTY, 'android_jar', 'lib-v25', 'android.jar')
+#       to use proper android.jar version for each of nest version separately.
+ANDROID_JAR = utils.get_android_jar(25)
 
 VERSIONS = {
   '20180926': {
diff --git a/tools/utils.py b/tools/utils.py
index 3b52e6a..a734ee5 100644
--- a/tools/utils.py
+++ b/tools/utils.py
@@ -16,6 +16,7 @@
 ANDROID_JAR = 'third_party/android_jar/lib-v{api}/android.jar'
 TOOLS_DIR = os.path.abspath(os.path.normpath(os.path.join(__file__, '..')))
 REPO_ROOT = os.path.realpath(os.path.join(TOOLS_DIR, '..'))
+THIRD_PARTY = os.path.join(REPO_ROOT, 'third_party')
 MEMORY_USE_TMP_FILE = 'memory_use.tmp'
 DEX_SEGMENTS_RESULT_PATTERN = re.compile('- ([^:]+): ([0-9]+)')
 BUILD = os.path.join(REPO_ROOT, 'build')
@@ -23,6 +24,7 @@
 GENERATED_LICENSE_DIR = os.path.join(BUILD, 'generatedLicense')
 SRC_ROOT = os.path.join(REPO_ROOT, 'src', 'main', 'java')
 
+
 D8 = 'd8'
 R8 = 'r8'
 R8_SRC = 'sourceJar'
diff --git a/tools/youtube_data.py b/tools/youtube_data.py
index 2e3be27..f2b1772 100644
--- a/tools/youtube_data.py
+++ b/tools/youtube_data.py
@@ -6,9 +6,8 @@
 import os
 import utils
 
-THIRD_PARTY = os.path.join(utils.REPO_ROOT, 'third_party')
 ANDROID_L_API = '21'
-BASE = os.path.join(THIRD_PARTY, 'youtube')
+BASE = os.path.join(utils.THIRD_PARTY, 'youtube')
 
 V12_10_BASE = os.path.join(BASE, 'youtube.android_12.10')
 V12_10_PREFIX = os.path.join(V12_10_BASE, 'YouTubeRelease')
@@ -24,7 +23,7 @@
 
 # NOTE: we always use android.jar for SDK v25, later we might want to revise it
 #       to use proper android.jar version for each of youtube version separately.
-ANDROID_JAR = os.path.join(THIRD_PARTY, 'android_jar', 'lib-v25', 'android.jar')
+ANDROID_JAR = utils.get_android_jar(25)
 
 VERSIONS = {
   '12.10': {
@@ -37,7 +36,7 @@
     'deploy' : {
       'inputs': ['%s_deploy.jar' % V12_10_PREFIX],
       'pgconf': ['%s_proguard.config' % V12_10_PREFIX,
-                 '%s/proguardsettings/YouTubeRelease_proguard.config' % THIRD_PARTY],
+                 '%s/proguardsettings/YouTubeRelease_proguard.config' % utils.THIRD_PARTY],
       'min-api' : ANDROID_L_API,
     }
     # The 'proguarded' version cannot be handled by D8/R8 because there are
@@ -59,7 +58,7 @@
     'deploy' : {
       'inputs': ['%s_deploy.jar' % V12_17_PREFIX],
       'pgconf': ['%s_proguard.config' % V12_17_PREFIX,
-                 '%s/proguardsettings/YouTubeRelease_proguard.config' % THIRD_PARTY],
+                 '%s/proguardsettings/YouTubeRelease_proguard.config' % utils.THIRD_PARTY],
       'min-api' : ANDROID_L_API,
     },
     'proguarded' : {
@@ -79,7 +78,7 @@
       'inputs': ['%s_deploy.jar' % V12_22_PREFIX],
       'pgconf': [
           '%s_proguard.config' % V12_22_PREFIX,
-          '%s/proguardsettings/YouTubeRelease_proguard.config' % THIRD_PARTY],
+          '%s/proguardsettings/YouTubeRelease_proguard.config' % utils.THIRD_PARTY],
       'maindexrules' : [
           os.path.join(V12_22_BASE, 'mainDexClasses.rules'),
           os.path.join(V12_22_BASE, 'main-dex-classes-release.cfg'),
@@ -102,7 +101,7 @@
       'inputs': ['%s_deploy.jar' % V13_37_PREFIX],
       'pgconf': [
           '%s_proguard.config' % V13_37_PREFIX,
-          '%s/proguardsettings/YouTubeRelease_proguard.config' % THIRD_PARTY],
+          '%s/proguardsettings/YouTubeRelease_proguard.config' % utils.THIRD_PARTY],
       # Build for native multi dex, as Currently R8 cannot meet the main-dex
       # constraints.
       #'maindexrules' : [