-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathbuild.sbt
88 lines (78 loc) · 2.56 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
lazy val commonSettings = Defaults.coreDefaultSettings ++ Seq(
organization := "org.scaladci",
version := "0.5.6",
scalaVersion := "2.12.2",
crossScalaVersions := Seq("2.11.8", "2.12.2"),
scalacOptions := Seq("-unchecked", "-deprecation", "-feature"),
resolvers ++= Seq(Resolver.sonatypeRepo("releases"), Resolver.sonatypeRepo("snapshots")),
libraryDependencies ++= Seq(
"org.scala-lang" % "scala-reflect" % scalaVersion.value,
"org.specs2" %% "specs2" % "2.4.17" % "test"
),
addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full)
)
lazy val scaladci = Project(
id = "scaladci",
base = file("."),
aggregate = Seq(scaladciCore, scaladciCoretest, scaladciExamples),
settings = commonSettings ++ noPublishSettings ++ Seq(
moduleName := "scaladci-root",
packagedArtifacts := Map.empty
)
)
lazy val scaladciCore = Project(
id = "scaladci-core",
base = file("core"),
settings = commonSettings ++ publishSettings ++ Seq(
moduleName := "scaladci"
)
)
lazy val scaladciCoretest = Project(
id = "scaladci-coretest",
base = file("coretest"),
dependencies = Seq(scaladciCore),
settings = commonSettings ++ noPublishSettings ++ Seq(
packagedArtifacts := Map.empty
)
)
lazy val scaladciExamples = Project(
id = "scaladci-examples",
base = file("examples"),
dependencies = Seq(scaladciCore),
settings = commonSettings ++ noPublishSettings ++ Seq(
packagedArtifacts := Map.empty
)
)
lazy val snapshots = "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots/"
lazy val releases = "Sonatype OSS Staging" at "https://oss.sonatype.org/service/local/staging/deploy/maven2/"
lazy val publishSettings = Seq(
publishMavenStyle := true,
publishTo := (if (isSnapshot.value) Some(snapshots) else Some(releases)),
publishArtifact in Test := false,
pomIncludeRepository := (_ => false),
pomExtra :=
<url>https://github.com/dci/scaladci</url>
<licenses>
<license>
<name>Apache License</name>
<url>http://www.apache.org/licenses/</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>[email protected]:dci/scaladci.git</url>
<connection>scm:git:[email protected]:dci/scaladci.git</connection>
</scm>
<developers>
<developer>
<id>marcgrue</id>
<name>Marc Grue</name>
<url>http://marcgrue.com</url>
</developer>
</developers>
)
lazy val noPublishSettings = Seq(
publish :=(),
publishLocal :=(),
publishArtifact := false
)