these older versions of GCC - GCC 4.8, GCC 5, and GCC 6 - which have
been end-of-lifed upstream many moons ago. GCC 8 has been the default
version of GCC in the Ports Collection for a while and as such proven
itself, plus of all versions it is most likely to be present/used.
No functional change, just updated advice to our users.
Fix build of GCC on powerpc64.
While building GCC itself we have to use the built GCC libraries to
configure additional parts of GCC and not the libraires from the host.
Install the built 32-bit libraries. This was not done up to now.
And no longer required GCC 5 to build on powerpc64, making this port a
natural choice of a "base" for newer members of the lang/gcc* family.
PR: 235964, 231804
Submitted by: Piotr Kubaj <pkubaj@anongoth.pl>
patch files/patch-libjava-classpath-scripts-check_jni_methods.sh.in.
Escapes of ordinary characters will be disallowed by regex(3) in the
future. [1]
While here already, factor out a proper USES block in the Makefile. [2]
PR: 233443 [1]
Submitted by: kevans [1]
Reported by: portlint [2]
which caused the build to fail after the update to binutils 2.31 and was
factually incorrect anyways (since the oldest we support is 8548).
PR: 235393
Reported by: jhibbits
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Deprecate this port since GCC 6 has been end-of-lifed upstream and
lang/gcc7 and lang/gcc8 are available as official releases. Do not
mark for expiration yet, though.
After a discussion on the mailing list on moving manpages to
${PREFIX}/share/man for consistency with base where it is
installed in usr/share/man, it appeared the same should happen
to GNU info files which were installed under share in base and
not in ports.
Now texinfo is not in base on any of the supported version of FreeBSD
it is possible to proceed to this move and it is easier to do than
the manpage change.
Other benefit than consistency are less patching: all build tools but
cmake are expecting info files to be under share/info and cmake (patched here)
was having an exception for BSD so the patch makes FreeBSD case less
specific for them
Bump revision of all impacted ports
PR: 232907
exp-run by: antoine
Differential Revision: https://reviews.freebsd.org/D17816
fixes and closes the GCC 6 release branch.
files/patch-armv7-support and files/patch-freebsd-unwind.h made it
upstream in between GCC 6.4 and GCC 6.5, so remove them.
in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which
has now moved from GCC 6 to GCC 7 by default.
This includes ports
- featuring USE_GCC=yes or USE_GCC=any,
- featuring USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and those
- with USES=compiler specifying one of openmp, nestedfct, c11, c++0x,
c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib.
PR: 222542
"ldconfig -m <path>" so the order of ldconfig search directories after
package installation is the same as after a reboot. The original command
simply appends the path to the list of directories while the ldconfig rc.d
script uses "sort -u".
Bump lang/gcc* which are known to install libraries with exactly the same
name so the library loaded at runtime depends on the order of the search
directories.
PR: 228046
Approved by: portmgr (antoine)
recent versions of clang (and used in the context of the Spectre
security issues), but not GCC (which uses different options for the
same) from CFLAGS and CXXFLAGS.
This avoids the build of this port via bootstrap, which is the default
and leverages both the system compiler (clang in most cases) plus a just
built version GCC, to fail due to the latter not knowing -mretpoline.
PR: 228205
Submitted by: rozhuk.im@gmail.com
- Update to 0.19.0
- Use github
- Add ac_cv_prog_TEXI2DVI to avoid building docs for now
devel/isl
- Update to 0.19
- Bump PORTREVISION of all dependencies
using .elif instead of distinct .if sequences, similar to most of the
other lang/gcc* ports by now. (This being the default port we usually
let changes settle elsewhere first.)
current default GCC port:
Make sure what we install is stripped (i.e., debug info is removed).
The straightforward way is setting INSTALL_TARGET to install-strip,
which is supported by the upstream GCC build machinery.
Unfortunately this fails when running as regular user (non-root)
since strip requires write permission to the files in question,
and we install binaries as r-xr-xr-x by default. To work around
that we need to set BINMODE to allow for write access by the user,
something that's common on GNU/Linux (which is why this probably
has not been noticed there). This is not necessary when running
as root.
(A different approach suggested was to set STRIP=true, alas that
leads to many files actually not being stripped. This is due to
GCC using its own script install-sh that in turn uses cp, chmod,
strip,... instead of our own install-* tools in many cases.)
According to tests by sobomax@ and me installs of lang/gcc6 went
down by about a fourth.
Do not bump PORTREVISION since this only changes builds by non-root
users, is not a functional change, and the previous state of using
a bit more storage had been there "forever".
Reported by: Ports QA Framework, miwi, sobomax
Discussed with: tijl, miwi
Tested by: sobomax
Differential Revision: https://reviews.freebsd.org/D10357
that addresses a real-world issue around threading and unwinding as
files/patch-freebsd-unwind.h .
This will become obsolete with the next release of GCC 6, GCC 6.5.
Bump PORTREVISION since this is a functional change.
On the way fix up the format for files/patch-armv7-support . [1]
Reported by: portlint [1]
(for lang/gcc5-devel) for a fair while. This mirrors what we did for the
lang/gcc5-devel port earlier this week.
Also make Python a build-only dependency when building Java
(via JAVA_USES=python:build) which makes the installed port/package
quite a bit more lightweight.
Bump PORTREVISION for those two changes.
some commented (and thus disabled) logic around this on the way.
This brings the active lang/gcc* release-based ports in sync with
their respective lang/gcc*-devel twins.
PR: 221905 [1]
Submitted by: linimon [1]
(via Mk/bsd.default-versions.mk and lang/gcc) which has moved from
GCC 5.4 to GCC 6.4 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang,
c++14-lang, c++0x, c11, or gcc-c++11-lib.
PR: 219275
This now comes as an xz archive, so update USES=tar accordingly.
Also this now includes
files/patch-aarch64-support,
files/patch-libgcc-config-arm-unwind-arm, and
files/patch-x86-64-fix-m16
which andreast@ and me pushed upstream.
On the other hand we gain bin/gcov-dump6 and man pages for gcov-dump6
and gcov-tool6.
Finally, as with lang/gcc5 and lang/gcc6-devel, remove headers being
created by GCC's fixincludes machinery from the installation / packaging
to avoid breakage when FreeBSD's headers are changing afterwards.
specific USE_GCC=5 to be future proof when GCC 6 becomes the default
(since USE_GCC=yes would then pull in lang/gcc6 which we obviously
cannot require to build gcc6 itself nor gcc6-devel). This also helps
users who play with GCC_DEFAULT in Mk/bsd.default-versions.mk.
Reported by: jhibbits
Discussed with: andreast
for arm*-*-freebsd*.
This patch is already pushed upstream to all active gcc branches.
GCC-5, GCC-6, GCC-7 and trunk. The gcc?-devel ports will catch up these bits
with the next update.
Once a new release for gcc6 or gcc5 is done, this patch will be obsolete.
Approved by: gerald@ (maintainer)
lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some
circumstances such as versions of FreeBSD or platforms).
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using using Mk/bsd.octave.mk which in turn has USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang,
c++11-lang, c++0x, c11, or gcc-c++11-lib.
PR: 216707
port.
The same applies here as on the lang/gcc5 port, as soon as GCC releases
a new gcc6, these bits go away. Iow, they are already part of the gcc6-devel
branch.
Approved by: gerald(maintainer)
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)
Omit the definition of DISTVERSION which is only necessary for ports
tracking snapshots of GCC and simplify the definition of GCC_VERSION
(but keep the latter as a variable to align the gcc6-devel and gcc6 ports).
Remove files/patch-unwind-ia64.h since we have not been supporting ia64
with this release series (ONLY_FOR_ARCHS has not been including ia64).
files/patch-armv6-hf-support has been accepted upstream, even
on the GCC 6-branch this release comes from, so remove it.
Backport the following from lang/gcc6-devel:
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]