forked from chapel-lang/chapel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
LICENSE
75 lines (64 loc) · 3.85 KB
/
LICENSE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
==========================
Chapel License Information
==========================
The Chapel implementation is composed of two categories of code:
1) code that was specifically developed for, or contributed to, the
Chapel project. This code comprises the core of the Chapel
implementation: the compiler, runtime, and standard/internal
modules. Code in this category is made available under the
Apache v2.0 license, which can be found in 'LICENSE.chapel' in
this directory or at http://www.apache.org/licenses/LICENSE-2.0.html.
2) code from other open-source projects that we package and
redistribute for the convenience of end-users. Packages in this
category are made available under the terms of their original
licenses, respectively.
Packages in this second category are redistributed in the etc/ and
third-party/ directories. The following table provides a summary
of the packages, their uses, and their licenses.
directory/package use license
----------------- ------------------------------------------- -------
etc/
emacs emacs-based syntax coloring GPL
vim vim-based syntax coloring VIM
third-party/
creoleparser used to generate Chapel documentation MIT/new BSD
dlmalloc alternative memory allocator option public domain
dygraphs Javascript graph generator and display MIT
gasnet portable communication library BSD-like
gmp optional multi-precision math library L-GPL
hwloc portable NUMA compute node utilities new BSD
llvm CLANG C parsing/optional back-end compiler U of I/NCSA
massivethreads alternative lightweight tasking option 2-clause BSD
qthread alternative lightweight tasking option new BSD
re2 optional regular expression parsing library new BSD
tcmalloc alternative memory allocator new BSD
txt2man creation of man pages (developer-only) GPL
utf8-decoder used for runtime UTF-8 string decoding MIT
For a more complete introduction to these packages and their
licensing terms, refer to etc/README, third-party/README, and the
README and license files in the subdirectories listed above.
Note that most of these packages are not used by Chapel unless
specifically requested. The following table summarizes the
conditions under which each package is used:
directory/package when used
----------------- ----------------------------------------------------
etc/
emacs only used if a user modifies their emacs environment
vim only used if a user modifies their vim environment
third-party/
creoleparser only used when running 'chpldoc'/'chpl --docs'
dlmalloc only used when CHPL_MEM is 'dlmalloc'
dygraphs only used to make and display performance graphs
gasnet only used when CHPL_COMM is 'gasnet'
gmp only used when CHPL_GMP is 'gmp'
hwloc only used when CHPL_HWLOC is 'hwloc'
llvm only used when CHPL_LLVM is 'llvm'
massivethreads only used when CHPL_TASKS is 'massivethreads'
qthread only used when CHPL_TASKS is 'qthreads'
re2 only used when CHPL_REGEXP is 're2'
tcmalloc only used when CHPL_MEM is 'tcmalloc'
txt2man only used by developers to create the Chapel man page
utf8-decoder bundled into the Chapel runtime to decode UTF-8 strings
For packages that are only used based on a CHPL_* setting, note
that this setting may either be explicitly or implicitly set. To
verify your settings, run $CHPL_HOME/util/printchplenv.