diff options
author | Adriaan Moors <adriaan.moors@typesafe.com> | 2013-07-04 19:40:59 -0700 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@typesafe.com> | 2013-07-05 16:00:29 -0700 |
commit | a0a60e709fa8041a482f2389104b8c17443c5526 (patch) | |
tree | bcd1cd247ee37e3d40fd712962fed118447ced58 /src/build | |
parent | 1b0fa91aa3f4d469505e5a1ff5d9cb1db0bdf662 (diff) | |
download | scala-a0a60e709fa8041a482f2389104b8c17443c5526.tar.gz scala-a0a60e709fa8041a482f2389104b8c17443c5526.tar.bz2 scala-a0a60e709fa8041a482f2389104b8c17443c5526.zip |
Add meta-information for dbuild.
The next version of [dbuild](http://typesafehub.github.io/distributed-build/0.5.3/index.html)
will parse `dbuild-meta.json` to determine which jars are produced by a Scala build.
This way we can modularize without changing dbuild itself.
Yes, I know `dbuild-meta.json` should be generated during the build.
However, given the state of our build.xml, I think this is pointless.
My goal is to generate build.xml, dbuild-meta.json and Eclipse projects
from a higher-level description of our build. Baby steps...
Including improvements by @cunei:
- Removing outdated field "uri" from ExtractedBuildMeta
- Changed "partest" to "scala-partest" (the actual jar name)
Diffstat (limited to 'src/build')
-rw-r--r-- | src/build/dbuild-meta-json-gen.scala | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/src/build/dbuild-meta-json-gen.scala b/src/build/dbuild-meta-json-gen.scala new file mode 100644 index 0000000000..42214dd191 --- /dev/null +++ b/src/build/dbuild-meta-json-gen.scala @@ -0,0 +1,63 @@ +// use this script to generate dbuild-meta.json +// make sure the version is specified correctly, +// update the dependency structura and +// check out distributed-build and run `sbt console`: +// TODO: also generate build.xml and eclipse config from a similar data-structure + +import distributed.project.model._ + +val meta = + ExtractedBuildMeta("2.11.0", Seq( + Project("scala-library", "org.scala-lang", + Seq(ProjectRef("scala-library", "org.scala-lang")), + Seq.empty), // TODO: forkjoin + Project("scala-reflect", "org.scala-lang", + Seq(ProjectRef("scala-reflect", "org.scala-lang")), + Seq(ProjectRef("scala-library", "org.scala-lang"))), + Project("scala-compiler", "org.scala-lang", + Seq(ProjectRef("scala-compiler", "org.scala-lang")), + Seq(ProjectRef("scala-reflect", "org.scala-lang"))), // asm + + // Project("scala-repl", "org.scala-lang", + // Seq(ProjectRef("scala-repl", "org.scala-lang")), + // Seq(ProjectRef("scala-compiler", "org.scala-lang"))), // jline + + // Project("scala-interactive", "org.scala-lang", + // Seq(ProjectRef("scala-interactive", "org.scala-lang")), + // Seq(ProjectRef("scala-compiler", "org.scala-lang"), ProjectRef("scaladoc", "org.scala-lang"))), + + Project("scala-swing", "org.scala-lang", + Seq(ProjectRef("scala-swing", "org.scala-lang")), + Seq(ProjectRef("scala-library", "org.scala-lang"))), + + Project("scala-actors", "org.scala-lang", + Seq(ProjectRef("scala-actors", "org.scala-lang")), + Seq(ProjectRef("scala-library", "org.scala-lang"))), + Project("scala-xml", "org.scala-lang", + Seq(ProjectRef("scala-xml", "org.scala-lang")), + Seq(ProjectRef("scala-library", "org.scala-lang"))), + Project("scala-parser-combinators", "org.scala-lang", + Seq(ProjectRef("scala-parser-combinators", "org.scala-lang")), + Seq(ProjectRef("scala-library", "org.scala-lang"))), + + Project("scalacheck", "org.scala-lang", + Seq(ProjectRef("scalacheck", "org.scala-lang")), + Seq(ProjectRef("scala-library", "org.scala-lang"), ProjectRef("scala-actors", "org.scala-lang"), ProjectRef("scala-parser-combinators", "org.scala-lang"))), + + Project("scala-partest", "org.scala-lang", + Seq(ProjectRef("scala-partest", "org.scala-lang")), + Seq(ProjectRef("scala-compiler", "org.scala-lang"), // TODO: refine to scala-repl + ProjectRef("scalap", "org.scala-lang"), ProjectRef("scala-xml", "org.scala-lang"), ProjectRef("scalacheck", "org.scala-lang"))), + + Project("scaladoc", "org.scala-lang", + Seq(ProjectRef("scaladoc", "org.scala-lang")), + Seq(ProjectRef("scala-compiler", "org.scala-lang"),ProjectRef("scala-partest", "org.scala-lang"), ProjectRef("scala-xml", "org.scala-lang"), ProjectRef("scala-parser-combinators", "org.scala-lang"))), + + Project("scalap", "org.scala-lang", + Seq(ProjectRef("scalap", "org.scala-lang")), + Seq(ProjectRef("scala-compiler", "org.scala-lang"))), + + Project("continuations", "org.scala-lang.plugins", Seq(ProjectRef("continuations", "org.scala-lang.plugins")), Seq.empty) + )) + +println(Utils.writeValue(meta)) |