summaryrefslogblamecommitdiff
path: root/README
blob: 837d5170ae319d7f038e0140c3beca63b7b07f20 (plain) (tree)


























































                                                                                                                                                                                                  
================================================================================
                              THE SCALA REPOSITRY
                           Structure and build system
================================================================================

Part I. The repository layout
--------------------------------------------------------------------------------                            

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

scala/
      build/ †                Temporary staging area for build products.
      build.excludes †        An optional build configuration file.
      build.properties †      An optional build configuration file.
      build.xml               The main Ant build script.
      dist/ †                 The destination folder of Scala distributions.
      docs/                   Documentation of Scala. More in its own module.
           development/       Developer documentation.
           examples/          Scala example files.
           man/               UNIX manual files.
      lib/                    Pre-compiled libraries for the build.
          fjbg.jar            The Java byte-code generation library.
          jaco.jar            The JaCo Java compiler.
          msil.jar            The CLR byte-code generation library.
          scala-compiler.jar  The last stable version of the Scala compiler.
          scala-library.jar   The last stable version of the Scala library.
          scala.dll           The Scala library for Windows.
      README                  The file you are currently reading.
      sandbox/ †              A folder to test code etc.
      src/                    All the source files of Scala.
          compiler/           The sources of the Scala compiler.
          exec/               The sources of the executable wrapper-scripts.
          library/            The sources of the Scala library.
      test/                   The Scala test suite.

Any change to this structure requires a modification of the 'build.xml' file.



Part II. Building Scala
--------------------------------------------------------------------------------

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 SDK 1.4 or above (1.5 not supported).
  - Apache Ant version 1.6.2 or above.

More to come ...

Part III. Creating distributions
--------------------------------------------------------------------------------

More to come ...

Part IV. Contributing to Scala
--------------------------------------------------------------------------------                            

More to come ...