NetBSD/external/gpl3
mrg b17d1066a7 import GCC 7.4.0. main changes include:
The non-standard C++0x type traits has_trivial_default_constructor,
has_trivial_copy_constructor and has_trivial_copy_assign have been
removed.

On ARM targets (arm*-*-*), a bug introduced in GCC 5 that affects
conformance to the procedure call standard (AAPCS) has been fixed.

Many optimiser improvements

DWARF-5 support.

Many new and enhanced warnings.

Warnings about format strings now underline the pertinent part of
the string, and can offer suggested fixes.

Several new warnings related to buffer overflows and buffer
truncation.

New __builtin_add_overflow_p, __builtin_sub_overflow_p,
__builtin_mul_overflow_p built-ins added that test for overflow.

The C++ front end has experimental support for all of the current
C++17 draft.

The -fverbose-asm option has been expanded to prints comments
showing the source lines that correspond to the assembly.

The gcc and g++ driver programs will now provide suggestions for
misspelled arguments to command-line options.


AArch64 specific:

GCC has been updated to the latest revision of the procedure call
standard (AAPCS64) to provide support for parameter passing when
data types have been over-aligned.

The ARMv8.2-A and ARMv8.3-A architecture are now supported.

ARM specific:

Support for the ARMv5 and ARMv5E architectures has been
deprecated (which have no known implementations).

A new command-line option -mpure-code has been added. It does not
allow constant data to be placed in code sections.

x86 specific:

Support for the AVX-512 4FMAPS, 4VNNIW, VPOPCNTDQ and Software
Guard Extensions (SGX) ISA extensions has been added.

PPC specific:

GCC now diagnoses inline assembly that clobbers register r2.

RISC-V specific:

Support for the RISC-V instruction set has been added.

SH specific:

Support for SH5/SH64 has been removed.

Support for SH2A has been enhanced.
2019-01-19 10:13:58 +00:00
..
autoconf/dist Update supporting files for components which rely on autoconf to allow systems 2017-02-01 09:26:39 +00:00
binutils remove the new 2.31 netbsd mips vectors and use the ones we used before 2018-12-31 20:57:13 +00:00
binutils.old Reapply with fixed condition: 2018-07-13 19:54:13 +00:00
gcc import GCC 7.4.0. main changes include: 2019-01-19 10:13:58 +00:00
gcc.old Descend and build includes even if mkgcccmds=no because we need the header 2019-01-18 17:31:39 +00:00
gdb make savecore for arm64 basically work. 2018-12-27 09:55:27 +00:00
gdb.old Deregister (o)vadvise from gdb & gdb.org: ppc/emul_netbsd 2017-12-19 19:13:30 +00:00
Makefile
README

$NetBSD: README,v 1.1 2010/04/01 14:13:25 reed Exp $

The code within the src/external/gplv3 directories may have serious
legal impacts if you are a company and redistributing or changing
this code (as a company holding patents). We recommend you contact
your lawyer before using it.

Please do not import new GPLv3 projects without Board approval.

--------------------------------------------------------------------

Statement for The NetBSD Foundation's Position on the GPLv3

NetBSD provides source code with the goal for anyone to be able
to use it for whatever they want, as long as they follow the simple
licensing terms. Historically, most of the original code used
Berkeley-style licensing and NetBSD's own code uses a simple
two-clause Berkeley-style license. To summarize: modifications are
allowed, the source code may be redistributed and the binaries (or
executables) may be distributed as long as the copyright and
disclaimer is included.  NetBSD's code may be extended and sold
without sharing back the source code changes.

NetBSD also uses and redistributes source code and binaries from
source code obtained from external third parties. This source code
is segregated by placing it in the src/external and sys/src/external
directories which are categorized per license. Examples of this
include:  ISC BIND, Solaris ZFS, CVS, GNU Binutils, Postfix, X.org
X Windowing System, and other software that are primarily maintained
outside of NetBSD.

In some cases, the third-party software is licensed under terms
that conflict with NetBSD's own goals. For example, the GPLv2 is
a "copyleft" license  -- it requires that anyone who distributes
executable or object code based on the source code, also make the
source code and modifications available to the public.  (NetBSD's
own code doesn't require companies to share their changes.)

The GPLv3 (GNU General Public License Version 3) includes clauses
that may cause additional burdens to developers or companies who
may modify the source code or ship products based on the source
code. The following summarizes some of these issues:

- The license allows the user to circumvent measures preventing
software changes (#3).  This is known as the Tivoization clause.
In addition, this same clause is an anti-DRM, anti-DMCA clause --
as the developer allows the end-user to attempt to circumvent or
break the technological protection measures. Also, any information
or authorization keys required to install or run modified versions
must also be provided (#6).

- The patent clause (#11) says the copyright holders grant a
non-exclusive, worldwide, royalty-free patent license.  You may be
required to extend the royalty-free patent license(s) to all
recipients or future users and developers who use the code.  In
addition, you may not initiate litigation for a patent infringement
(#10).

We recommend companies redistributing GPLv3 licensed code to
consult their lawyer before using it.

It is the intent of the NetBSD project to use as little GPL licensed
software as possible to provide maximum freedom for development
and distribution of NetBSD derived products.