272 lines
12 KiB
Plaintext
272 lines
12 KiB
Plaintext
The Xtensa C/C++ compiler was updated significantly between version 7 and
|
|
version 8. Because this update is so significant, Tensilica provides a
|
|
compatibility mode for the compiler which, in turn, uses an older version
|
|
of the libraries as well.
|
|
|
|
The new version relies on newer versions of the libraries (and
|
|
hence the licenses those libraries are under changed also--generally to
|
|
more consistent wording.)
|
|
|
|
In light of the above, this document is broken into two basic parts: 1) A
|
|
description of the library licenses when using XCC in default mode, ie,
|
|
the "newer" version. 2) A description of the library licenses when using XCC
|
|
in compatibility mode--ie, when you pass -compat-v7 on the command line.
|
|
|
|
==============
|
|
LIBRARY LICENSES IN DEFAULT MODE
|
|
|
|
Code generated by Tensilica's Xtensa C/C++ (XCC) compiler in default
|
|
mode may depend on the following compiler-specific runtime libraries:
|
|
|
|
* libstdc++v3 -- Standard C++ library, including io streams and the
|
|
headers for the standard template headers
|
|
|
|
* libgcc -- Basic runtime support.
|
|
|
|
-------------
|
|
|
|
LIBGCC
|
|
|
|
This runtime library are derived from GCC and is distributed under
|
|
the GNU General Public License with a special "runtime exception".
|
|
This exception for the version of libgcc that XCC uses by default reads:
|
|
|
|
In addition to the permissions in the GNU General Public License, the
|
|
Free Software Foundation gives you unlimited permission to link the
|
|
compiled version of this file into combinations with other programs,
|
|
and to distribute those combinations without any restriction coming
|
|
from the use of this file. (The General Public License restrictions
|
|
do apply in other respects; for example, they cover modification of
|
|
the file, and distribution when not linked into a combine executable.)
|
|
|
|
All files except unwind-generic.h in the libgcc source tree use this
|
|
license, or one where the typo on "combine" in the last line is fixed
|
|
to "combined". The file unwind-generic.h has a slightly different
|
|
license, but is not used by xt-xcc's libgcc.a.
|
|
|
|
-------------
|
|
|
|
LIBSTDC++
|
|
|
|
Most of the source code files in XCC's version of libstdc++ have a
|
|
runtime exception as follows:
|
|
|
|
As a special exception, you may use this file as part of a free software
|
|
library without restriction. Specifically, if other files instantiate
|
|
templates or use macros or inline functions from this file, or you compile
|
|
this file and link it with other files to produce an executable, this
|
|
file does not by itself cause the resulting executable to be covered by
|
|
the GNU General Public License. This exception does not however
|
|
invalidate any other reasons why the executable file might be covered by
|
|
the GNU General Public License.
|
|
|
|
The library also includes a copy an SGI release of the C++ Standard
|
|
Template Library (STL). The STL files contain code from both SGI and
|
|
HP. The SGI license is:
|
|
|
|
Permission to use, copy, modify, distribute and sell this software and
|
|
its documentation for any purpose is hereby granted without fee,
|
|
provided that the above copyright notice appear in all copies and that
|
|
both that copyright notice and this permission notice appear in
|
|
supporting documentation. Silicon Graphics makes no representations
|
|
about the suitability of this software for any purpose. It is
|
|
provided "as is" without express or implied warranty.
|
|
|
|
The HP license is:
|
|
|
|
Permission to use, copy, modify, distribute and sell this software and
|
|
its documentation for any purpose is hereby granted without fee,
|
|
provided that the above copyright notice appear in all copies and that
|
|
both that copyright notice and this permission notice appear in
|
|
supporting documentation. Hewlett-Packard Company makes no
|
|
representations about the suitability of this software for any
|
|
purpose. It is provided "as is" without express or implied warranty.
|
|
|
|
|
|
==============
|
|
LIBRARY LICENSES IN -compat-v7 MODE
|
|
|
|
Code generated by Tensilica's Xtensa C/C++ (XCC) compiler in compatibility
|
|
mode may depend on the following compiler-specific runtime libraries:
|
|
|
|
* libstdc++ -- Standard C++ library.
|
|
|
|
* libio -- C++ I/O streams.
|
|
|
|
* libgcc -- Basic runtime support.
|
|
|
|
These runtime libraries are derived from GCC and are distributed under
|
|
the GNU General Public License with a special "runtime exception".
|
|
The exact wording of this exception has changed over time, and the
|
|
version used with C++ code is slightly different than the version for
|
|
C code. The latest version of this exception for libgcc is:
|
|
|
|
In addition to the permissions in the GNU General Public License, the
|
|
Free Software Foundation gives you unlimited permission to link the
|
|
compiled version of this file into combinations with other programs,
|
|
and to distribute those combinations without any restriction coming
|
|
from the use of this file. (The General Public License restrictions
|
|
do apply in other respects; for example, they cover modification of
|
|
the file, and distribution when not linked into a combine executable.)
|
|
|
|
The XCC runtime libraries include various wordings for this runtime
|
|
exception, and portions of some libraries are covered by other less
|
|
restrictive licenses. See below for details.
|
|
|
|
-------------
|
|
|
|
LIBSTDC++
|
|
|
|
Most of the source code files in XCC's version of libstdc++ have a
|
|
runtime exception as follows:
|
|
|
|
As a special exception, you may use this file as part of a free software
|
|
library without restriction. Specifically, if other files instantiate
|
|
templates or use macros or inline functions from this file, or you compile
|
|
this file and link it with other files to produce an executable, this
|
|
file does not by itself cause the resulting executable to be covered by
|
|
the GNU General Public License. This exception does not however
|
|
invalidate any other reasons why the executable file might be covered by
|
|
the GNU General Public License.
|
|
|
|
A few of the files have an older version of this text:
|
|
|
|
As a special exception, if you link this library with files compiled
|
|
with a GNU compiler to produce an executable, this does not cause the
|
|
resulting executable to be covered by the GNU General Public License.
|
|
This exception does not however invalidate any other reasons why the
|
|
executable file might be covered by the GNU General Public License.
|
|
|
|
One file (libstdc++/std/complext.cc) includes code owned by AT&T Bell
|
|
Laboratories and Bellcore with the following license:
|
|
|
|
Permission to use, copy, modify, and distribute this software and its
|
|
documentation for any purpose and without fee is hereby granted,
|
|
provided that the above copyright notice appear in all copies and that
|
|
both that the copyright notice and this permission notice and warranty
|
|
disclaimer appear in supporting documentation, and that the names of
|
|
AT&T Bell Laboratories or Bellcore or any of their entities not be
|
|
used in advertising or publicity pertaining to distribution of the
|
|
software without specific, written prior permission.
|
|
|
|
AT&T and Bellcore disclaim all warranties with regard to this
|
|
software, including all implied warranties of merchantability and
|
|
fitness. In no event shall AT&T or Bellcore be liable for any
|
|
special, indirect or consequential damages or any damages whatsoever
|
|
resulting from loss of use, data or profits, whether in an action of
|
|
contract, negligence or other tortious action, arising out of or in
|
|
connection with the use or performance of this software.
|
|
|
|
The library also includes a copy an SGI release of the C++ Standard
|
|
Template Library (STL). The STL files contain code from both SGI and
|
|
HP. The SGI license is:
|
|
|
|
Permission to use, copy, modify, distribute and sell this software and
|
|
its documentation for any purpose is hereby granted without fee,
|
|
provided that the above copyright notice appear in all copies and that
|
|
both that copyright notice and this permission notice appear in
|
|
supporting documentation. Silicon Graphics makes no representations
|
|
about the suitability of this software for any purpose. It is
|
|
provided "as is" without express or implied warranty.
|
|
|
|
The HP license is:
|
|
|
|
Permission to use, copy, modify, distribute and sell this software and
|
|
its documentation for any purpose is hereby granted without fee,
|
|
provided that the above copyright notice appear in all copies and that
|
|
both that copyright notice and this permission notice appear in
|
|
supporting documentation. Hewlett-Packard Company makes no
|
|
representations about the suitability of this software for any
|
|
purpose. It is provided "as is" without express or implied warranty.
|
|
|
|
-------------
|
|
|
|
LIBIO
|
|
|
|
The libio files used with XCC use the older version of the runtime
|
|
exception:
|
|
|
|
As a special exception, if you link this library with files compiled
|
|
with a GNU compiler to produce an executable, this does not cause the
|
|
resulting executable to be covered by the GNU General Public License.
|
|
This exception does not however invalidate any other reasons why the
|
|
executable file might be covered by the GNU General Public License.
|
|
|
|
Some code in libio is based on software that was developed by the
|
|
University of California, Berkeley, for the Berkeley Software
|
|
Distribution (BSD-4.4) and bears their copyright:
|
|
|
|
Copyright (c) 1990 Regents of the University of California.
|
|
All rights reserved.
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that the following conditions
|
|
are met:
|
|
1. Redistributions of source code must retain the above copyright
|
|
notice, this list of conditions and the following disclaimer.
|
|
2. Redistributions in binary form must reproduce the above copyright
|
|
notice, this list of conditions and the following disclaimer in the
|
|
documentation and/or other materials provided with the distribution.
|
|
3. [rescinded 22 July 1999]
|
|
4. Neither the name of the University nor the names of its contributors
|
|
may be used to endorse or promote products derived from this software
|
|
without specific prior written permission.
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
|
|
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
|
|
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
SUCH DAMAGE.
|
|
|
|
One file in libio (floatconv.c) is derived from code owned by AT&T
|
|
with the following license:
|
|
|
|
The author of this software is David M. Gay.
|
|
|
|
Copyright (c) 1991 by AT&T.
|
|
|
|
Permission to use, copy, modify, and distribute this software for any
|
|
purpose without fee is hereby granted, provided that this entire notice
|
|
is included in all copies of any software which is or includes a copy
|
|
or modification of this software and in all copies of the supporting
|
|
documentation for such software.
|
|
|
|
THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
|
|
WARRANTY. IN PARTICULAR, NEITHER THE AUTHOR NOR AT&T MAKES ANY
|
|
REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY
|
|
OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
|
|
|
|
-------------
|
|
|
|
LIBGCC
|
|
|
|
Some of the files in libgcc, including associated runtime files (e.g.,
|
|
crti.o), use the latest version of the runtime exception shown
|
|
earlier. Other files use an older version:
|
|
|
|
As a special exception, if you link this library with other files,
|
|
some of which are compiled with GCC, to produce an executable, this
|
|
library does not by itself cause the resulting executable to be
|
|
covered by the GNU General Public License. This exception does not
|
|
however invalidate any other reasons why the executable file might be
|
|
covered by the GNU General Public License.
|
|
|
|
The files in libgcc that are related to C++ runtime support use the
|
|
same version of the runtime exception text as used by most of the
|
|
libstdc++ files:
|
|
|
|
As a special exception, you may use this file as part of a free software
|
|
library without restriction. Specifically, if other files instantiate
|
|
templates or use macros or inline functions from this file, or you compile
|
|
this file and link it with other files to produce an executable, this
|
|
file does not by itself cause the resulting executable to be covered by
|
|
the GNU General Public License. This exception does not however
|
|
invalidate any other reasons why the executable file might be covered by
|
|
the GNU General Public License.
|