| 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' |