-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.sbt
57 lines (51 loc) · 1.74 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
// shadow sbt-scalajs' crossProject and CrossType from Scala.js 0.6.x
import sbtcrossproject.CrossPlugin.autoImport.{crossProject, CrossType}
import ReleaseTransformations._
import com.typesafe.sbt.pgp.PgpKeys.publishSigned
enablePlugins(ScalaJSPlugin)
lazy val root = crossProject(JSPlatform, JVMPlatform)
.withoutSuffixFor(JVMPlatform)
.crossType(CrossType.Pure)
.in(file("."))
.settings(
// skip in publish := false,
publishArtifact := true,
publishTo := Some(if (isSnapshot.value) { Opts.resolver.sonatypeSnapshots } else { Opts.resolver.sonatypeStaging }),
)
.settings(
// HACK: these settings do no seem to respond to being in ThisBuild like you would want:
name := Common.name,
releasePublishArtifactsAction := PgpKeys.publishSigned.value,
releaseProcess := Seq[ReleaseStep](
checkSnapshotDependencies,
inquireVersions,
runClean,
runTest,
setReleaseVersion,
commitReleaseVersion,
tagRelease,
//publishArtifacts,
releaseStepCommandAndRemaining("+publishArtifacts"),
releaseStepCommandAndRemaining("makeDocs"),
setNextVersion,
commitNextVersion,
//releaseStepCommand(s"sonatypeReleaseAll ${Common.organization}"),
pushChanges
)
)
.jvmSettings(
EclipseKeys.withSource := true
)
.enablePlugins(SbtOsgi)
.jvmSettings(osgiSettings)
.jvmSettings(
(unmanagedResourceDirectories in Compile) += baseDirectory.value / "../src/main/resources",
OsgiKeys.exportPackage := Common.OSGi.exportPackage,
OsgiKeys.importPackage := Common.OSGi.importPackage,
OsgiKeys.additionalHeaders := Common.OSGi.additionalHeaders
)
.jsSettings(
EclipseKeys.skipProject := true
)
lazy val rootJVM = root.jvm
lazy val rootJS = root.js