diff options
author | Guillaume Martres <smarter@ubuntu.com> | 2017-02-16 18:58:58 +0100 |
---|---|---|
committer | Guillaume Martres <smarter@ubuntu.com> | 2017-04-13 19:41:44 +0200 |
commit | 476778612e71379cf648693f7d02039301fb5607 (patch) | |
tree | a6d27763253f9de38ba03e155450039c9b6cead5 /docs/docs/contributing/eclipse.md | |
parent | 0fe56ea73e6775a315f54772dc6bfb40815c7c98 (diff) | |
download | dotty-476778612e71379cf648693f7d02039301fb5607.tar.gz dotty-476778612e71379cf648693f7d02039301fb5607.tar.bz2 dotty-476778612e71379cf648693f7d02039301fb5607.zip |
Fix #2184: Hyper Bootstrap! Integrate the backend as a git submodule
The backend lives in the scalac fork at
https://github.com/lampepfl/scala/tree/sharing-backend. Before this
commit, the scala-compiler built from this fork was a dependency of
Scala just to get this backend. This made it much more cumbersome to
test changes to the backend and also forced us to depend on Scala 2.11.5
since that is the version of scalac that the forked backend is based on.
This commit changes this by adding a git submodule in the
`scala-backend` directory that points to the scalac fork. We do not
compile the whole submodule, instead we add the subset of files we need
to the dotty-compiler project in the sbt build. See backend.md for more
information (online at
http://dotty.epfl.ch/docs/contributing/backend.html) once this commit is
merged.
The most important thing to note is that whenever you clone dotty you
should do `git clone --recursive` to also clone the submodule. If you
already have a cloned dotty you'll need to do:
git submodule update --init
You will need to repeat this command anytime you update dotty and the
backend has been updated, otherwise the content of `scala-backend` will
be stale.
Diffstat (limited to 'docs/docs/contributing/eclipse.md')
-rw-r--r-- | docs/docs/contributing/eclipse.md | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/docs/docs/contributing/eclipse.md b/docs/docs/contributing/eclipse.md index a7deab804..fa59a5dc6 100644 --- a/docs/docs/contributing/eclipse.md +++ b/docs/docs/contributing/eclipse.md @@ -5,31 +5,19 @@ title: Building Dotty with Eclipse Build setup ----------- -You may need to redo these steps when the build changes. 1. Run `sbt eclipse` -2. In dotty, go to `Properties > java build path > Libraries`. - Remove the Scala Compiler container (currently 2.11.4) and add as an - external jar the latest compiler version in the Ivy cache. This is - currently: - ``` - .ivy2/cache/me.d-d/scala-compiler/jars/scala-compiler-2.11.5-20160322-171045-e19b30b3cd.jar - ``` - - But that might change in the future. Or, copy the latest scala compiler from - the cache to a stable name and use that as external jar. - -3. It is recommended to change the default output folder (in `Properties > java +2. It is recommended to change the default output folder (in `Properties > java build path > Source`) to `dotty/classes` instead of `dotty/bin` because `dotty/bin` is reserved for shell scripts. If you have `CLASSPATH` defined: -4. Update your classpath to contain any new required external libraries to run +3. Update your classpath to contain any new required external libraries to run `./bin/dotc`, `./bin/dotr` outside of Eclipse. -5. Open the `Run Configurations` tab, and edit the `tests` configuration so +4. Open the `Run Configurations` tab, and edit the `tests` configuration so that it contains a `CLASSPATH` variable which reflects the current `CLASSPATH`. |