GCC, the GNU Compiler Collection, supports a number of languages.
This port installs the C, C++, and Fortran front ends as gcc5, g++5,
and gfortran5, respectively.
WWW: https://gcc.gnu.org
Gerald Pfeifer <gerald@FreeBSD.org>
===> The following configuration options are available for gcc5-devel-5.4.1.s20171003:
BOOTSTRAP=on: Build using a full bootstrap
===> Use 'make config' to modify these settings
Now that GCC 5.5 has been released and the GCC 5 branch closed, remove
lang/gcc5-devel which used to track snapshots from that branch.
lang/gcc5 is still is available as a direct replacement (and will be
for years).
Update to the 20170926 snapshot of GCC 5.4.1.
The patches to gcc/auto-profile.c and gcc/graphite-isl-ast-to-gimple.c
that were part of files/patch-libc++ have now been backported upstream
into this snapshot (in similar form) and thus can (and need to) be
removed.
Graphite loop optimizations are an experimental feature of GCC, disabled
by default (and guarded by the GRAPHITE option).
Now that we have both GCC 6 and GCC 7 in the tree and GCC 5 is going end
of live upstream soon, remove Graphite support from the GCC 5-related
ports. Anyone using Graphite is better served by the newer versions of
GCC.
Update to the 20170919 snapshot of GCC 5.4.1.
Like with lang/gcc5, now that the default version of GCC in the tree is
GCC 6, remove Java support (incl. the JAVA option) from this port after
we disabled this by default with r442910 three months ago already.
Update to the 20170627 snapshot of GCC 5.4.1.
Adjust JAVA_USES to require python (also at run time), not just
python:build.
And, most importantly, remove headers being created by GCC's
fixincludes machinery from the installation / packaging to avoid
breakage when FreeBSD's headers are changing afterwards. Several
fellow committers have strongly indicated that our headers do not
need the kind of fixing (or "fixing") that GCC performs.
Update to the 20170613 snapshot of GCC 5.4.1.
When we set STAGE1_CXXFLAGS / CXXFLAGS in MAKE_FLAGS for arm platforms,
do so incrementally (with += instead of =). [1]
Discussed with: andreast [1]
Update to the 20170606 snapshot of GCC 5.4.1.
No longer default to building GCJ/libgcj on any platform, that is,
option JAVA no longer is the default anywhere. lang/gcc5 retains
this for the time beingand until the default version of GCC has
switched to GCC 6, at which point lang/gcc6 (and lang/gcc6-devel)
shall remain be the last port providing that.
Adjust WWW reference in pkg-descr to https and avoid a trailing slash.
Remove CONFLICT with lang/gcc (which now pulls in lang/gcc5 by default).
Instead add mutual CONFLICTS between lang/gcc5 and lang/gcc5-devel which
we actually missed.
Update to the 20170418 snapshot of GCC 5.4.1.
Properly sort PKGNAMESUFFIX and DISTNAME.
Remove info/gcc%%SUFFIX%%/dir from pkg-plist after it has been
commented out for 30 months.
Make defining both PORTVERSION and DISTVERSION a DEV_ERROR.
There are two cases:
- The upstream versionning is compatible with our versionning, or using
DISTVERSION's magic leads to a compatible PORTVERSION, use
DISTVERSION. If it is possible to use DISTVERSIONPREFIX and
DISTVERSIONSUFFIX to make it compatible, use them.
- The upstream versionning is not compatible with our versionning, and
DISTVERSION's magic does not lead to a correct PORTVERSION, then set
PORTVERSION to the equivalent of our versionning, and set DISTNAME.
It is possible to use a third variable where you store upstream's
version and use it to compute PORTVERSION and/or DISTNAME, like the
dns/bind9* ports do.
Sponsored by: Absolight
Update lang/gcc and hence the default version of GCC in the Ports
Collection (requested by USE_GCC=yes and various USES=compiler
invocations) from GCC 4.9.4 to GCC 5.4.
files/patch-arm-support and files/patch-gcc_system.h have become
obsolete. New patches files/patch-arm-unwind-cxx-support and
files/patch-libc++ help support arm targets and new libc++ in base.
ONLY_FOR_ARCHS now also includes arm.
A new option GRAPHITE_DESC, off by default for now, adds support for
Graphite loop optimizations.
Finally, conflicts with other lang/gcc* ports are adjusted suitably.
(Only the first 15 lines of the commit message are shown above )
Update to the 20170328 snapshot of GCC 5.4.1.
This adds a man page for gcov-dump5 (introduced recently) and also
one for gcov-tool5 (which we have had for a while).
Update to the 20170321 snapshot of GCC 5.4.1.
This brings a new little utility program gcov-dump6 to dump code
coverage data (unfortunately without a man page or documentation).
Update to the 20170207 snapshot of GCC 5.4.1.
Remove files/patch-unwind-ia64.h: we have not been supporting ia64
with this release series, i.e., ONLY_FOR_ARCHS does not include ia64.
The output of tools like awk, date, sort, tr,... depends on the current
locale set by the user. Add LANG=C and LC_ALL=C at the beginning of
bsd.port.mk and export them so all commands are executed with the C locale.
LC_ALL=C overrides all other LC_* variables. LANG is used by setlocale(3)
as default value for LC_* variables, so normally it isn't used when LC_ALL
is set, but there's code out there that looks at LANG directly so it's safer
to set it as well. The only commands not captured by this are !=
assignments before any inclusion of bsd.port.*mk.
Introduce USE_LOCALE=<locale> that adds LANG=<locale> and LC_ALL=<locale> to
CONFIGURE_ENV and MAKE_ENV so upstream build systems can be executed with a
different locale (e.g. USE_LOCALE=en_US.UTF-8).
PR: 215882
Exp-run by: antoine
Approved by: portmgr (antoine)
Update to the 20160816 snapshot of GCC 5.4.1.
GCC uses an AWK script to generate source code that helps process
command-line options. According to POSIX, string comparisons (and
hence sorting) are to be performed based on the locale's collating
order. Alas GNU AWK only does so in POSIX mode, whereas starting
with FreeBSD 11 we do so by default, running into a bug (or false
assumption) with that script used by GCC.
Setting MAKE_ARGS such that AWK is always invoked in the C locale
works around this bug. [1]
PR: 210122 [1], 211742 [1]
Submitted by: jkim [1]
Update to the 20160426 development snapshot of GCC 5.3.1.
Only override CONFIGURE_TARGET for amd64 which is x86-64/x86_64 for the
rest of the world including GNU and GCC. For all other architectures
it already defaults to the value we were setting.