Go to file
dubochet 2511ab5dbc 1. Moved the Scalac Ant task to a new location and updated it thorougly.
2. Modified the build script to use the new optional Ant tasks that have been added to 'lib/', which is much cleaner.

git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@5410 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
2005-12-23 18:17:24 +00:00
docs Removed old Scalac code in sources and various other obsolete elements. 2005-12-18 18:33:03 +00:00
src 1. Moved the Scalac Ant task to a new location and updated it thorougly. 2005-12-23 18:17:24 +00:00
test 1. Modified the way paths are used in NSC. Removed as much magic as possible from 'util.ClassPath' and 'nsc.Settings'. 2005-12-21 20:31:59 +00:00
README Switching to the new build system and to the new build system. This is a MAJOR commit, so be careful when updating. 2005-12-19 13:49:03 +00:00
build.xml 1. Moved the Scalac Ant task to a new location and updated it thorougly. 2005-12-23 18:17:24 +00:00

README

================================================================================
                              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 ...