summaryrefslogtreecommitdiff
path: root/build.sbt
diff options
context:
space:
mode:
authorJim Lawson2016-12-19 10:20:48 -0800
committerGitHub2016-12-19 10:20:48 -0800
commitdd4650d29ed18ec610ad7561f4e9c990ba887a3d (patch)
tree333fe66fba7ea7337fa1f6ffe1ec905cd2f724f3 /build.sbt
parent207da69768dac464a719a7c712f6977371f7c5f4 (diff)
parent0233f704e83d380b1fe8311dfffa3f44f74b506b (diff)
Merge branch 'master' into exceptionfix
Diffstat (limited to 'build.sbt')
-rw-r--r--build.sbt31
1 files changed, 16 insertions, 15 deletions
diff --git a/build.sbt b/build.sbt
index 2ce1f523..90004d2d 100644
--- a/build.sbt
+++ b/build.sbt
@@ -13,17 +13,28 @@ lazy val customUnidocSettings = unidocSettings ++ Seq (
target in unidoc in ScalaUnidoc := crossTarget.value / "api"
)
+val defaultVersions = Map("firrtl" -> "1.1-SNAPSHOT")
+
lazy val commonSettings = Seq (
organization := "edu.berkeley.cs",
version := "3.1-SNAPSHOT",
git.remoteRepo := "git@github.com:ucb-bar/chisel3.git",
autoAPIMappings := true,
scalaVersion := "2.11.7",
- scalacOptions := Seq("-deprecation", "-feature")
+ scalacOptions := Seq("-deprecation", "-feature"),
+ // Since we want to examine the classpath to determine if a dependency on firrtl is required,
+ // this has to be a Task setting.
+ // Fortunately, allDependencies is a Task Setting, so we can modify that.
+ allDependencies := {
+ allDependencies.value ++ Seq("firrtl").collect {
+ // If we have an unmanaged jar file on the classpath, assume we're to use that,
+ case dep: String if !(unmanagedClasspath in Compile).value.toString.contains(s"$dep.jar") =>
+ // otherwise let sbt fetch the appropriate version.
+ "edu.berkeley.cs" %% dep % sys.props.getOrElse(dep + "Version", defaultVersions(dep))
+ }
+ }
)
-val defaultVersions = Map("firrtl" -> "1.1-SNAPSHOT")
-
lazy val chiselSettings = Seq (
name := "chisel3",
@@ -72,18 +83,6 @@ lazy val chiselSettings = Seq (
"com.github.scopt" %% "scopt" % "3.4.0"
),
- // Since we want to examine the classpath to determine if a dependency on firrtl is required,
- // this has to be a Task setting.
- // Fortunately, allDependencies is a Task Setting, so we can modify that.
- allDependencies := {
- allDependencies.value ++ Seq("firrtl").collect {
- // If we have an unmanaged jar file on the classpath, assume we're to use that,
- case dep: String if !(unmanagedClasspath in Compile).value.toString.contains(s"$dep.jar") =>
- // otherwise let sbt fetch the appropriate version.
- "edu.berkeley.cs" %% dep % sys.props.getOrElse(dep + "Version", defaultVersions(dep))
- }
- },
-
// Tests from other projects may still run concurrently.
parallelExecution in Test := true,
@@ -117,6 +116,7 @@ lazy val chisel = (project in file(".")).
// We should really be using name.value, but currently, the package is "Chisel" (uppercase first letter)
buildInfoPackage := /* name.value */ "chisel3",
buildInfoOptions += BuildInfoOption.BuildTime,
+ buildInfoUsePackageAsPath := true,
buildInfoKeys := Seq[BuildInfoKey](buildInfoPackage, version, scalaVersion, sbtVersion)
).
settings(commonSettings: _*).
@@ -126,6 +126,7 @@ lazy val chisel = (project in file(".")).
dependsOn(coreMacros % "compile-internal;test-internal").
dependsOn(chiselFrontend % "compile-internal;test-internal").
settings(
+ scalacOptions in Test ++= Seq("-language:reflectiveCalls"),
aggregate in doc := false,
// Include macro classes, resources, and sources main JAR.
mappings in (Compile, packageBin) <++= mappings in (coreMacros, Compile, packageBin),