libstdc++ in gcc3.
when defined, USE_GCC_SHLIB ensures that the correct rpath is passed
to the linker, and a full dependency on the compiler package is
registered.
packages which define USE_GCC_SHLIB should not include
mk/gcc.buildlink2.mk (or gcc{,3}/buildlink2.mk) as it is handled
automatically.
Tested on NetBSD-current and Solaris 9.
Caveats
* The preprocessor no longer accepts multi-line string literals.
They were deprecated in 3.0, 3.1, and 3.2.
* The preprocessor no longer supports the -A- switch when appearing
alone. -A- followed by an assertion is still supported.
* Support for all the systems obsoleted in GCC 3.1 has been removed
from GCC 3.3.
* Checking for null format arguments has been decoupled from the rest
of the format checking mechanism. Programs which use the format
attribute may regain this functionality by using the new nonnull
function attribute. Note that all functions for which GCC has a
built-in format attribute, an appropriate built-in nonnull attribute
is also applied.
* The DWARF (version 1) debugging format has been deprecated and will
be removed in a future version of GCC. Version 2 of the DWARF
debugging format will continue to be supported for the foreseeable
future.
* The C and Objective-C compilers no longer accept the "Naming Types"
extension (typedef foo = bar); it was already unavailable in C++.
Code which uses it will need to be changed to use the "typeof"
extension instead: typedef typeof(bar) foo. (We have removed this
extension without a period of deprecation because it has caused
the compiler to crash since version 3.0 and no one noticed until
very recently. Thus we conclude it is not in widespread use.)
* The -traditional C compiler option has been removed. It was
deprecated in 3.1 and 3.2. (Traditional preprocessing remains
available.) The <varargs.h> header, used for writing variadic
functions in traditional C, still exists but will produce an error
message if used.
New Targets and Target Specific Improvements [trimmed for length and
relevance to NetBSD]
* The SPARC, HP-PA, SH4, and x86/pentium ports have been converted
to use the DFA processor pipeline description.
* The following NetBSD configurations for the SuperH processor family
have been added:
o SH3, big-endian, sh-*-netbsdelf*
o SH3, little-endian, shle-*-netbsdelf*
o SH5, SHmedia, big-endian, 32-bit default, sh5-*-netbsd*
o SH5, SHmedia, little-endian, 32-bit default, sh5le-*-netbsd*
o SH5, SHmedia, big-endian, 64-bit default, sh64-*-netbsd*
o SH5, SHmedia, little-endian, 64-bit default, sh64le-*-netbsd*
* The following changes have been made to the IA-32/x86-64 port:
o SSE2 and 3dNOW! intrinsics are now supported.
o Support for thread local storage has been added to the IA-32
and x86-64 ports.
o The x86-64 port has been significantly improved.
The full list of changes can be found at:
http://gcc.gnu.org/gcc-3.3/changes.html
use an old or non-compatible version that may be in the base system.
This makes this package install flawlessly under Linux, and even though it does
not directly address PR pkg/20880 (which I could not reproduce), it covers
similar problems.
The following method overrides "libgcc_link_spec" in the generated specs
file, which gives you a compiler that automatically inserts the correct
rpath argument at link time. This should work for any pkgsrc target
platform, as no platform-specific config overrides it.
Additionally, part of this fix changes the "scrubbed" LDFLAGS by
overriding that in CONFIGURE_ENV, rather than globally. Other changes to
the pkgsrc Makefile (including one I plan to submit for threads support)
may need access to the "real" LDFLAGS, so overriding it wholesale in the
pkg Makefile is Bad.
Bump version to 3.2.2nb2.
Also build shared libs on Linux, from Jeremy C. Reed in PR 20735.
Changes since 3.2.1:
On the following i386-based systems GCC 3.2.1 broke the C ABI wrt.
functions returning structures: Cygwin, FreeBSD (GCC 3.2.1 as shipped with
FreeBSD 5.0 does not have this problem), Interix, a.out-based Linux and
NetBSD, OpenBSD, and Darwin. GCC 3.2.2 reverts this ABI change, and thus
restores ABI-compatibility with previous releases (except GCC 3.2.1) on
these platforms.
Lots of other bug fixes, see http://gcc.gnu.org/gcc-3.2/changes.html.
works around a bug with optimization in gcc-2.95.3 which prevents building
this pkg.
Optimization is still turned on during the build of the final libraries
and compilers.
have it be automatically included by bsd.pkg.mk if USE_PKGINSTALL is set
to "YES". This enforces the requirement that bsd.pkg.install.mk be
included at the end of a package Makefile. Idea suggested by Julio M.
Merino Vidal <jmmv at menta.net>.
Collection, which currently contains front ends for C, C++,
Objective-C, Fortran, Java, and Ada.
For more detail, see
http://gcc.gnu.org/gcc-3.2/
XXX Only tested on NetBSD/i386 -current. Tests on Linux and Solaris
are very encouraged.
XXX buildlink2.mk is not provided, meaning no other packages can
depend on this for now.