WARNING! Access to this system is limited to authorised users only.
Unauthorised users may be subject to prosecution.
Unauthorised access to this system is a criminal offence under Australian law (Federal Crimes Act 1914 Part VIA)
It is a criminal offence to:
(1) Obtain access to data without authority. -Penalty 2 years imprisonment.
(2) Damage, delete, alter or insert data without authority. -Penalty 10 years imprisonment.
User activity is monitored and recorded. Anyone using this system expressly consents to such monitoring and recording.

build.sbt 1.44 KB
Newer Older
1 2 3 4 5

lazy val genSrc = taskKey[List[File]]("generate sources")

genSrc <<= (sourceGenerators in Compile) { _.join.map(_.flatten.toList) }

6
organization := "org.microvm"
7

8
name := "microvm-refimpl2"
9

10
version := "2.1.0"
11

12
description := "The second reference implementation of Mu, the micro virtual machine"
13

14
licenses := Seq("CC BY-SA 4.0" -> url("https://creativecommons.org/licenses/by-sa/4.0/legalcode"))
15

16
scalaVersion := "2.11.7"
Kunshan Wang's avatar
Kunshan Wang committed
17

18
libraryDependencies ++= Seq(
19 20
    "org.scala-lang" % "scala-reflect" % "2.11.7",
    "org.antlr" % "antlr4" % "4.5.1-1",
21 22 23 24 25 26 27 28
    "com.typesafe.scala-logging" %% "scala-logging" % "3.1.0",
    "ch.qos.logback" % "logback-classic" % "1.1.3",
    "com.github.jnr" % "jnr-ffi" % "2.0.7",
    "com.github.jnr" % "jffi" % "1.2.10",
    "com.github.jnr" % "jnr-posix" % "3.0.23",
    "org.scalatest" %% "scalatest" % "2.2.4" % "test",
    "junit" % "junit" % "4.12" % "test"
)
29

30
testOptions in Test += Tests.Argument("-oF") // print full stack trace when testing
31

32
antlr4Settings
33

34
antlr4PackageName in Antlr4 := Some("uvm.ir.textinput.gen")
35

36 37 38
antlr4GenListener in Antlr4 := false

antlr4GenVisitor in Antlr4 := false
39

Kunshan Wang's avatar
Kunshan Wang committed
40
lazy val makeClasspathFile = taskKey[Unit]("write the run-time classpath to target/jars.txt as colon-separated list")
41

Kunshan Wang's avatar
Kunshan Wang committed
42 43 44 45
makeClasspathFile := {
  val cp = (fullClasspath in Runtime).value.files 

  println("fullClasspath: \n" + cp.mkString("\n"))
46

Kunshan Wang's avatar
Kunshan Wang committed
47
  val cpStr = cp.mkString(":")
48

Kunshan Wang's avatar
Kunshan Wang committed
49
  IO.write(new java.io.File("cbinding/classpath.txt"), cpStr)
50
}