summaryrefslogtreecommitdiff
path: root/build.sbt
diff options
context:
space:
mode:
Diffstat (limited to 'build.sbt')
-rw-r--r--build.sbt27
1 files changed, 17 insertions, 10 deletions
diff --git a/build.sbt b/build.sbt
index 4ad1cf77..2ce1f523 100644
--- a/build.sbt
+++ b/build.sbt
@@ -18,7 +18,8 @@ lazy val commonSettings = Seq (
version := "3.1-SNAPSHOT",
git.remoteRepo := "git@github.com:ucb-bar/chisel3.git",
autoAPIMappings := true,
- scalaVersion := "2.11.7"
+ scalaVersion := "2.11.7",
+ scalacOptions := Seq("-deprecation", "-feature")
)
val defaultVersions = Map("firrtl" -> "1.1-SNAPSHOT")
@@ -82,7 +83,7 @@ lazy val chiselSettings = Seq (
"edu.berkeley.cs" %% dep % sys.props.getOrElse(dep + "Version", defaultVersions(dep))
}
},
-
+
// Tests from other projects may still run concurrently.
parallelExecution in Test := true,
@@ -97,16 +98,19 @@ lazy val chiselSettings = Seq (
lazy val coreMacros = (project in file("coreMacros")).
settings(commonSettings: _*).
settings(
- libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value
+ libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value,
+ publishArtifact := false
)
lazy val chiselFrontend = (project in file("chiselFrontend")).
settings(commonSettings: _*).
settings(
- libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value
+ libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value,
+ publishArtifact := false
).
dependsOn(coreMacros)
+
lazy val chisel = (project in file(".")).
enablePlugins(BuildInfoPlugin).
settings(
@@ -118,14 +122,17 @@ lazy val chisel = (project in file(".")).
settings(commonSettings: _*).
settings(customUnidocSettings: _*).
settings(chiselSettings: _*).
- dependsOn(coreMacros).
- dependsOn(chiselFrontend).
+ // Prevent separate JARs from being generated for coreMacros and chiselFrontend.
+ dependsOn(coreMacros % "compile-internal;test-internal").
+ dependsOn(chiselFrontend % "compile-internal;test-internal").
settings(
aggregate in doc := false,
- // Include macro classes, resources, and sources main jar.
+ // Include macro classes, resources, and sources main JAR.
mappings in (Compile, packageBin) <++= mappings in (coreMacros, Compile, packageBin),
mappings in (Compile, packageSrc) <++= mappings in (coreMacros, Compile, packageSrc),
mappings in (Compile, packageBin) <++= mappings in (chiselFrontend, Compile, packageBin),
- mappings in (Compile, packageSrc) <++= mappings in (chiselFrontend, Compile, packageSrc)
- ).
- aggregate(coreMacros, chiselFrontend)
+ mappings in (Compile, packageSrc) <++= mappings in (chiselFrontend, Compile, packageSrc),
+ // Export the packaged JAR so projects that depend directly on Chisel project (rather than the
+ // published artifact) also see the stuff in coreMacros and chiselFrontend.
+ exportJars := true
+ )