A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/magarciaEPFL/scala/tree/dotnetcrosscompiler below:

GitHub - magarciaEPFL/scala at dotnetcrosscompiler

This document describes the Scala core (core library and compiler) repository and how to build it. For information about Scala as a language, you can visit the web site http://www.scala-lang.org/

Part I. The repository layout

Follows the file layout of the Scala repository. Files marked with a † are not part of the repository but are either automatically generated by the build script or user-created if needed. This is not a complete listing.

scala/
 +--build/                    Build products output directory for ant.
 +--build.xml                 The main Ant build script.
 +--dist/                     The destination folder for Scala distributions.
 +--docs/                     Documentation and sample code.
 +--lib/                      Pre-compiled libraries for the build.
 |   +--fjbg.jar              The Java byte-code generation library.
 |   +--scala-compiler.jar    The stable reference ('starr') compiler jar
 |   +--scala-library.jar     The stable reference ('starr') library jar
 |   +--scala-library-src.jar A snapshot of the source used to build starr.
 |   ---ant/                  Support libraries for ant.
 +--pull-binary-libs.sh       Pulls binary artifacts from remote repository.
 +--push-binary-libs.sh       Pushes new binary artifacts and creates sha.
 +--README.rst                The file you are currently reading.
 +--src/                      All the source files of Scala.
 |   +--actors/               The sources of the Actor library.
 |   +--compiler/             The sources of the Scala compiler.
 |   +--library/              The sources of the core Scala library.
 |   ---swing/                The sources of the Swing library.
 +--target/       †           Build products output directory for sbt.
 +--test/                     The Scala test suite.
 ---tools/                    Developer utilities.
Part II. Building Scala with SABBUS

SABBUS is the name of the Ant build script used to compile Scala. It is mostly automated and takes care of managing the dependencies.

In order to guarantee the bootstrapping of the Scala compiler, SABBUS builds Scala in layers. Each layer is a complete compiled Scala compiler and library. A superior layer is always compiled by the layer just below it. Here is a short description of the four layers that SABBUS uses, from bottom to top:

SABBUS compiles, for each layer, the Scala library first and the compiler next. That means that any changes in the library can immediately be used in the compiler without an intermediate build. On the other hand, if building the library requires changes in the compiler, a new locker must be built if bootstrapping is still possible, or a new starr if it is not.

The Scala build system is based on Apache Ant. Most required pre-compiled libraries are part of the repository (in 'lib/'). The following however is assumed to be installed on the build machine:

Part III. Common use-cases

Many of these targets offer a variant which runs with -optimise enabled. Optimized targets include build-opt, test-opt, dist-opt, fastdist-opt, replacestarr-opt, replacelocker-opt, and distpack-opt.

Part IV. Contributing to Scala

If you wish to contribute, you can find all of the necessary information on the official Scala website: www.scala-lang.org.

Specifically, you can subscribe to the Scala mailing lists, read all of the available documentation, and browse the live github repository. You can contact the Scala team by sending us a message on one of the mailing lists, or by using the available contact form.

In detail:

If you are interested in contributing code, we ask you to complete and submit to us the Scala Contributor License Agreement, which allows us to ensure that all code submitted to the project is unencumbered by copyrights or patents. The form is available at: http://www.scala-lang.org/sites/default/files/contributor_agreement.pdf

Thank you!

The Scala Team


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4