Select Git revision
package.xml
build.sbt 2.42 KiB
import com.simplytyped.Antlr4Plugin.autoImport.antlr4PackageName
import sbt.Keys.{libraryDependencies, scalacOptions, version}
val emfcommonVersion = "2.12.0"
val emfecoreVersion = "2.12.0"
val scrollVersion = "1.8"
val scoptVersion = "3.7.0"
val liftVersion = "3.3.0"
val gsonVersion = "2.8.5"
val syncProvider = ProjectRef(uri("https://git-st.inf.tu-dresden.de/cwerner/role_model_synchronization_provider.git#develop"), "modelsyncprovider")
val rsumProvider = ProjectRef(uri("https://git-st.inf.tu-dresden.de/cwerner/single_underlying_role_model.git#master"), "rsummodel")
val uiProvider = ProjectRef(uri("https://git-st.inf.tu-dresden.de/cwerner/role_ui_provider.git"), "uiprovider")
lazy val generator = (project in file("."))
.settings(
name := "CodeGenerator",
version := "0.1",
scalaVersion := "2.12.6",
libraryDependencies ++= Seq(
"com.github.max-leuthaeuser" %% "scroll" % scrollVersion,
"org.scala-lang" % "scala-reflect" % scalaVersion.value,
"org.scala-lang" % "scala-compiler" % scalaVersion.value,
"org.eclipse.emf" % "org.eclipse.emf.common" % emfcommonVersion,
"org.eclipse.emf" % "org.eclipse.emf.ecore" % emfecoreVersion,
"com.github.scopt" %% "scopt" % scoptVersion,
"net.liftweb" %% "lift-json" % liftVersion,
"com.google.code.gson" % "gson" % gsonVersion
),
scalacOptions ++= Seq(
"-language:implicitConversions"
),
mainClass in assembly := Some("org.rosi_project.model_sync.generator.Generator"),
assemblyMergeStrategy in assembly := {
case "MANIFEST.MF" => MergeStrategy.first
case "plugin.xml" => MergeStrategy.discard
case "plugin.properties" => MergeStrategy.discard
case "generated_package.exsd" => MergeStrategy.discard
case "dynamic_package.exsd" => MergeStrategy.discard
case PathList("schema", ps @ _ *) if ps.lastOption.exists(_.endsWith("generated_package.exsd")) => MergeStrategy.discard
case PathList("schema", ps @ _ *) if ps.lastOption.exists(_.endsWith("dynamic_package.exsd")) => MergeStrategy.discard
case x =>
val oldStrategy = (assemblyMergeStrategy in assembly).value
oldStrategy(x)
},
).dependsOn(
syncProvider,
rsumProvider,
uiProvider
).enablePlugins(Antlr4Plugin)
antlr4PackageName in Antlr4 := Some("org.rosi_project.model_sync.model_join.representation.parser.antlr.generated")
antlr4GenVisitor in Antlr4 := true
antlr4GenListener in Antlr4 := false