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 Racket CS runtime system embeds Chez Scheme, which is
    distributed under the Apache version 2.0 license. This runtime
    system is built from code in cs and ChezScheme.

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

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 Racket BC 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
  bc/src. GNU Lightning is distributed under the GNU
  Lesser General Public License version 3.

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

* zlib. Code translated from earlier versions of zlib can be found in
  ../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.
