Change gradle to output to the android out dir
Change-Id: I569afd35f76891390aad27b0ab75e2106cc0fe18
diff --git a/build.gradle b/build.gradle
index 209d103..b209334 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,9 +1,20 @@
+// ext.androidHostOut is shared by all tools/{base,build,swt} gradle projects/
+ext.androidHostOut = java.lang.System.getenv("ANDROID_HOST_OUT")
+if (ext.androidHostOut == null) {
+ ext.androidHostOut = "$rootdir/../../out/host/common"
+}
+// rootProject.buildDir is specific to this gradle build.
+buildDir = new File(file(ext.androidHostOut), "tools/build/build")
+
subprojects {
+ // Change buildDir first so that all plugins pick up the new value.
+ project.buildDir = project.file("$project.parent.buildDir/../$project.name")
+
apply plugin: 'idea'
repositories {
mavenCentral()
- maven { url = uri("$rootDir/../base/repo") }
+ maven { url = uri("$rootProject.ext.androidHostOut/repo") }
}
project.ext {
@@ -20,12 +31,14 @@
task aggregateResults(type: Copy) {
from { testTasks*.testResultsDir }
- into { file("build/results") }
+ into { file("$buildDir/results") }
}
aggregateResults.dependsOn testTasks
task makeAggregateReport(dependsOn: aggregateResults) {
- def report = new org.gradle.api.internal.tasks.testing.junit.report.DefaultTestReport(testReportDir: file("build/reports/tests"), testResultsDir: file("build/results"))
+ def report = new org.gradle.api.internal.tasks.testing.junit.report.DefaultTestReport(
+ testReportDir: file("$buildDir/reports/tests"),
+ testResultsDir: file("$buildDir/results"))
report.generateReport()
}
@@ -36,4 +49,5 @@
task clean(type: Delete) {
delete 'build'
-}
\ No newline at end of file
+}
+
diff --git a/gradlew b/gradlew
index 91a7e26..d79595c 100755
--- a/gradlew
+++ b/gradlew
@@ -161,4 +161,13 @@
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
-exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
+# Change the project's .gradle to the android out dir.
+if [[ -z "$ANDROID_CACHE_DIR" ]]; then
+ ANDROID_CACHE_DIR="$APP_HOME/../../out/host/common/tools/build/.gradle"
+fi
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" \
+ -classpath "$CLASSPATH" \
+ org.gradle.wrapper.GradleWrapperMain \
+ --project-cache-dir=$ANDROID_CACHE_DIR \
+ "$@"
diff --git a/gradlew.bat b/gradlew.bat
index aec9973..e121839 100644
--- a/gradlew.bat
+++ b/gradlew.bat
@@ -72,7 +72,8 @@
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% %CMD_LINE_ARGS% --project-cache-dir=%APP_HOME%\..\..\out\host\common\tools\build\.gradle
+
:end
@rem End local scope for the variables with windows NT shell