diff options
author | Jakob Odersky <jodersky@gmail.com> | 2013-06-18 19:40:22 +0200 |
---|---|---|
committer | Jakob Odersky <jodersky@gmail.com> | 2013-06-18 19:40:22 +0200 |
commit | 98241aa830bedb006ae041dce661afd57c3d90a8 (patch) | |
tree | 70443e7597aca759733e587220a8323fde89af1f | |
parent | b0c32f5325702dd7f7ef3d5ccc0eb9a2b972cf7a (diff) | |
download | akka-serial-98241aa830bedb006ae041dce661afd57c3d90a8.tar.gz akka-serial-98241aa830bedb006ae041dce661afd57c3d90a8.tar.bz2 akka-serial-98241aa830bedb006ae041dce661afd57c3d90a8.zip |
use sbt-native plugin and restructure build
-rw-r--r-- | project/Build.scala | 34 | ||||
-rw-r--r-- | project/Jni.scala | 2 | ||||
-rw-r--r-- | samples/src/main/scala/com/github/jodersky/flow/example/Main.scala (renamed from example/src/main/scala/com/github/jodersky/flow/example/Main.scala) | 0 | ||||
-rw-r--r-- | samples/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala (renamed from example/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala) | 0 | ||||
-rw-r--r-- | src/main/java/com/github/jodersky/flow/low/NativeSerial.java (renamed from flow-main/src/main/java/com/github/jodersky/flow/low/NativeSerial.java) | 0 | ||||
-rw-r--r-- | src/main/native/flow.c (renamed from flow-native/src/flow.c) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/Framing.scalac (renamed from flow-main/src/main/scala/com/github/jodersky/flow/Framing.scalac) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/Serial.scalac (renamed from flow-main/src/main/scala/com/github/jodersky/flow/Serial.scalac) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/SerialManager.scalac (renamed from flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scalac) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/SerialOperator.scalac (renamed from flow-main/src/main/scala/com/github/jodersky/flow/SerialOperator.scalac) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/exceptions.scala (renamed from flow-main/src/main/scala/com/github/jodersky/flow/exceptions.scala) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/low/NativeLoader.scala (renamed from flow-main/src/main/scala/com/github/jodersky/flow/low/NativeLoader.scala) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/low/Serial.scala (renamed from flow-main/src/main/scala/com/github/jodersky/flow/low/Serial.scala) | 0 | ||||
-rw-r--r-- | src/main/scala/com/github/jodersky/flow/test.sc (renamed from flow-main/src/main/scala/com/github/jodersky/flow/test.sc) | 0 |
14 files changed, 21 insertions, 15 deletions
diff --git a/project/Build.scala b/project/Build.scala index 5b157a7..73f0894 100644 --- a/project/Build.scala +++ b/project/Build.scala @@ -3,26 +3,32 @@ import Keys._ import com.github.jodersky.build.NativeKeys._ import com.github.jodersky.build.NativePlugin._ +import com.github.jodersky.build.NativeDefault import Jni._ object FlowBuild extends Build { val Organization = "com.github.jodersky" val Version = "1.0-SNAPSHOT" val ScalaVersion = "2.10.1" - - lazy val main = Project("flow-main", file("flow-main")).settings( - buildSettings ++ Seq(libraryDependencies ++= Dependencies.all): _* - ) - - lazy val native = NativeProject("flow-native", file("flow-native")).settings((Seq( - javahClasses := Seq("com.github.jodersky.flow.low.NativeSerial"), - includeDirectories in Native += jdkHome.value / "include" / "linux", - nativeSource in Native := baseDirectory.value / "src", - binaryType in Native := SharedLibrary, - binaryName in Native := "flow", - options in Native := Seq("-fPIC", "-O2"), - linkOptions in Native := Seq("-Wl,-soname,libflow.so.1") - ) ++ Jni.defaultSettings): _*).dependsOn(main) + + lazy val main: Project = Project("flow", file("."), settings = + Defaults.defaultSettings ++ + buildSettings ++ + NativeDefault.defaultSettings ++ + Seq( + libraryDependencies ++= Dependencies.all, + javahClasses := Seq("com.github.jodersky.flow.low.NativeSerial"), + includeDirectories in Native += jdkHome.value / "include" / "linux", + binaryType in Native := SharedLibrary, + binaryName in Native := "flow", + options in Native := Seq("-fPIC", "-O2"), + linkOptions in Native := Seq("-Wl,-soname,libflow.so.1"), + resourceGenerators in Compile <+= (resourceManaged in Compile, link in Native) map { (resDir, binary) => + val file = resDir / "native" / sys.props("os.name").toLowerCase / sys.props("os.arch").toLowerCase / binary.getName + IO.copyFile(binary, file) + Seq(file) + } + ) ++ Jni.defaultSettings) lazy val example = Project( id = "flow-example", diff --git a/project/Jni.scala b/project/Jni.scala index 0263786..8aacf3b 100644 --- a/project/Jni.scala +++ b/project/Jni.scala @@ -13,7 +13,7 @@ object Jni { javahHeaderDirectory := (sourceManaged in Native).value / "javah", javah := { - val cp = (fullClasspath in Compile).value.map(_.data.getAbsolutePath).mkString(":") + val cp = (classDirectory in Compile).value for (clazz <- javahClasses.value) { val parts = Seq( "javah", diff --git a/example/src/main/scala/com/github/jodersky/flow/example/Main.scala b/samples/src/main/scala/com/github/jodersky/flow/example/Main.scala index 20fffe2..20fffe2 100644 --- a/example/src/main/scala/com/github/jodersky/flow/example/Main.scala +++ b/samples/src/main/scala/com/github/jodersky/flow/example/Main.scala diff --git a/example/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala b/samples/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala index d228cb9..d228cb9 100644 --- a/example/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala +++ b/samples/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala diff --git a/flow-main/src/main/java/com/github/jodersky/flow/low/NativeSerial.java b/src/main/java/com/github/jodersky/flow/low/NativeSerial.java index 6bdcde5..6bdcde5 100644 --- a/flow-main/src/main/java/com/github/jodersky/flow/low/NativeSerial.java +++ b/src/main/java/com/github/jodersky/flow/low/NativeSerial.java diff --git a/flow-native/src/flow.c b/src/main/native/flow.c index 09ffca6..09ffca6 100644 --- a/flow-native/src/flow.c +++ b/src/main/native/flow.c diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/Framing.scalac b/src/main/scala/com/github/jodersky/flow/Framing.scalac index f8173a7..f8173a7 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/Framing.scalac +++ b/src/main/scala/com/github/jodersky/flow/Framing.scalac diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/Serial.scalac b/src/main/scala/com/github/jodersky/flow/Serial.scalac index 7182425..7182425 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/Serial.scalac +++ b/src/main/scala/com/github/jodersky/flow/Serial.scalac diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scalac b/src/main/scala/com/github/jodersky/flow/SerialManager.scalac index ca3fc6b..ca3fc6b 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scalac +++ b/src/main/scala/com/github/jodersky/flow/SerialManager.scalac diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/SerialOperator.scalac b/src/main/scala/com/github/jodersky/flow/SerialOperator.scalac index 21d2067..21d2067 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/SerialOperator.scalac +++ b/src/main/scala/com/github/jodersky/flow/SerialOperator.scalac diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/exceptions.scala b/src/main/scala/com/github/jodersky/flow/exceptions.scala index c7b2fa1..c7b2fa1 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/exceptions.scala +++ b/src/main/scala/com/github/jodersky/flow/exceptions.scala diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/low/NativeLoader.scala b/src/main/scala/com/github/jodersky/flow/low/NativeLoader.scala index fda82a6..fda82a6 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/low/NativeLoader.scala +++ b/src/main/scala/com/github/jodersky/flow/low/NativeLoader.scala diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/low/Serial.scala b/src/main/scala/com/github/jodersky/flow/low/Serial.scala index e482bf8..e482bf8 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/low/Serial.scala +++ b/src/main/scala/com/github/jodersky/flow/low/Serial.scala diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/test.sc b/src/main/scala/com/github/jodersky/flow/test.sc index 88a2193..88a2193 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/test.sc +++ b/src/main/scala/com/github/jodersky/flow/test.sc |