Cleanup building the desugared library configurations
* Build both JDK-8 and JDK-11 legacy configurations
* Fix the filtering of the legacy conversions
Make the version check depend on variant
Test: tools/archive.py --dry-run --dry-run-output /tmp/dry
Change-Id: Idf261a5e9516c557c68b5261feda0d88fc28adde
diff --git a/tools/archive.py b/tools/archive.py
index d7bf1a9..91affd6 100755
--- a/tools/archive.py
+++ b/tools/archive.py
@@ -161,11 +161,13 @@
create_maven_release.generate_desugar_configuration_maven_zip(
utils.DESUGAR_CONFIGURATION_MAVEN_ZIP,
utils.DESUGAR_CONFIGURATION,
- utils.DESUGAR_IMPLEMENTATION)
+ utils.DESUGAR_IMPLEMENTATION,
+ utils.LIBRARY_DESUGAR_CONVERSIONS_LEGACY_ZIP)
create_maven_release.generate_desugar_configuration_maven_zip(
- utils.DESUGAR_CONFIGURATION_LEGACY_JDK11_MAVEN_ZIP,
+ utils.DESUGAR_CONFIGURATION_JDK11_LEGACY_MAVEN_ZIP,
utils.DESUGAR_CONFIGURATION_JDK11_LEGACY,
- utils.DESUGAR_IMPLEMENTATION_JDK11)
+ utils.DESUGAR_IMPLEMENTATION_JDK11,
+ utils.LIBRARY_DESUGAR_CONVERSIONS_LEGACY_ZIP)
version = GetVersion()
is_main = IsMain(version)
@@ -196,6 +198,8 @@
utils.MAVEN_ZIP_LIB,
utils.DESUGAR_CONFIGURATION,
utils.DESUGAR_CONFIGURATION_MAVEN_ZIP,
+ utils.DESUGAR_CONFIGURATION_JDK11_LEGACY,
+ utils.DESUGAR_CONFIGURATION_JDK11_LEGACY_MAVEN_ZIP,
utils.GENERATED_LICENSE,
]:
file_name = os.path.basename(file)
@@ -266,6 +270,40 @@
utils.upload_file_to_cloud_storage(
desugar_jdk_libs_configuration_jar, jar_destination)
+ # TODO(sgjesse): Refactor this to avoid the duplication of what is above.
+ # Upload desugar_jdk_libs JDK-11 legacyconfiguration to a maven compatible location.
+ if file == utils.DESUGAR_CONFIGURATION_JDK11_LEGACY:
+ jar_basename = 'desugar_jdk_libs_configuration.jar'
+ jar_version_name = 'desugar_jdk_libs_configuration-%s-jdk11-legacy.jar' % version
+ maven_dst = GetUploadDestination(
+ utils.get_maven_path('desugar_jdk_libs_configuration', version),
+ jar_version_name, is_main)
+
+ with utils.TempDir() as tmp_dir:
+ desugar_jdk_libs_configuration_jar = os.path.join(tmp_dir,
+ jar_version_name)
+ create_maven_release.generate_jar_with_desugar_configuration(
+ utils.DESUGAR_CONFIGURATION_JDK11_LEGACY,
+ utils.DESUGAR_IMPLEMENTATION_JDK11,
+ utils.LIBRARY_DESUGAR_CONVERSIONS_ZIP,
+ desugar_jdk_libs_configuration_jar)
+
+ if options.dry_run:
+ print('Dry run, not actually creating maven repo for '
+ + 'desugar configuration.')
+ if options.dry_run_output:
+ shutil.copyfile(
+ desugar_jdk_libs_configuration_jar,
+ os.path.join(options.dry_run_output, jar_version_name))
+ else:
+ utils.upload_file_to_cloud_storage(
+ desugar_jdk_libs_configuration_jar, maven_dst)
+ print('Maven repo root available at: %s' % GetMavenUrl(is_main))
+ # Also archive the jar as non maven destination for Google3
+ jar_destination = GetUploadDestination(
+ version, jar_basename, is_main)
+ utils.upload_file_to_cloud_storage(
+ desugar_jdk_libs_configuration_jar, jar_destination)
if __name__ == '__main__':
sys.exit(Main())
diff --git a/tools/create_maven_release.py b/tools/create_maven_release.py
index 6250c75..de9f0ac 100755
--- a/tools/create_maven_release.py
+++ b/tools/create_maven_release.py
@@ -383,7 +383,8 @@
move(destination + '.zip', destination)
# Generate the maven zip for the configuration to desugar desugar_jdk_libs.
-def generate_desugar_configuration_maven_zip(out, configuration, implementation):
+def generate_desugar_configuration_maven_zip(
+ out, configuration, implementation, conversions):
with utils.TempDir() as tmp_dir:
version = utils.desugar_configuration_version(configuration)
# Generate the pom file.
@@ -394,7 +395,7 @@
generate_jar_with_desugar_configuration(
configuration,
implementation,
- utils.LIBRARY_DESUGAR_CONVERSIONS_ZIP,
+ conversions,
jar_file)
# Write the maven zip file.
generate_maven_zip(
diff --git a/tools/utils.py b/tools/utils.py
index cd41ad0..1fb323f 100644
--- a/tools/utils.py
+++ b/tools/utils.py
@@ -66,6 +66,7 @@
R8LIB_TESTS_DEPS_JAR = R8_TESTS_DEPS_JAR
MAVEN_ZIP = os.path.join(LIBS, 'r8.zip')
MAVEN_ZIP_LIB = os.path.join(LIBS, 'r8lib.zip')
+LIBRARY_DESUGAR_CONVERSIONS_LEGACY_ZIP = os.path.join(LIBS, 'library_desugar_conversions_legacy.jar')
LIBRARY_DESUGAR_CONVERSIONS_ZIP = os.path.join(LIBS, 'library_desugar_conversions.jar')
DESUGAR_CONFIGURATION = os.path.join(
@@ -78,8 +79,8 @@
'third_party', 'openjdk', 'desugar_jdk_libs_11', 'desugar_jdk_libs.jar')
DESUGAR_CONFIGURATION_MAVEN_ZIP = os.path.join(
LIBS, 'desugar_jdk_libs_configuration.zip')
-DESUGAR_CONFIGURATION_LEGACY_JDK11_MAVEN_ZIP = os.path.join(
- LIBS, 'desugar_jdk_libs_configuration_legacy_jdk11.zip')
+DESUGAR_CONFIGURATION_JDK11_LEGACY_MAVEN_ZIP = os.path.join(
+ LIBS, 'desugar_jdk_libs_configuration_jdk11_legacy.zip')
GENERATED_LICENSE = os.path.join(GENERATED_LICENSE_DIR, 'LICENSE')
RT_JAR = os.path.join(REPO_ROOT, 'third_party/openjdk/openjdk-rt-1.8/rt.jar')
R8LIB_KEEP_RULES = os.path.join(REPO_ROOT, 'src/main/keep.txt')