aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Odersky <jakob@odersky.com>2016-11-30 21:34:26 -0800
committerGitHub <noreply@github.com>2016-11-30 21:34:26 -0800
commitdade71d25634056a83a461d826d284f4b5258d3f (patch)
tree6748c81905a8474d68bda5d9af7c686943d09bb9
parent5b47d022a8fe5b76b27ad29ff011c4ed94a7526a (diff)
parent29ef6610f74477c77ef6540a839dd49c2f040e05 (diff)
downloadsbt-jni-dade71d25634056a83a461d826d284f4b5258d3f.tar.gz
sbt-jni-dade71d25634056a83a461d826d284f4b5258d3f.tar.bz2
sbt-jni-dade71d25634056a83a461d826d284f4b5258d3f.zip
Merge pull request #18 from pomadchin/feature/deprecation-fix
Minor deprecation warnings fix
-rw-r--r--build.sbt80
-rw-r--r--project/SbtJniBuild.scala87
-rw-r--r--project/Version.scala4
3 files changed, 84 insertions, 87 deletions
diff --git a/build.sbt b/build.sbt
new file mode 100644
index 0000000..2b1271f
--- /dev/null
+++ b/build.sbt
@@ -0,0 +1,80 @@
+import sbt._
+import sbt.Keys._
+import sbt.ScriptedPlugin._
+
+import sbtdoge.CrossPerProjectPlugin
+
+import scalariform.formatter.preferences._
+import com.typesafe.sbt.SbtScalariform
+import com.typesafe.sbt.SbtScalariform.ScalariformKeys
+
+val commonSettings = Seq(
+ organization := "ch.jodersky",
+ licenses := Seq(("BSD New", url("http://opensource.org/licenses/BSD-3-Clause"))),
+ scalacOptions ++= Seq("-deprecation", "-feature"),
+ resolvers += Resolver.sonatypeRepo("releases"),
+ ScalariformKeys.preferences := ScalariformKeys.preferences.value
+ .setPreference(DoubleIndentClassDeclaration, true)
+ .setPreference(DanglingCloseParenthesis, Preserve)
+ .setPreference(MultilineScaladocCommentsStartOnFirstLine, true)
+ .setPreference(PlaceScaladocAsterisksBeneathSecondAsterisk, true)
+)
+
+lazy val root = Project(
+ id = "root",
+ base = file("."),
+ aggregate = Seq(
+ macros, plugin
+ ),
+ settings = commonSettings ++ Seq(
+ publish := {},
+ publishLocal := {},
+ // make sbt-pgp happy
+ publishTo := Some(Resolver.file("Unused transient repository", target.value / "unusedrepo"))
+ ) ++ addCommandAlias("test-plugin", ";+sbt-jni-macros/publishLocal;scripted")
+).enablePlugins(CrossPerProjectPlugin)
+
+lazy val macros = Project(
+ id = "sbt-jni-macros",
+ base = file("macros"),
+ settings = commonSettings ++ Seq(
+ scalaVersion := Version.scala.head,
+ crossScalaVersions := Version.scala,
+ addCompilerPlugin("org.scalamacros" % "paradise" % Version.macrosParadise cross CrossVersion.full),
+ libraryDependencies += "org.typelevel" %% "macro-compat" % "1.1.1",
+ libraryDependencies += "org.scala-lang" % "scala-compiler" % scalaVersion.value % Provided,
+ libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value
+ )
+)
+
+lazy val plugin = Project(
+ id = "sbt-jni",
+ base = file("plugin"),
+ settings = commonSettings ++ scriptedSettings ++ Seq(
+ sbtPlugin := true,
+ publishMavenStyle := false,
+ scalaVersion := "2.10.6",
+ crossScalaVersions := Seq(scalaVersion.value),
+
+ libraryDependencies += "org.ow2.asm" % "asm" % "5.0.4",
+
+ // make project settings available to source
+ sourceGenerators in Compile += Def.task {
+ val src = s"""|/* Generated by sbt */
+ |package ch.jodersky.sbt.jni
+ |
+ |private[jni] object ProjectVersion {
+ | final val MacrosParadise = "${Version.macrosParadise}"
+ | final val Macros = "${version.value}"
+ |}
+ |""".stripMargin
+ val file = sourceManaged.value / "ch" / "jodersky" / "sbt" / "jni" / "ProjectVersion.scala"
+ IO.write(file, src)
+ Seq(file)
+ }.taskValue,
+ scriptedLaunchOpts := Seq(
+ "-Dplugin.version=" + version.value,
+ "-XX:MaxPermSize=256m", "-Xmx2g", "-Xss2m"
+ )
+ )
+)
diff --git a/project/SbtJniBuild.scala b/project/SbtJniBuild.scala
deleted file mode 100644
index c0fd7fb..0000000
--- a/project/SbtJniBuild.scala
+++ /dev/null
@@ -1,87 +0,0 @@
-import sbt._
-import sbt.Keys._
-import sbt.ScriptedPlugin._
-
-import sbtdoge.CrossPerProjectPlugin
-
-import scalariform.formatter.preferences._
-import com.typesafe.sbt.SbtScalariform
-import com.typesafe.sbt.SbtScalariform.ScalariformKeys
-
-object SbtJniBuild extends Build {
-
- val scalaVersions: Seq[String] = List("2.11.8", "2.10.6", "2.12.0")
- val macrosParadiseVersion = "2.1.0"
-
- val commonSettings = Seq(
- organization := "ch.jodersky",
- licenses := Seq(("BSD New", url("http://opensource.org/licenses/BSD-3-Clause"))),
- scalacOptions ++= Seq("-deprecation", "-feature"),
- resolvers += Resolver.sonatypeRepo("releases"),
- ScalariformKeys.preferences := ScalariformKeys.preferences.value
- .setPreference(DoubleIndentClassDeclaration, true)
- .setPreference(DanglingCloseParenthesis, Preserve)
- .setPreference(MultilineScaladocCommentsStartOnFirstLine, true)
- .setPreference(PlaceScaladocAsterisksBeneathSecondAsterisk, true)
- )
-
- lazy val root = Project(
- id = "root",
- base = file("."),
- aggregate = Seq(
- macros, plugin
- ),
- settings = commonSettings ++ Seq(
- publish := {},
- publishLocal := {},
- // make sbt-pgp happy
- publishTo := Some(Resolver.file("Unused transient repository", target.value / "unusedrepo"))
- ) ++ addCommandAlias("test-plugin", ";+sbt-jni-macros/publishLocal;scripted")
- ).enablePlugins(CrossPerProjectPlugin)
-
- lazy val macros = Project(
- id = "sbt-jni-macros",
- base = file("macros"),
- settings = commonSettings ++ Seq(
- scalaVersion := scalaVersions.head,
- crossScalaVersions := scalaVersions,
- addCompilerPlugin("org.scalamacros" % "paradise" % macrosParadiseVersion cross CrossVersion.full),
- libraryDependencies += "org.typelevel" %% "macro-compat" % "1.1.1",
- libraryDependencies += "org.scala-lang" % "scala-compiler" % scalaVersion.value % Provided,
- libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value
- )
- )
-
- lazy val plugin = Project(
- id = "sbt-jni",
- base = file("plugin"),
- settings = commonSettings ++ scriptedSettings ++ Seq(
- sbtPlugin := true,
- publishMavenStyle := false,
- scalaVersion := "2.10.6",
- crossScalaVersions := Seq(scalaVersion.value),
-
- libraryDependencies += "org.ow2.asm" % "asm" % "5.0.4",
-
- // make project settings available to source
- sourceGenerators in Compile += Def.task{
- val src = s"""|/* Generated by sbt */
- |package ch.jodersky.sbt.jni
- |
- |private[jni] object ProjectVersion {
- | final val MacrosParadise = "${macrosParadiseVersion}"
- | final val Macros = "${version.value}"
- |}
- |""".stripMargin
- val file = sourceManaged.value / "ch" / "jodersky" / "sbt" / "jni" / "ProjectVersion.scala"
- IO.write(file, src)
- Seq(file)
- }.taskValue,
- scriptedLaunchOpts := Seq(
- "-Dplugin.version=" + version.value,
- "-XX:MaxPermSize=256m", "-Xmx2g", "-Xss2m"
- )
- )
- )
-
-}
diff --git a/project/Version.scala b/project/Version.scala
new file mode 100644
index 0000000..bc96fa1
--- /dev/null
+++ b/project/Version.scala
@@ -0,0 +1,4 @@
+object Version {
+ val scala: Seq[String] = List("2.11.8", "2.10.6", "2.12.0")
+ val macrosParadise = "2.1.0"
+} \ No newline at end of file