-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuild.sbt
More file actions
81 lines (73 loc) · 2.81 KB
/
Copy pathbuild.sbt
File metadata and controls
81 lines (73 loc) · 2.81 KB
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
import xerial.sbt.Sonatype.sonatypeCentralHost
ThisBuild / licenses := Seq("ISC" -> url("https://opensource.org/licenses/ISC"))
ThisBuild / versionScheme := Some("semver-spec")
ThisBuild / evictionErrorLevel := Level.Warn
ThisBuild / scalaVersion := "3.8.1"
ThisBuild / organization := "io.github.edadma"
ThisBuild / organizationName := "edadma"
ThisBuild / organizationHomepage := Some(url("https://github.com/edadma"))
ThisBuild / version := "0.0.3"
ThisBuild / sonatypeCredentialHost := sonatypeCentralHost
ThisBuild / publishConfiguration := publishConfiguration.value.withOverwrite(true).withChecksums(Vector.empty)
ThisBuild / resolvers += Resolver.mavenLocal
ThisBuild / resolvers += Resolver.sonatypeCentralSnapshots
ThisBuild / resolvers += Resolver.sonatypeCentralRepo("releases")
ThisBuild / sonatypeProfileName := "io.github.edadma"
ThisBuild / scmInfo := Some(
ScmInfo(
url("https://github.com/edadma/bptree"),
"scm:git@github.com:edadma/bptree.git",
),
)
ThisBuild / developers := List(
Developer(
id = "edadma",
name = "Edward A. Maxedon, Sr.",
email = "edadma@gmail.com",
url = url("https://github.com/edadma"),
),
)
ThisBuild / homepage := Some(url("https://github.com/edadma/bptree"))
ThisBuild / description := "A general-purpose B+ tree library for Scala"
ThisBuild / publishTo := sonatypePublishToBundle.value
lazy val bptree = crossProject(JSPlatform, JVMPlatform, NativePlatform)
.in(file("."))
.settings(
name := "bptree",
scalacOptions ++=
Seq(
"-deprecation",
"-feature",
"-unchecked",
"-language:postfixOps",
"-language:implicitConversions",
"-language:existentials",
"-language:dynamics",
),
libraryDependencies += "io.github.edadma" %%% "cross_platform" % "0.1.3",
libraryDependencies += "org.scalatest" %%% "scalatest" % "3.2.19" % "test",
publishMavenStyle := true,
Test / publishArtifact := false,
)
.jvmSettings(
libraryDependencies += "org.scala-js" %% "scalajs-stubs" % "1.1.0" % "provided",
)
.nativeSettings(
libraryDependencies += "org.scala-js" %% "scalajs-stubs" % "1.1.0" % "provided",
)
.jsSettings(
jsEnv := new org.scalajs.jsenv.nodejs.NodeJSEnv(),
scalaJSLinkerConfig ~= { _.withModuleKind(ModuleKind.ESModule) },
scalaJSLinkerConfig ~= { _.withSourceMap(false) },
Test / scalaJSUseMainModuleInitializer := false,
Test / scalaJSUseTestModuleInitializer := true,
scalaJSUseMainModuleInitializer := true,
)
lazy val root = project
.in(file("."))
.aggregate(bptree.js, bptree.jvm, bptree.native)
.settings(
name := "bptree",
publish / skip := true,
publishLocal / skip := true,
)