2016-11-29 14:23:11 +01:00
|
|
|
// See LICENSE for license details.
|
|
|
|
organization := "com.sifive"
|
|
|
|
name := "freedom"
|
|
|
|
version := "0.1.0"
|
|
|
|
|
|
|
|
lazy val commonSettings = Seq(
|
2018-03-23 02:10:19 +01:00
|
|
|
scalaVersion := "2.11.12", // This needs to match rocket-chip's scalaVersion
|
2016-11-29 14:23:11 +01:00
|
|
|
scalacOptions ++= Seq(
|
|
|
|
"-deprecation",
|
|
|
|
"-feature",
|
|
|
|
"-unchecked",
|
|
|
|
"-Xfatal-warnings",
|
|
|
|
"-language:reflectiveCalls"
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
// A RootProject (not well-documented) tells sbt to treat the target directory
|
|
|
|
// as its own root project, reading its build settings. If we instead used the
|
|
|
|
// normal `project in file()` declaration, sbt would ignore all of rocket-chip's
|
|
|
|
// build settings, and therefore not understand that it has its own dependencies
|
|
|
|
// on chisel, etc.
|
|
|
|
lazy val rocketChip = RootProject(file("rocket-chip"))
|
|
|
|
|
|
|
|
lazy val sifiveBlocks = (project in file("sifive-blocks")).
|
|
|
|
dependsOn(rocketChip).
|
|
|
|
settings(commonSettings: _*)
|
|
|
|
|
2017-08-19 03:21:04 +02:00
|
|
|
lazy val fpgaShells = (project in file("fpga-shells")).
|
2016-11-29 14:23:11 +01:00
|
|
|
dependsOn(rocketChip, sifiveBlocks).
|
|
|
|
settings(commonSettings: _*)
|
2017-08-19 03:21:04 +02:00
|
|
|
|
|
|
|
lazy val freedomPlatforms = (project in file(".")).
|
|
|
|
dependsOn(rocketChip, sifiveBlocks, fpgaShells).
|
|
|
|
settings(commonSettings: _*)
|