summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authormichelou <michelou@epfl.ch>2010-05-17 10:51:05 +0000
committermichelou <michelou@epfl.ch>2010-05-17 10:51:05 +0000
commitb7888a61f8d7efb10a4f6614a86ba4620e724692 (patch)
treebd09ecdfd8726a4e4d828feac242128c71fb51c6 /README
parent54523bc2fc3cd0100e082a3c42b9015398f71171 (diff)
downloadscala-b7888a61f8d7efb10a4f6614a86ba4620e724692.tar.gz
scala-b7888a61f8d7efb10a4f6614a86ba4620e724692.tar.bz2
scala-b7888a61f8d7efb10a4f6614a86ba4620e724692.zip
added another Android example
Diffstat (limited to 'README')
-rw-r--r--README50
1 files changed, 36 insertions, 14 deletions
diff --git a/README b/README
index 9a39a8a8fe..106503399b 100644
--- a/README
+++ b/README
@@ -4,7 +4,7 @@
================================================================================
This document describes the Scala core (core library and compiler) repository
-and how to build it. For information about Scala as a languages, you can visit
+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
@@ -27,9 +27,12 @@ scala/
examples/ Scala source code examples.
lib/ Pre-compiled libraries for the build.
fjbg.jar The Java byte-code generation library.
- scala-compiler.jar The stable reference version (aka 'starr') of the Scala compiler
- scala-library.jar The stable reference version (aka 'starr') of the Scala library.
- scala-library-src.jar A snapshot of the source code which was used to build starr.
+ scala-compiler.jar The stable reference version (aka 'starr')
+ of the Scala compiler
+ scala-library.jar The stable reference version (aka 'starr')
+ of the Scala library.
+ scala-library-src.jar A snapshot of the source code which was used
+ to build starr.
ant/ Support libraries for the build tool.
ant-contrib.jar Provides additional features for Ant
vizant.jar Provides DOT graph generation for Ant
@@ -42,39 +45,58 @@ scala/
swing/ The sources of the Swing library.
test/ The Scala test suite.
-Part IV. Building Scala with SABBUS
+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.
+SABBUS is the name of the Ant build script used to compile Scala. It is mostly
+automated and takes care of managing the dependencies.
LAYERS:
-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:
+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:
-'starr': the stable reference Scala release which is shared by all the developers. It is found in the repository as 'lib/scala-compiler.jar' and 'lib/scala-library.jar'. Any committable source code must be compiled directly by starr to guarantee the bootstrapping of the compiler.
+'starr': the stable reference Scala release which is shared by all the
+developers. It is found in the repository as 'lib/scala-compiler.jar' and
+'lib/scala-library.jar'. Any committable source code must be compiled directly
+by starr to guarantee the bootstrapping of the compiler.
-'locker': the local reference which is compiled by starr and is the work compiler in a typical development cycle. When it has been built once, it is “frozen” in this state. Updating it to fit the current source code must be explicitly required (see below).
+'locker': the local reference which is compiled by starr and is the work
+compiler in a typical development cycle. When it has been built once, it is
+“frozen” in this state. Updating it to fit the current source code must be
+explicitly required (see below).
-'quick': the layer which is incrementally built when testing changes in the compiler or library. This is considered a actual new version when locker is up-to-date in relation to the source code.
+'quick': the layer which is incrementally built when testing changes in the
+compiler or library. This is considered an actual new version when locker is
+up-to-date in relation to the source code.
'strap': a test layer used to check stability of the build.
DEPENDANT CHANGES:
-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.
+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.
Part III. Requirements for SABBUS
--------------------------------------------------------------------------------
-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:
+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:
- A Java runtime environment (JRE) or SDK 1.6 or above.
- Apache Ant version 1.7.0 or above.
-Part IV. Common use-cases
+Part IV. Common use cases
--------------------------------------------------------------------------------
'ant -p'
- Prints out information about the commonly used ant targets. The interested developer can find the rest in the xml files.
+ Prints out information about the commonly used ant targets. The interested
+ developer can find the rest in the XML files.
'ant' or 'ant build'
A quick compilation (to quick) of your changes using the locker compiler.