blob: ed0d05e43769b0ab39bbef847b43f3e52f41dd38 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
import sbt._
import Keys._
object JNIBuild {
val jdkHome = SettingKey[File]("jdk-home", "Home of JDK.")
val javaClass = SettingKey[String]("jni-class", "Fully qualified name of class containing native declarations.")
val javah = TaskKey[Unit]("javah", "Generate JNI headers.")
val javahTask = javah <<= (javaClass, NativeBuild.sourceDirectory, Keys.classDirectory in Compile) map { (j, src, cp) =>
val cmd = "javah -d " + src.absolutePath + " -classpath " + cp.absolutePath + " " + j
cmd !;
{}
} dependsOn (Keys.compile in Compile)
val defaults: Seq[Setting[_]] = NativeBuild.defaults ++ Seq(
javahTask,
NativeBuild.compile <<= NativeBuild.compile.dependsOn(javah)
)
}
|