aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Norbye <tnorbye@google.com>2013-12-03 17:46:48 -0800
committerTor Norbye <tnorbye@google.com>2013-12-03 17:55:50 -0800
commit065947cd93481255143c154bd8188c42d5f87700 (patch)
treec061d5cfd715e6e0383e44ec6e301b38ce538e31
parente8a18c6ee8e4c93df093c00224fdd3b024ed5774 (diff)
downloadbuild-065947cd93481255143c154bd8188c42d5f87700.tar.gz
Include source markers in library merged resource files for now
We should only suppress source markers in libraries during release builds. We don't have this info quite yet, so for now, stub it out. Change-Id: If09acffccec529548efbf1d3f5ea88a3a286f171
-rw-r--r--builder/src/main/java/com/android/builder/AndroidBuilder.java23
-rw-r--r--gradle/src/main/groovy/com/android/build/gradle/tasks/MergeResources.groovy8
2 files changed, 22 insertions, 9 deletions
diff --git a/builder/src/main/java/com/android/builder/AndroidBuilder.java b/builder/src/main/java/com/android/builder/AndroidBuilder.java
index f39e75c..efc1233 100644
--- a/builder/src/main/java/com/android/builder/AndroidBuilder.java
+++ b/builder/src/main/java/com/android/builder/AndroidBuilder.java
@@ -331,7 +331,7 @@ public class AndroidBuilder {
new File(outManifestLocation));
} else {
ManifestMerger merger = new ManifestMerger(MergerLog.wrapSdkLog(mLogger), null);
- merger.setInsertSourceMarkers(!mLibrary);
+ merger.setInsertSourceMarkers(isInsertSourceMarkers());
doMerge(merger, new File(outManifestLocation), mainManifest,
attributeInjection, packageOverride);
}
@@ -350,7 +350,7 @@ public class AndroidBuilder {
}
ManifestMerger merger = new ManifestMerger(MergerLog.wrapSdkLog(mLogger), null);
- merger.setInsertSourceMarkers(!mLibrary);
+ merger.setInsertSourceMarkers(isInsertSourceMarkers());
doMerge(merger, mainManifestOut, mainManifest, manifestOverlays,
attributeInjection, packageOverride);
@@ -539,10 +539,27 @@ public class AndroidBuilder {
}
ManifestMerger merger = new ManifestMerger(MergerLog.wrapSdkLog(mLogger), null);
- merger.setInsertSourceMarkers(!mLibrary);
+ merger.setInsertSourceMarkers(isInsertSourceMarkers());
doMerge(merger, outManifest, mainManifest, manifests, attributeInjection, packageOverride);
}
+ /**
+ * Returns whether we should insert source markers in generated files (such as
+ * XML resources and merged manifest files)
+ *
+ * @return true to generate source comments
+ */
+ public boolean isInsertSourceMarkers() {
+ // In release library builds (generating AAR's) we don't want source comments.
+ // In other scenarios (e.g. during development) we do.
+
+ // TODO: Find out whether we're building in a release build type
+ boolean isRelease = false;
+
+ //noinspection ConstantConditions
+ return !(mLibrary && isRelease);
+ }
+
private void doMerge(ManifestMerger merger, File output, File input,
Map<String, String> injectionMap, String packageOverride) {
List<File> list = Collections.emptyList();
diff --git a/gradle/src/main/groovy/com/android/build/gradle/tasks/MergeResources.groovy b/gradle/src/main/groovy/com/android/build/gradle/tasks/MergeResources.groovy
index 37502bc..b6487df 100644
--- a/gradle/src/main/groovy/com/android/build/gradle/tasks/MergeResources.groovy
+++ b/gradle/src/main/groovy/com/android/build/gradle/tasks/MergeResources.groovy
@@ -76,12 +76,7 @@ public class MergeResources extends IncrementalTask {
// get the merged set and write it down.
MergedResourceWriter writer = new MergedResourceWriter(
destinationDir, getProcess9Patch() ? builder.aaptRunner : null)
-
- // Don't put source markers in libraries since clients of the AAR will
- // not have access to these (and it leaks build server paths etc to users)
- if (plugin instanceof LibraryPlugin) {
- writer.setInsertSourceMarkers(false)
- }
+ writer.setInsertSourceMarkers(builder.isInsertSourceMarkers())
merger.mergeData(writer, false /*doCleanUp*/)
@@ -140,6 +135,7 @@ public class MergeResources extends IncrementalTask {
MergedResourceWriter writer = new MergedResourceWriter(
getOutputDir(), getProcess9Patch() ? builder.aaptRunner : null)
+ writer.setInsertSourceMarkers(builder.isInsertSourceMarkers())
merger.mergeData(writer, false /*doCleanUp*/)
// No exception? Write the known state.
merger.writeBlobTo(getIncrementalFolder(), writer)