63 lines
1.6 KiB
Scala
63 lines
1.6 KiB
Scala
ThisBuild / scalaVersion := "3.5.2"
|
|
ThisBuild / versionScheme := Some("semver-spec")
|
|
|
|
lazy val publishSettings = Seq(
|
|
publishMavenStyle := true,
|
|
publishTo := Some(
|
|
"GitHub Package Registry" at "https://maven.pkg.github.com/davidon-top/sfs"
|
|
),
|
|
credentials += Credentials(
|
|
"GitHub Package Registry",
|
|
"maven.pkg.github.com",
|
|
sys.env("THEHUB_USERNAME"),
|
|
sys.env("THEHUB_TOKEN")
|
|
),
|
|
licenses += ("MIT", url("https://opensource.org/license/MIT")),
|
|
scmInfo := Some(
|
|
ScmInfo(
|
|
url("https://github.com/davidon-top/sfs"),
|
|
"scm:https://github.com/davidon-top/sfs.git"
|
|
)
|
|
),
|
|
organization := "top.davidon.sfs",
|
|
organizationName := "DavidOnTop",
|
|
organizationHomepage := Some(url("https://davidon.top"))
|
|
)
|
|
|
|
lazy val generate = taskKey[Unit]("pre compilation codegen task")
|
|
|
|
generate := DomGenerator.generate()
|
|
|
|
(Compile / compile) := ((Compile / compile) dependsOn generate).value
|
|
|
|
lazy val dom = crossProject(JSPlatform, JVMPlatform)
|
|
.crossType(CrossType.Pure)
|
|
.in(file("./dom"))
|
|
.settings(publishSettings)
|
|
.settings(
|
|
name := "sfs-dom",
|
|
version := "0.1.0",
|
|
libraryDependencies ++= Seq(
|
|
"de.tu-darmstadt.stg" %% "rescala" % "0.35.1"
|
|
)
|
|
)
|
|
.jvmSettings(
|
|
libraryDependencies ++= Seq(
|
|
"org.scala-js" % "scalajs-dom_sjs1_3" % "2.8.0"
|
|
)
|
|
)
|
|
.jsSettings(
|
|
libraryDependencies ++= Seq(
|
|
"org.scala-js" % "scalajs-dom_sjs1_3" % "2.8.0"
|
|
)
|
|
)
|
|
|
|
lazy val sfs = crossProject(JSPlatform, JVMPlatform)
|
|
.crossType(CrossType.Pure)
|
|
.in(file("./sfs"))
|
|
.settings(publishSettings)
|
|
.settings(
|
|
name := "sfs",
|
|
version := "0.1.0"
|
|
)
|
|
.dependsOn(dom)
|