diff --git a/bramble-android/build.gradle b/bramble-android/build.gradle index 54018e56e..cd9a367b0 100644 --- a/bramble-android/build.gradle +++ b/bramble-android/build.gradle @@ -44,9 +44,26 @@ dependencies { testImplementation "org.hamcrest:hamcrest-core:1.3" } -project.afterEvaluate { - copy { - from configurations.tor.collect { zipTree(it) } - into 'src/main/res/raw' +def torBinariesDir = 'src/main/res/raw' + +task unpackTorBinaries { + outputs.dir torBinariesDir + doLast { + copy { + from configurations.tor.collect { zipTree(it) } + into torBinariesDir + } } } + +tasks.withType(JavaCompile) { + dependsOn unpackTorBinaries +} + +task cleanTorBinaries { + doLast { + delete fileTree(torBinariesDir) { include '*.zip' } + } +} + +clean.dependsOn cleanTorBinaries diff --git a/bramble-java/build.gradle b/bramble-java/build.gradle index 1b1114862..b33569597 100644 --- a/bramble-java/build.gradle +++ b/bramble-java/build.gradle @@ -33,13 +33,30 @@ dependencies { testApt 'com.google.dagger:dagger-compiler:2.0.2' } -project.afterEvaluate { - copy { - from configurations.tor.collect { zipTree(it) } - into 'src/main/resources' +def torBinariesDir = 'src/main/resources' + +task unpackTorBinaries { + outputs.dir torBinariesDir + doLast { + copy { + from configurations.tor.collect { zipTree(it) } + into torBinariesDir + } } } +tasks.withType(JavaCompile) { + dependsOn unpackTorBinaries +} + +task cleanTorBinaries { + doLast { + delete fileTree(torBinariesDir) { include '*.zip' } + } +} + +clean.dependsOn cleanTorBinaries + tasks.withType(Test) { systemProperty 'java.library.path', 'libs' }