forked from DFASDL/dfasdl-core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.sbt
104 lines (93 loc) · 3.06 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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
// *****************************************************************************
// Projects
// *****************************************************************************
import sbtfilter.Plugin.FilterKeys._
lazy val dfasdlCore =
project
.in(file("."))
.enablePlugins(AsciidoctorPlugin, GitBranchPrompt, GitVersioning, GhpagesPlugin)
.settings(settings)
.settings(filterSettings)
.settings(
name := "dfasdl-core",
includeFilter in (Compile, filterResources) ~= { f =>
f || ("*.props" | "*.conf" | "*.properties" | "*.xml" | "*.xsd")
},
(packageBin in Compile) := ((packageBin in Compile) dependsOn (filterResources in Compile)).value
)
// *****************************************************************************
// Library dependencies
// *****************************************************************************
lazy val library =
new {
object Version {
val scalaCheck = "1.13.5"
val scalaTest = "3.0.4"
}
val scalaCheck = "org.scalacheck" %% "scalacheck" % Version.scalaCheck
val scalaTest = "org.scalatest" %% "scalatest" % Version.scalaTest
}
// *****************************************************************************
// Settings
// *****************************************************************************
lazy val settings =
commonSettings ++
documentationSettings ++
gitSettings ++
publishSettings
lazy val commonSettings =
Seq(
scalaVersion in ThisBuild := "2.12.3",
crossScalaVersions := Seq("2.12.3", "2.11.11"),
organization := "org.dfasdl",
organizationName := "Wegtam GmbH",
startYear := Option(2014),
licenses += ("MPL-2.0", url("https://www.mozilla.org/en-US/MPL/2.0/")),
scalacOptions ++= Seq(
"-deprecation",
"-encoding", "UTF-8",
"-feature",
"-language:_",
"-target:jvm-1.8",
"-unchecked",
"-Xfatal-warnings",
"-Xfuture",
"-Xlint",
"-Ydelambdafy:method",
"-Yno-adapted-args",
"-Ywarn-numeric-widen",
"-Ywarn-unused-import",
"-Ywarn-value-discard"
),
unmanagedSourceDirectories.in(Compile) := Seq(scalaSource.in(Compile).value),
unmanagedSourceDirectories.in(Test) := Seq(scalaSource.in(Test).value)
)
lazy val documentationSettings =
Seq(
sourceDirectory in Asciidoctor := baseDirectory.value / "doc",
ghpagesNoJekyll := true,
git.remoteRepo := "[email protected]:DFASDL/dfasdl-core.git"
)
lazy val gitSettings =
Seq(
git.useGitDescribe := true
)
lazy val publishSettings =
Seq(
bintrayOrganization := Option("wegtam"),
bintrayPackage := "dfasdl-core",
bintrayReleaseOnPublish in ThisBuild := false,
bintrayRepository := "dfasdl",
developers += Developer(
"wegtam",
"Wegtam GmbH",
url("https://www.wegtam.com")
),
homepage := Option(url("https://github.com/DFASDL/dfasdl-core")),
pomIncludeRepository := (_ => false),
scmInfo := Option(ScmInfo(
url("https://github.com/DFASDL/dfasdl-core"),
"[email protected]:DFASDL/dfasdl-core.git"
))
)