Blame openjdk/nashorn/LICENSE

Packit Service 46fadf
The GNU General Public License (GPL)
Packit Service 46fadf
Packit Service 46fadf
Version 2, June 1991
Packit Service 46fadf
Packit Service 46fadf
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
Packit Service 46fadf
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Packit Service 46fadf
Packit Service 46fadf
Everyone is permitted to copy and distribute verbatim copies of this license
Packit Service 46fadf
document, but changing it is not allowed.
Packit Service 46fadf
Packit Service 46fadf
Preamble
Packit Service 46fadf
Packit Service 46fadf
The licenses for most software are designed to take away your freedom to share
Packit Service 46fadf
and change it.  By contrast, the GNU General Public License is intended to
Packit Service 46fadf
guarantee your freedom to share and change free software--to make sure the
Packit Service 46fadf
software is free for all its users.  This General Public License applies to
Packit Service 46fadf
most of the Free Software Foundation's software and to any other program whose
Packit Service 46fadf
authors commit to using it.  (Some other Free Software Foundation software is
Packit Service 46fadf
covered by the GNU Library General Public License instead.) You can apply it to
Packit Service 46fadf
your programs, too.
Packit Service 46fadf
Packit Service 46fadf
When we speak of free software, we are referring to freedom, not price.  Our
Packit Service 46fadf
General Public Licenses are designed to make sure that you have the freedom to
Packit Service 46fadf
distribute copies of free software (and charge for this service if you wish),
Packit Service 46fadf
that you receive source code or can get it if you want it, that you can change
Packit Service 46fadf
the software or use pieces of it in new free programs; and that you know you
Packit Service 46fadf
can do these things.
Packit Service 46fadf
Packit Service 46fadf
To protect your rights, we need to make restrictions that forbid anyone to deny
Packit Service 46fadf
you these rights or to ask you to surrender the rights.  These restrictions
Packit Service 46fadf
translate to certain responsibilities for you if you distribute copies of the
Packit Service 46fadf
software, or if you modify it.
Packit Service 46fadf
Packit Service 46fadf
For example, if you distribute copies of such a program, whether gratis or for
Packit Service 46fadf
a fee, you must give the recipients all the rights that you have.  You must
Packit Service 46fadf
make sure that they, too, receive or can get the source code.  And you must
Packit Service 46fadf
show them these terms so they know their rights.
Packit Service 46fadf
Packit Service 46fadf
We protect your rights with two steps: (1) copyright the software, and (2)
Packit Service 46fadf
offer you this license which gives you legal permission to copy, distribute
Packit Service 46fadf
and/or modify the software.
Packit Service 46fadf
Packit Service 46fadf
Also, for each author's protection and ours, we want to make certain that
Packit Service 46fadf
everyone understands that there is no warranty for this free software.  If the
Packit Service 46fadf
software is modified by someone else and passed on, we want its recipients to
Packit Service 46fadf
know that what they have is not the original, so that any problems introduced
Packit Service 46fadf
by others will not reflect on the original authors' reputations.
Packit Service 46fadf
Packit Service 46fadf
Finally, any free program is threatened constantly by software patents.  We
Packit Service 46fadf
wish to avoid the danger that redistributors of a free program will
Packit Service 46fadf
individually obtain patent licenses, in effect making the program proprietary.
Packit Service 46fadf
To prevent this, we have made it clear that any patent must be licensed for
Packit Service 46fadf
everyone's free use or not licensed at all.
Packit Service 46fadf
Packit Service 46fadf
The precise terms and conditions for copying, distribution and modification
Packit Service 46fadf
follow.
Packit Service 46fadf
Packit Service 46fadf
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
Packit Service 46fadf
Packit Service 46fadf
0. This License applies to any program or other work which contains a notice
Packit Service 46fadf
placed by the copyright holder saying it may be distributed under the terms of
Packit Service 46fadf
this General Public License.  The "Program", below, refers to any such program
Packit Service 46fadf
or work, and a "work based on the Program" means either the Program or any
Packit Service 46fadf
derivative work under copyright law: that is to say, a work containing the
Packit Service 46fadf
Program or a portion of it, either verbatim or with modifications and/or
Packit Service 46fadf
translated into another language.  (Hereinafter, translation is included
Packit Service 46fadf
without limitation in the term "modification".) Each licensee is addressed as
Packit Service 46fadf
"you".
Packit Service 46fadf
Packit Service 46fadf
Activities other than copying, distribution and modification are not covered by
Packit Service 46fadf
this License; they are outside its scope.  The act of running the Program is
Packit Service 46fadf
not restricted, and the output from the Program is covered only if its contents
Packit Service 46fadf
constitute a work based on the Program (independent of having been made by
Packit Service 46fadf
running the Program).  Whether that is true depends on what the Program does.
Packit Service 46fadf
Packit Service 46fadf
1. You may copy and distribute verbatim copies of the Program's source code as
Packit Service 46fadf
you receive it, in any medium, provided that you conspicuously and
Packit Service 46fadf
appropriately publish on each copy an appropriate copyright notice and
Packit Service 46fadf
disclaimer of warranty; keep intact all the notices that refer to this License
Packit Service 46fadf
and to the absence of any warranty; and give any other recipients of the
Packit Service 46fadf
Program a copy of this License along with the Program.
Packit Service 46fadf
Packit Service 46fadf
You may charge a fee for the physical act of transferring a copy, and you may
Packit Service 46fadf
at your option offer warranty protection in exchange for a fee.
Packit Service 46fadf
Packit Service 46fadf
2. You may modify your copy or copies of the Program or any portion of it, thus
Packit Service 46fadf
forming a work based on the Program, and copy and distribute such modifications
Packit Service 46fadf
or work under the terms of Section 1 above, provided that you also meet all of
Packit Service 46fadf
these conditions:
Packit Service 46fadf
Packit Service 46fadf
    a) You must cause the modified files to carry prominent notices stating
Packit Service 46fadf
    that you changed the files and the date of any change.
Packit Service 46fadf
Packit Service 46fadf
    b) You must cause any work that you distribute or publish, that in whole or
Packit Service 46fadf
    in part contains or is derived from the Program or any part thereof, to be
Packit Service 46fadf
    licensed as a whole at no charge to all third parties under the terms of
Packit Service 46fadf
    this License.
Packit Service 46fadf
Packit Service 46fadf
    c) If the modified program normally reads commands interactively when run,
Packit Service 46fadf
    you must cause it, when started running for such interactive use in the
Packit Service 46fadf
    most ordinary way, to print or display an announcement including an
Packit Service 46fadf
    appropriate copyright notice and a notice that there is no warranty (or
Packit Service 46fadf
    else, saying that you provide a warranty) and that users may redistribute
Packit Service 46fadf
    the program under these conditions, and telling the user how to view a copy
Packit Service 46fadf
    of this License.  (Exception: if the Program itself is interactive but does
Packit Service 46fadf
    not normally print such an announcement, your work based on the Program is
Packit Service 46fadf
    not required to print an announcement.)
Packit Service 46fadf
Packit Service 46fadf
These requirements apply to the modified work as a whole.  If identifiable
Packit Service 46fadf
sections of that work are not derived from the Program, and can be reasonably
Packit Service 46fadf
considered independent and separate works in themselves, then this License, and
Packit Service 46fadf
its terms, do not apply to those sections when you distribute them as separate
Packit Service 46fadf
works.  But when you distribute the same sections as part of a whole which is a
Packit Service 46fadf
work based on the Program, the distribution of the whole must be on the terms
Packit Service 46fadf
of this License, whose permissions for other licensees extend to the entire
Packit Service 46fadf
whole, and thus to each and every part regardless of who wrote it.
Packit Service 46fadf
Packit Service 46fadf
Thus, it is not the intent of this section to claim rights or contest your
Packit Service 46fadf
rights to work written entirely by you; rather, the intent is to exercise the
Packit Service 46fadf
right to control the distribution of derivative or collective works based on
Packit Service 46fadf
the Program.
Packit Service 46fadf
Packit Service 46fadf
In addition, mere aggregation of another work not based on the Program with the
Packit Service 46fadf
Program (or with a work based on the Program) on a volume of a storage or
Packit Service 46fadf
distribution medium does not bring the other work under the scope of this
Packit Service 46fadf
License.
Packit Service 46fadf
Packit Service 46fadf
3. You may copy and distribute the Program (or a work based on it, under
Packit Service 46fadf
Section 2) in object code or executable form under the terms of Sections 1 and
Packit Service 46fadf
2 above provided that you also do one of the following:
Packit Service 46fadf
Packit Service 46fadf
    a) Accompany it with the complete corresponding machine-readable source
Packit Service 46fadf
    code, which must be distributed under the terms of Sections 1 and 2 above
Packit Service 46fadf
    on a medium customarily used for software interchange; or,
Packit Service 46fadf
Packit Service 46fadf
    b) Accompany it with a written offer, valid for at least three years, to
Packit Service 46fadf
    give any third party, for a charge no more than your cost of physically
Packit Service 46fadf
    performing source distribution, a complete machine-readable copy of the
Packit Service 46fadf
    corresponding source code, to be distributed under the terms of Sections 1
Packit Service 46fadf
    and 2 above on a medium customarily used for software interchange; or,
Packit Service 46fadf
Packit Service 46fadf
    c) Accompany it with the information you received as to the offer to
Packit Service 46fadf
    distribute corresponding source code.  (This alternative is allowed only
Packit Service 46fadf
    for noncommercial distribution and only if you received the program in
Packit Service 46fadf
    object code or executable form with such an offer, in accord with
Packit Service 46fadf
    Subsection b above.)
Packit Service 46fadf
Packit Service 46fadf
The source code for a work means the preferred form of the work for making
Packit Service 46fadf
modifications to it.  For an executable work, complete source code means all
Packit Service 46fadf
the source code for all modules it contains, plus any associated interface
Packit Service 46fadf
definition files, plus the scripts used to control compilation and installation
Packit Service 46fadf
of the executable.  However, as a special exception, the source code
Packit Service 46fadf
distributed need not include anything that is normally distributed (in either
Packit Service 46fadf
source or binary form) with the major components (compiler, kernel, and so on)
Packit Service 46fadf
of the operating system on which the executable runs, unless that component
Packit Service 46fadf
itself accompanies the executable.
Packit Service 46fadf
Packit Service 46fadf
If distribution of executable or object code is made by offering access to copy
Packit Service 46fadf
from a designated place, then offering equivalent access to copy the source
Packit Service 46fadf
code from the same place counts as distribution of the source code, even though
Packit Service 46fadf
third parties are not compelled to copy the source along with the object code.
Packit Service 46fadf
Packit Service 46fadf
4. You may not copy, modify, sublicense, or distribute the Program except as
Packit Service 46fadf
expressly provided under this License.  Any attempt otherwise to copy, modify,
Packit Service 46fadf
sublicense or distribute the Program is void, and will automatically terminate
Packit Service 46fadf
your rights under this License.  However, parties who have received copies, or
Packit Service 46fadf
rights, from you under this License will not have their licenses terminated so
Packit Service 46fadf
long as such parties remain in full compliance.
Packit Service 46fadf
Packit Service 46fadf
5. You are not required to accept this License, since you have not signed it.
Packit Service 46fadf
However, nothing else grants you permission to modify or distribute the Program
Packit Service 46fadf
or its derivative works.  These actions are prohibited by law if you do not
Packit Service 46fadf
accept this License.  Therefore, by modifying or distributing the Program (or
Packit Service 46fadf
any work based on the Program), you indicate your acceptance of this License to
Packit Service 46fadf
do so, and all its terms and conditions for copying, distributing or modifying
Packit Service 46fadf
the Program or works based on it.
Packit Service 46fadf
Packit Service 46fadf
6. Each time you redistribute the Program (or any work based on the Program),
Packit Service 46fadf
the recipient automatically receives a license from the original licensor to
Packit Service 46fadf
copy, distribute or modify the Program subject to these terms and conditions.
Packit Service 46fadf
You may not impose any further restrictions on the recipients' exercise of the
Packit Service 46fadf
rights granted herein.  You are not responsible for enforcing compliance by
Packit Service 46fadf
third parties to this License.
Packit Service 46fadf
Packit Service 46fadf
7. If, as a consequence of a court judgment or allegation of patent
Packit Service 46fadf
infringement or for any other reason (not limited to patent issues), conditions
Packit Service 46fadf
are imposed on you (whether by court order, agreement or otherwise) that
Packit Service 46fadf
contradict the conditions of this License, they do not excuse you from the
Packit Service 46fadf
conditions of this License.  If you cannot distribute so as to satisfy
Packit Service 46fadf
simultaneously your obligations under this License and any other pertinent
Packit Service 46fadf
obligations, then as a consequence you may not distribute the Program at all.
Packit Service 46fadf
For example, if a patent license would not permit royalty-free redistribution
Packit Service 46fadf
of the Program by all those who receive copies directly or indirectly through
Packit Service 46fadf
you, then the only way you could satisfy both it and this License would be to
Packit Service 46fadf
refrain entirely from distribution of the Program.
Packit Service 46fadf
Packit Service 46fadf
If any portion of this section is held invalid or unenforceable under any
Packit Service 46fadf
particular circumstance, the balance of the section is intended to apply and
Packit Service 46fadf
the section as a whole is intended to apply in other circumstances.
Packit Service 46fadf
Packit Service 46fadf
It is not the purpose of this section to induce you to infringe any patents or
Packit Service 46fadf
other property right claims or to contest validity of any such claims; this
Packit Service 46fadf
section has the sole purpose of protecting the integrity of the free software
Packit Service 46fadf
distribution system, which is implemented by public license practices.  Many
Packit Service 46fadf
people have made generous contributions to the wide range of software
Packit Service 46fadf
distributed through that system in reliance on consistent application of that
Packit Service 46fadf
system; it is up to the author/donor to decide if he or she is willing to
Packit Service 46fadf
distribute software through any other system and a licensee cannot impose that
Packit Service 46fadf
choice.
Packit Service 46fadf
Packit Service 46fadf
This section is intended to make thoroughly clear what is believed to be a
Packit Service 46fadf
consequence of the rest of this License.
Packit Service 46fadf
Packit Service 46fadf
8. If the distribution and/or use of the Program is restricted in certain
Packit Service 46fadf
countries either by patents or by copyrighted interfaces, the original
Packit Service 46fadf
copyright holder who places the Program under this License may add an explicit
Packit Service 46fadf
geographical distribution limitation excluding those countries, so that
Packit Service 46fadf
distribution is permitted only in or among countries not thus excluded.  In
Packit Service 46fadf
such case, this License incorporates the limitation as if written in the body
Packit Service 46fadf
of this License.
Packit Service 46fadf
Packit Service 46fadf
9. The Free Software Foundation may publish revised and/or new versions of the
Packit Service 46fadf
General Public License from time to time.  Such new versions will be similar in
Packit Service 46fadf
spirit to the present version, but may differ in detail to address new problems
Packit Service 46fadf
or concerns.
Packit Service 46fadf
Packit Service 46fadf
Each version is given a distinguishing version number.  If the Program
Packit Service 46fadf
specifies a version number of this License which applies to it and "any later
Packit Service 46fadf
version", you have the option of following the terms and conditions either of
Packit Service 46fadf
that version or of any later version published by the Free Software Foundation.
Packit Service 46fadf
If the Program does not specify a version number of this License, you may
Packit Service 46fadf
choose any version ever published by the Free Software Foundation.
Packit Service 46fadf
Packit Service 46fadf
10. If you wish to incorporate parts of the Program into other free programs
Packit Service 46fadf
whose distribution conditions are different, write to the author to ask for
Packit Service 46fadf
permission.  For software which is copyrighted by the Free Software Foundation,
Packit Service 46fadf
write to the Free Software Foundation; we sometimes make exceptions for this.
Packit Service 46fadf
Our decision will be guided by the two goals of preserving the free status of
Packit Service 46fadf
all derivatives of our free software and of promoting the sharing and reuse of
Packit Service 46fadf
software generally.
Packit Service 46fadf
Packit Service 46fadf
NO WARRANTY
Packit Service 46fadf
Packit Service 46fadf
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
Packit Service 46fadf
THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE
Packit Service 46fadf
STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE
Packit Service 46fadf
PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
Packit Service 46fadf
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
Packit Service 46fadf
FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND
Packit Service 46fadf
PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE,
Packit Service 46fadf
YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
Packit Service 46fadf
Packit Service 46fadf
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
Packit Service 46fadf
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
Packit Service 46fadf
PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
Packit Service 46fadf
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
Packit Service 46fadf
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
Packit Service 46fadf
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
Packit Service 46fadf
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
Packit Service 46fadf
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Packit Service 46fadf
Packit Service 46fadf
END OF TERMS AND CONDITIONS
Packit Service 46fadf
Packit Service 46fadf
How to Apply These Terms to Your New Programs
Packit Service 46fadf
Packit Service 46fadf
If you develop a new program, and you want it to be of the greatest possible
Packit Service 46fadf
use to the public, the best way to achieve this is to make it free software
Packit Service 46fadf
which everyone can redistribute and change under these terms.
Packit Service 46fadf
Packit Service 46fadf
To do so, attach the following notices to the program.  It is safest to attach
Packit Service 46fadf
them to the start of each source file to most effectively convey the exclusion
Packit Service 46fadf
of warranty; and each file should have at least the "copyright" line and a
Packit Service 46fadf
pointer to where the full notice is found.
Packit Service 46fadf
Packit Service 46fadf
    One line to give the program's name and a brief idea of what it does.
Packit Service 46fadf
Packit Service 46fadf
    Copyright (C) <year> <name of author>
Packit Service 46fadf
Packit Service 46fadf
    This program is free software; you can redistribute it and/or modify it
Packit Service 46fadf
    under the terms of the GNU General Public License as published by the Free
Packit Service 46fadf
    Software Foundation; either version 2 of the License, or (at your option)
Packit Service 46fadf
    any later version.
Packit Service 46fadf
Packit Service 46fadf
    This program is distributed in the hope that it will be useful, but WITHOUT
Packit Service 46fadf
    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
Packit Service 46fadf
    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
Packit Service 46fadf
    more details.
Packit Service 46fadf
Packit Service 46fadf
    You should have received a copy of the GNU General Public License along
Packit Service 46fadf
    with this program; if not, write to the Free Software Foundation, Inc.,
Packit Service 46fadf
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Packit Service 46fadf
Packit Service 46fadf
Also add information on how to contact you by electronic and paper mail.
Packit Service 46fadf
Packit Service 46fadf
If the program is interactive, make it output a short notice like this when it
Packit Service 46fadf
starts in an interactive mode:
Packit Service 46fadf
Packit Service 46fadf
    Gnomovision version 69, Copyright (C) year name of author Gnomovision comes
Packit Service 46fadf
    with ABSOLUTELY NO WARRANTY; for details type 'show w'.  This is free
Packit Service 46fadf
    software, and you are welcome to redistribute it under certain conditions;
Packit Service 46fadf
    type 'show c' for details.
Packit Service 46fadf
Packit Service 46fadf
The hypothetical commands 'show w' and 'show c' should show the appropriate
Packit Service 46fadf
parts of the General Public License.  Of course, the commands you use may be
Packit Service 46fadf
called something other than 'show w' and 'show c'; they could even be
Packit Service 46fadf
mouse-clicks or menu items--whatever suits your program.
Packit Service 46fadf
Packit Service 46fadf
You should also get your employer (if you work as a programmer) or your school,
Packit Service 46fadf
if any, to sign a "copyright disclaimer" for the program, if necessary.  Here
Packit Service 46fadf
is a sample; alter the names:
Packit Service 46fadf
Packit Service 46fadf
    Yoyodyne, Inc., hereby disclaims all copyright interest in the program
Packit Service 46fadf
    'Gnomovision' (which makes passes at compilers) written by James Hacker.
Packit Service 46fadf
Packit Service 46fadf
    signature of Ty Coon, 1 April 1989
Packit Service 46fadf
Packit Service 46fadf
    Ty Coon, President of Vice
Packit Service 46fadf
Packit Service 46fadf
This General Public License does not permit incorporating your program into
Packit Service 46fadf
proprietary programs.  If your program is a subroutine library, you may
Packit Service 46fadf
consider it more useful to permit linking proprietary applications with the
Packit Service 46fadf
library.  If this is what you want to do, use the GNU Library General Public
Packit Service 46fadf
License instead of this License.
Packit Service 46fadf
Packit Service 46fadf
Packit Service 46fadf
"CLASSPATH" EXCEPTION TO THE GPL
Packit Service 46fadf
Packit Service 46fadf
Certain source files distributed by Oracle America and/or its affiliates are
Packit Service 46fadf
subject to the following clarification and special exception to the GPL, but
Packit Service 46fadf
only where Oracle has expressly included in the particular source file's header
Packit Service 46fadf
the words "Oracle designates this particular file as subject to the "Classpath"
Packit Service 46fadf
exception as provided by Oracle in the LICENSE file that accompanied this code."
Packit Service 46fadf
Packit Service 46fadf
    Linking this library statically or dynamically with other modules is making
Packit Service 46fadf
    a combined work based on this library.  Thus, the terms and conditions of
Packit Service 46fadf
    the GNU General Public License cover the whole combination.
Packit Service 46fadf
Packit Service 46fadf
    As a special exception, the copyright holders of this library give you
Packit Service 46fadf
    permission to link this library with independent modules to produce an
Packit Service 46fadf
    executable, regardless of the license terms of these independent modules,
Packit Service 46fadf
    and to copy and distribute the resulting executable under terms of your
Packit Service 46fadf
    choice, provided that you also meet, for each linked independent module,
Packit Service 46fadf
    the terms and conditions of the license of that module.  An independent
Packit Service 46fadf
    module is a module which is not derived from or based on this library.  If
Packit Service 46fadf
    you modify this library, you may extend this exception to your version of
Packit Service 46fadf
    the library, but you are not obligated to do so.  If you do not wish to do
Packit Service 46fadf
    so, delete this exception statement from your version.