Racket is distributed under the MIT license and the Apache version 2.0
license, at your option. However, the Racket runtime system includes
components distributed under other licenses. In short:

  * The traditional Racket runtime system includes code distributed
    under the GNU Lesser General Public License, version 3. This
    runtime system is built from code in racket/src/racket.

  * The Racket on Chez Scheme runtime system embeds Chez Scheme, which
    is distributed under the Apache version 2.0 license. This runtime
    system is built from code in racket/src/cs.

Except for Windows executables that are created with the "embed DLLs"
option, the runtime system remains separate as a shared library or
additional executable, which means that it is dynamically linked and
can be replaced with a modified variant by users.

See the file LICENSE-LGPL.txt for the full text of the GNU
Lesser General Public License.

See the file LICENSE-APACHE.txt for the full text of the
Apache version 2.0 license.

See the file LICENSE-MIT.txt for the full text of the
MIT license.

Additionally, the default mode of building Racket will install other
packages, which are distributed under their own license. In the
default mode, all of those packages are distributed under the licenses
listed above.

There may also be other licenses for code within this repository with
which you must comply. Some of them are listed below.

The following are used in all Racket executables:

* mbed TLS. Code from mbed TLS can be found in
  rktio/rktio_sha2.c. mbed TLS is licensed under the Apache
  v2.0 License.

The following are used only in the traditional Racket executable:

* libscheme. Code from libscheme can be found in
  racket. See the file LICENSE-libscheme.txt

* GNU Lightning. Code from GNU Lightning can be found in
  racket/src. GNU Lightning is distributed under the GNU
  Lesser General Public License version 3.

* GMP. Code from GMP can be found in racket/src. The
  version of GMP used is distributed under the GNU Lesser General
  Public License version 3.

* The Boehm Collector. Code for this package can be found in
  racket/gc. See the file racket/gc/README.QUICK
  for license information.

* zlib. Code translated from earlier versions of zlib can be found in
  racket/racket/collects/file/{gzip,gunzip}.rkt. Zlib is distributed
  under a liberal license, see http://zlib.net/.

* libffi. Code from libffi can be found in foreign/libffi.
  See foreign/libffi/LICENSE.

* libunwind. Code from libunwind can be found in
  unwind.

* random.c. Code from random.c from FreeBSD 2.2 found in
  random.inc.

* install. Code from install can be found in lt/install-sh
  and is distributed under the MIT license.

* MemoryModule. Code from MemoryModule can be found in
  start/MemoryModule.c. MemoryModule is distributed under
  the MPL v2.0.
