-
Notifications
You must be signed in to change notification settings - Fork 6
/
build.sbt
108 lines (95 loc) · 2.46 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
104
105
106
107
108
import Settings.project
inThisBuild(
List(
organization := "org.virtuslab",
homepage := Some(url("https://github.com/VirtusLab/scala-packager")),
licenses := List(
"Apache-2.0" -> url("http://www.apache.org/licenses/LICENSE-2.0")
),
developers := List(
Developer(
"lwronski",
"Łukasz Wroński",
"",
url("https://github.com/lwronski")
),
Developer(
"Gedochao",
"Piotr Chabelski",
url("https://github.com/Gedochao")
),
Developer(
"tgodzik",
"Tomasz Godzik",
url("https://github.com/tgodzik")
)
)
)
)
lazy val coreDependencies = Seq(
libraryDependencies ++= Seq(
Deps.commonsIo,
Deps.jib,
Deps.osLib
)
)
lazy val imageResizerDependencies = Seq(
libraryDependencies ++= Seq(
Deps.image4j,
Deps.thumbnailator
)
)
lazy val testFramework = Seq(
testFrameworks += new TestFramework("munit.Framework")
)
lazy val cliMainClass = Seq(
Compile / mainClass := Some("packager.cli.PackagerCli")
)
lazy val compileOptions: Seq[Setting[_]] = Seq(
scalacOptions ++= Seq("-Xfatal-warnings", "-deprecation")
)
lazy val packagerProjectSettings = Seq(
name := "scala-packager",
scalaVersion := ScalaVersions.scala213,
crossScalaVersions := ScalaVersions.all
)
lazy val imageResizerProjectSettings = Seq(
name := "scala-packager-image-resizer",
scalaVersion := ScalaVersions.scala213,
crossScalaVersions := ScalaVersions.all
)
lazy val cliProjectSettings = Seq(
name := "scala-packager-cli",
scalaVersion := ScalaVersions.scala213,
crossScalaVersions := ScalaVersions.all,
libraryDependencies ++= Seq(Deps.caseApp)
)
lazy val utest: Seq[Setting[_]] = Seq(
libraryDependencies ++= Seq(Deps.munit % Test, Deps.expecty % Test),
testFrameworks += new TestFramework("munit.Framework")
)
lazy val cli = project("cli")
.dependsOn(packager, `image-resizer`)
.settings(
cliProjectSettings,
cliMainClass,
utest,
compileOptions
)
lazy val packager = project("packager")
.settings(
packagerProjectSettings,
coreDependencies,
utest,
compileOptions
)
lazy val `image-resizer` = project("image-resizer")
.dependsOn(packager, packager % "test->test")
.settings(
imageResizerProjectSettings,
imageResizerDependencies,
utest,
compileOptions
)