aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
diff options
context:
space:
mode:
authorGravatar corysmith <corysmith@google.com>2017-08-23 19:01:08 +0200
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2017-08-24 13:58:47 +0200
commit827d3d2f3350417d33f9f7caf614c7e48aabb071 (patch)
tree46ba2106449aed6414dff72a017e5513eee19a45 /src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
parenta7271d28ba82a24d235da2cf57045bac042d1bb7 (diff)
Final tweaks and fixes to enable aapt2 for Blaze.
Implemented processing databinding for compile passes RELNOTES: None PiperOrigin-RevId: 166215052
Diffstat (limited to 'src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java')
-rw-r--r--src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java b/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
index 5e168414c9..d975051497 100644
--- a/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
+++ b/src/tools/android/java/com/google/devtools/build/android/Aapt2ResourcePackagingAction.java
@@ -19,6 +19,7 @@ import static java.util.stream.Collectors.toList;
import com.android.utils.StdLogger;
import com.google.common.base.Stopwatch;
import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableSet;
import com.google.common.util.concurrent.ListeningExecutorService;
import com.google.devtools.build.android.AndroidResourceMerger.MergingException;
import com.google.devtools.build.android.AndroidResourceProcessingAction.Options;
@@ -86,13 +87,29 @@ public class Aapt2ResourcePackagingAction {
final Path densityManifest = tmp.resolve("manifest-filtered/AndroidManifest.xml");
final Path processedManifest = tmp.resolve("manifest-processed/AndroidManifest.xml");
+ final Path dummyManifest = tmp.resolve("manifest-aapt-dummy/AndroidManifest.xml");
final Path databindingResourcesRoot =
Files.createDirectories(tmp.resolve("android_data_binding_resources"));
+ final Path databindingMetaData =
+ Files.createDirectories(tmp.resolve("android_data_binding_metadata"));
final Path compiledResources = Files.createDirectories(tmp.resolve("compiled"));
+ final Path staticLinkedOut = Files.createDirectories(tmp.resolve("static-linked"));
final Path linkedOut = Files.createDirectories(tmp.resolve("linked"));
+ Path generatedSources = null;
+ if (options.srcJarOutput != null || options.rOutput != null || options.symbolsOut != null) {
+ generatedSources = tmp.resolve("generated_resources");
+ }
+
logger.fine(String.format("Setup finished at %sms", timer.elapsed(TimeUnit.MILLISECONDS)));
+ List<DependencyAndroidData> data =
+ ImmutableSet.<DependencyAndroidData>builder()
+ .addAll(options.directData)
+ .addAll(options.transitiveData)
+ .build()
+ .asList();
+
// Checks for merge conflicts.
MergedAndroidData mergedAndroidData =
AndroidResourceMerger.mergeData(
@@ -125,7 +142,8 @@ public class Aapt2ResourcePackagingAction {
CompiledResources compiled =
options
.primaryData
- .processDataBindings(options.dataBindingInfoOut, databindingResourcesRoot)
+ .processDataBindings(options.dataBindingInfoOut, options.packageForR,
+ databindingResourcesRoot)
.compile(compiler, compiledResources)
.processManifest(
manifest ->