-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.sbt
64 lines (59 loc) · 1.71 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
inThisBuild(
List(
scalaVersion := "2.12.20",
organization := "me.ptrdom",
homepage := Some(url("https://github.com/ptrdom/scalajs-vite")),
licenses := List(License.MIT),
developers := List(
Developer(
"ptrdom",
"Domantas Petrauskas",
"dom.petrauskas@gmail.com",
url("http://ptrdom.me/")
)
),
sonatypeCredentialHost := "s01.oss.sonatype.org",
sonatypeRepository := "https://s01.oss.sonatype.org/service/local",
versionScheme := Some("semver-spec")
)
)
lazy val `scalajs-vite` = (project in file("."))
.settings(publish / skip := true)
.aggregate(`sbt-scalajs-vite`, `sbt-web-scalajs-vite`)
lazy val commonSettings = Seq(
scriptedLaunchOpts ++= Seq(
"-Dplugin.version=" + version.value
),
scriptedBufferLog := false
)
lazy val `sbt-scalajs-vite` =
project
.in(file("sbt-scalajs-vite"))
.enablePlugins(SbtPlugin)
.settings(commonSettings)
.settings(
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.17.0")
)
lazy val `sbt-web-scalajs-vite` =
project
.in(file("sbt-web-scalajs-vite"))
.enablePlugins(SbtPlugin)
.settings(commonSettings)
.settings(
addSbtPlugin("com.vmunier" % "sbt-web-scalajs" % "1.1.0"),
scriptedDependencies := {
val () = scriptedDependencies.value
val () = (`sbt-scalajs-vite` / publishLocal).value
}
)
.dependsOn(`sbt-scalajs-vite`)
// workaround for https://github.com/sbt/sbt/issues/7431
TaskKey[Unit]("scriptedSequentialPerModule") := {
Def.taskDyn {
val projects: Seq[ProjectReference] = `scalajs-vite`.aggregate
Def
.sequential(
projects.map(p => Def.taskDyn((p / scripted).toTask("")))
)
}.value
}