description = """\ Smack for Android. All the required dependencies to run Smack on Android. Usually you want to add additional dependencies to smack-tcp, smack-extensions and smack-experimental.""" ext { } // Note that the test dependencies (junit, …) are inferred from the // sourceSet.test of the core subproject dependencies { // Filter out the optional Smack dependencies from androidProjects androidProjects.findAll { ![':smack-tcp', ':smack-extensions', ':smack-experimental'].contains(it.getPath()) }.each { project -> compile project } } compileJava { options.bootClasspath = androidBootClasspath } // See http://stackoverflow.com/a/2823592/194894 // TODO this doesn't seem to work right now. But on the other hand it // is not really required, just to avoid a javadoc compiler warning javadoc { options.linksOffline "http://developer.android.com/reference", androidJavadocOffline } configure (androidProjects) { task compileAndroid(type: JavaCompile) { source = compileJava.source classpath = compileJava.classpath destinationDir = new File(buildDir, 'android') options.bootClasspath = androidBootClasspath } } test { dependsOn androidProjects*.compileAndroid }