apply plugin: 'java'
apply plugin: 'cpp'
sourceSets {
stub {
java.srcDirs = [
'src/stub/java'
]
}
}
// this is the "Unbundled Conscrypt jar"
sourceSets.main {
java.srcDirs = [
'src/main/java',
'src/compat/java',
"${project.buildDir}/gen",
]
compileClasspath += sourceSets.stub.output
}
compileJava.options.encoding = 'UTF-8'
compileJava.options.compilerArgs += ['-Xmaxwarns', '9999999']
dependencies {
compile getAndroidPrebuilt('9')
compile files("${project.buildDir}/gen") {
builtBy 'gen_constants'
}
}
model {
components {
genconst(NativeExecutableSpec) {
sources {
cpp {
source {
srcDir "src/gen/native"
}
exportedHeaders {
srcDirs "../openssl/include", "../boringssl/include"
}
}
}
}
}
}
task gen_constants(type:Exec) {
File genDir = new File("${project.buildDir}", "gen")
genDir.mkdirs()
workingDir new File("${project.buildDir}")
executable 'binaries/genconstExecutable/genconst'
standardOutput = new FileOutputStream(new File(genDir, "NativeConstants.java"))
}
gen_constants.dependsOn 'genconstExecutable'