aboutsummaryrefslogtreecommitdiff
path: root/plugin/src/main/scala/ch/jodersky/sbt/jni/plugins/JniLoad.scala
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/src/main/scala/ch/jodersky/sbt/jni/plugins/JniLoad.scala')
-rw-r--r--plugin/src/main/scala/ch/jodersky/sbt/jni/plugins/JniLoad.scala25
1 files changed, 25 insertions, 0 deletions
diff --git a/plugin/src/main/scala/ch/jodersky/sbt/jni/plugins/JniLoad.scala b/plugin/src/main/scala/ch/jodersky/sbt/jni/plugins/JniLoad.scala
new file mode 100644
index 0000000..51d9c7b
--- /dev/null
+++ b/plugin/src/main/scala/ch/jodersky/sbt/jni/plugins/JniLoad.scala
@@ -0,0 +1,25 @@
+package ch.jodersky.sbt.jni
+package plugins
+
+import sbt._
+import sbt.Keys._
+
+object JniLoad extends AutoPlugin {
+
+ override def requires = empty
+ override def trigger = allRequirements
+
+ lazy val settings: Seq[Setting[_]] = Seq(
+ // Macro Paradise plugin and dependencies are needed to expand annotation macros.
+ // Once expanded however, downstream projects don't need these dependencies anymore
+ // (hence the "Provided" configuration).
+ addCompilerPlugin(
+ "org.scalamacros" % "paradise" % ProjectVersion.MacrosParadise cross CrossVersion.full
+ ),
+ libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value % Provided,
+ libraryDependencies += "ch.jodersky" %% "sbt-jni-macros" % ProjectVersion.Macros % Provided
+ )
+
+ override def projectSettings = settings
+
+}