notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Port details
gcc9 GNU Compiler Collection 9
9.4.0 lang on this many watch lists=4 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout 9.4.0Version of this port present on the latest quarterly branch.
Maintainer: gerald@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2019-06-01 18:06:26
Last Update: 2021-06-09 05:38:36
Commit Hash: 19dfb88
People watching this port, also watch:: binutils, pkg, glib, libinotify, py37-pycparser
License: GPLv3 GPLv3RLE
Description:
SVNWeb : git : Homepage
pkg-plist: as obtained via: make generate-plist
Expand this list (41 items)
Collapse this list.
  1. @ldconfig
  2. /usr/local/share/licenses/gcc9-9.4.0/catalog.mk
  3. /usr/local/share/licenses/gcc9-9.4.0/LICENSE
  4. /usr/local/share/licenses/gcc9-9.4.0/GPLv3
  5. /usr/local/share/licenses/gcc9-9.4.0/GPLv3RLE
  6. bin/x86_64-portbld-freebsd12.2-c++9
  7. bin/x86_64-portbld-freebsd12.2-g++9
  8. bin/x86_64-portbld-freebsd12.2-gcc9
  9. bin/x86_64-portbld-freebsd12.2-gcc-9.4.0
  10. bin/x86_64-portbld-freebsd12.2-gcc-ar9
  11. bin/x86_64-portbld-freebsd12.2-gcc-nm9
  12. bin/x86_64-portbld-freebsd12.2-gcc-ranlib9
  13. bin/x86_64-portbld-freebsd12.2-gfortran9
  14. bin/c++9
  15. bin/cpp9
  16. bin/g++9
  17. bin/gcc9
  18. bin/gcc-ar9
  19. bin/gcc-nm9
  20. bin/gcc-ranlib9
  21. bin/gcov9
  22. bin/gcov-dump9
  23. bin/gcov-tool9
  24. bin/gfortran9
  25. man/man1/cpp9.1.gz
  26. man/man1/g++9.1.gz
  27. man/man1/gcc9.1.gz
  28. man/man1/gcov9.1.gz
  29. man/man1/gcov-dump9.1.gz
  30. man/man1/gcov-tool9.1.gz
  31. man/man1/gfortran9.1.gz
  32. share/gcc-9.4.0/python/libstdcxx/__init__.py
  33. share/gcc-9.4.0/python/libstdcxx/v6/__init__.py
  34. share/gcc-9.4.0/python/libstdcxx/v6/printers.py
  35. share/gcc-9.4.0/python/libstdcxx/v6/xmethods.py
  36. @postexec if type ccache-update-links >/dev/null 2>&1; then ccache-update-links -v; fi
  37. @postunexec if type ccache-update-links >/dev/null 2>&1; then ccache-update-links -v; fi
  38. @comment Insert PLIST.lib here
  39. @owner
  40. @group
  41. @mode
Collapse this list.
Dependency lines:
  • gcc9>0:lang/gcc9
Conflicts:
CONFLICTS:
  • gcc9-devel-9.*
Conflicts Matches:
There are no Conflicts Matches for this port. This is usually an error.
To install the port: cd /usr/ports/lang/gcc9/ && make install clean
To add the package, run one of these commands:
  • pkg install lang/gcc9
  • pkg install gcc9
PKGNAME: gcc9
Flavors: there is no flavor information for this port.
ONLY_FOR_ARCHS: aarch64 amd64 arm armv6 armv7 i386 powerpc powerpc64 sparc64
distinfo:
Packages (timestamps in pop-ups are UTC):
gcc9
ABIlatestquarterly
FreeBSD:11:aarch64-9.3.0_1
FreeBSD:11:amd649.4.09.4.0
FreeBSD:11:armv6-9.3.0_1
FreeBSD:11:i3869.4.09.4.0
FreeBSD:11:mips--
FreeBSD:11:mips64--
FreeBSD:12:aarch64-9.4.0
FreeBSD:12:amd649.4.09.4.0
FreeBSD:12:armv6-9.3.0_1
FreeBSD:12:armv7-9.3.0_1
FreeBSD:12:i3869.4.09.4.0
FreeBSD:12:mips--
FreeBSD:12:mips64--
FreeBSD:12:powerpc64-9.3.0_3
FreeBSD:13:aarch649.3.0_19.4.0
FreeBSD:13:amd649.4.09.4.0
FreeBSD:13:armv69.3.0_1-
FreeBSD:13:armv79.3.0_19.3.0_3
FreeBSD:13:i3869.4.09.4.0
FreeBSD:13:mips--
FreeBSD:13:mips64--
FreeBSD:13:powerpc649.3.0_19.4.0
FreeBSD:14:aarch649.4.0-
FreeBSD:14:amd649.4.0-
FreeBSD:14:armv6--
FreeBSD:14:armv79.3.0_3-
FreeBSD:14:i3869.4.0-
FreeBSD:14:mips--
FreeBSD:14:mips64--
FreeBSD:14:powerpc649.3.0_3-
 

Dependencies
NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. as : devel/binutils
  2. gmake>=4.3 : devel/gmake
  3. makeinfo : print/texinfo
  4. as : devel/binutils
  5. perl5>=5.32.r0<5.33 : lang/perl5.32
Runtime dependencies:
  1. as : devel/binutils
  2. indexinfo : print/indexinfo
Library dependencies:
  1. libgmp.so : math/gmp
  2. libmpfr.so : math/mpfr
  3. libmpc.so : math/mpc
  4. libiconv.so : converters/libiconv
This port is required by:
for Build

Deleted ports which required this port:

Expand this list of 38 deleted ports
  1. biology/t_coffee*
  2. cad/elmerfem*
  3. devel/cx_Freeze*
  4. emulators/catapult*
  5. graphics/caffe*
  6. graphics/makehuman*
  7. irc/ircservices*
  8. lang/cint*
  9. lang/hugs*
  10. lang/icon*
  11. lang/julia06*
  12. lang/julia07*
  13. lang/julia10*
  14. lang/julia11*
  15. lang/modula3*
  16. lang/spidermonkey68*
  17. math/dynare*
  18. math/libtsnnls*
  19. math/octave-forge-tisean*
  20. math/py-igakit*
  21. math/py-pysparse*
  22. math/py-slepc4py*
  23. math/slepc*
  24. math/superlu_mt*
  25. math/x12arima*
  26. net/mediatomb*
  27. net/openmpi2*
  28. net/opensips*
  29. science/atom*
  30. science/coot*
  31. science/dlpoly-classic*
  32. science/esys-particle*
  33. science/fleur*
  34. science/lm*
  35. science/meep*
  36. science/openmx*
  37. science/psychopy*
  38. www/palemoon*
  39. Collapse this list of deleted ports.
for Run

Deleted ports which required this port:

Expand this list of 38 deleted ports
  1. biology/t_coffee*
  2. cad/elmerfem*
  3. devel/cx_Freeze*
  4. emulators/catapult*
  5. graphics/caffe*
  6. graphics/makehuman*
  7. irc/ircservices*
  8. lang/cint*
  9. lang/hugs*
  10. lang/icon*
  11. lang/julia06*
  12. lang/julia07*
  13. lang/julia10*
  14. lang/julia11*
  15. lang/modula3*
  16. lang/spidermonkey68*
  17. math/dynare*
  18. math/libtsnnls*
  19. math/octave-forge-tisean*
  20. math/py-igakit*
  21. math/py-pysparse*
  22. math/py-slepc4py*
  23. math/slepc*
  24. math/superlu_mt*
  25. math/x12arima*
  26. net/mediatomb*
  27. net/openmpi2*
  28. net/opensips*
  29. science/atom*
  30. science/coot*
  31. science/dlpoly-classic*
  32. science/esys-particle*
  33. science/fleur*
  34. science/lm*
  35. science/meep*
  36. science/openmx*
  37. science/psychopy*
  38. www/palemoon*
  39. Collapse this list of deleted ports.
* - deleted ports are only shown under the This port is required by section. It was harder to do for the Required section. Perhaps later...

Configuration Options:
Options name:

USES:

pkg-message:
If installing:
Master Sites:
Expand this list (18 items)
Collapse this list.
  1. ftp://ftp.funet.fi/pub/mirrors/sourceware.org/pub/gcc/releases/gcc-9.4.0/
  2. ftp://ftp.gwdg.de/pub/misc/gcc/releases/gcc-9.4.0/
  3. ftp://ftp.irisa.fr/pub/mirrors/gcc.gnu.org/gcc/releases/gcc-9.4.0/
  4. ftp://ftp.lip6.fr/pub/gcc/releases/gcc-9.4.0/
  5. ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-9.4.0/
  6. ftp://ftp.mpi-sb.mpg.de/pub/gnu/mirror/gcc.gnu.org/pub/gcc/releases/gcc-9.4.0/
  7. ftp://ftp.nluug.nl/mirror/languages/gcc/releases/gcc-9.4.0/
  8. ftp://ftp.ntua.gr/pub/gnu/gcc/releases/gcc-9.4.0/
  9. ftp://ftp.uvsq.fr/pub/gcc/releases/gcc-9.4.0/
  10. ftp://gcc.gnu.org/pub/gcc/releases/gcc-9.4.0/
  11. http://gcc-uk.internet.bs/releases/gcc-9.4.0/
  12. http://gcc.cybermirror.org/releases/gcc-9.4.0/
  13. http://gcc.fyxm.net/releases/gcc-9.4.0/
  14. http://gcc.parentingamerica.com/releases/gcc-9.4.0/
  15. http://robotlab.itk.ppke.hu/gcc/releases/gcc-9.4.0/
  16. http://www.netgull.com/gcc/releases/gcc-9.4.0/
  17. https://ftp-stud.hs-esslingen.de/pub/Mirrors/sourceware.org/gcc/releases/gcc-9.4.0/
  18. https://mirrors.kernel.org/sourceware/gcc/releases/gcc-9.4.0/
Collapse this list.

Number of commits found: 23

Commit History - (may be incomplete: see SVNWeb link above for full details)
DateByDescription
09 Jun 2021 05:38:36
 files touched by this commit commit hash:19dfb88623ab11b2d1d08fcf54e92f5eb6183aa2  9.4.0
gerald search for other commits by this committer
lang/gcc9: Update to the GCC 9.4 release

This fixes more than 190 bugs compared to GCC 9.3.

files/patch-gcc_dumpfile.c has made it upstream in the meantime, so
remove it on our end.
06 Apr 2021 14:31:07
 files touched by this commit commit hash:305f148f482daf30dcf728039d03d019f88344eb  9.3.0_3
mat search for other commits by this committer
Remove # $FreeBSD$ from Makefiles.
21 Mar 2021 09:57:05
Original commit files touched by this commit Revision:568912  9.3.0_3
gerald search for other commits by this committer
Update to MPC version 1.2.0 with the following changes:
 - New functions:
   . mpc_sum
   . mpc_dot
 - Several functions are more robust with a reduced exponent range
   (for example corresponding to IEEE 754 binary formats).
 - New mpcheck tool for comparison with the native C library (which
   is not installed by default).

Bump all directly dependent ports. Do not bump those indirectly
dependent via the lang/gcc* family since their run-time dependencies
and code generated should not be affected.

PR:		249950
Submitted by:	wen
03 Mar 2021 21:43:02
Original commit files touched by this commit Revision:567263  9.3.0_2
gerald search for other commits by this committer
Back port part of r566296 | gerald | 2021-02-22 from lang/gcc9-devel:

  [B]ack port of part of r565301 | gerald | 2021-02-15 from
  lang/gcc11-devel:

    Explicitly build --without-zstd such that archivers/zstd isn't pulled
    in inadvertedly when present in the build system even though it is not
    an explicit dependency. [1]

Back port part of r566885 | gerald | 2021-03-01 from lang/gcc9-devel:

  Remove the GRAPHITE option. Graphite still is a largely experimental
  feature, so better left to newer versions of GCC such as GCC 10 which
  is now our default.

PR:		253286 [1]
16 Jan 2021 14:02:24
Original commit files touched by this commit Revision:561727  9.3.0_1
gerald search for other commits by this committer
Align some formatting with the gcc9-devel port, removing unnecessary
differences.
02 Jan 2021 12:29:41
Original commit files touched by this commit Revision:559932  9.3.0_1
gerald search for other commits by this committer
Back port part of r554445 | gerald | 2020-11-08 from lang/gcc9-devel:

  Also remove SSP_UNSAFE which was added by r327697 in 2013 to the
  pre-pre-...-predecessor of this port and does not appear necessary
  any longer.
17 Dec 2020 09:52:10
Original commit files touched by this commit Revision:558274  9.3.0_1
gerald search for other commits by this committer
Back port part of r555542 | gerald | 2020-11-17 from lang/gcc9-devel:

  Fold the PLUGINS option, which has been on by default, into standard
  behavior and remove that option.  It has not been causing any issues
  since we enabled it 11 months ago, nor measurable overhead.

PR:		242644
27 Apr 2020 21:16:16
Original commit files touched by this commit Revision:533204  9.3.0_1
gerald search for other commits by this committer
Improve upon revision 532950 by passing GCC optimization options via
MAKE_ARGS instead of trying to do this via the environment (which is
lower priority and required files/patch-Makefile.in which we can now
remove).

PR:		245511
25 Apr 2020 12:26:34
Original commit files touched by this commit Revision:532950  9.3.0_1
pkubaj search for other commits by this committer
lang/gcc9: build with base GCC on powerpc64 elfv1

Instead of using lang/gcc8 for bootstrapping gcc9 on powerpc64 elfv1, use
directly base gcc.
Necessary changes:
- CFLAGS_FOR_TARGET="-O0" CXXFLAGS_FOR_TARGET="-O0" BOOT_CFLAGS="-O0" in
CONFIGURE_ENV and MAKE_ENV. Otherwise bootstrapped compiler fails later in the
build with segfault.
- CRTSTUFF_T_CFLAGS has changed optimizations to -O0, instead of -O2. -O2 worked
in gcc8, because there was no -fno-asynchronous-unwind-tables flag added to
CRTSTUFF_T_CFLAGS. Since this works when building with clang on powerpc64 elfv2,
this patch is added to EXTRA_PATCHES, only on powerpc64 elfv1,
- BOOT_CFLAGS has added ? before =. This is to allow overriding BOOT_CFLAGS in
CONFIGURE_ENV and MAKE_ENV.
- A patch by Gustavo Romero to gcc/dumpfile.c is necessary to allow compiling
with base GCC, otherwise base GCC hits ICE. Incidentally, this patch alone also
fixes build for powerpc (32 bits) with base GCC.

Bump PORTREVISION for dependency change.

PR:		245511, 242506
Approved by:	gerald (maintainer timeout)
26 Mar 2020 14:16:58
Original commit files touched by this commit Revision:529189  9.3.0
gerald search for other commits by this committer
Update to the GCC 9.3 release, which fixes some 157 further bugs.

This remains the default version of GCC in the Ports Collection, and
this update mostly addresses regressions.

files/patch-powerpc32 was a backport from this release branch to begin
with and has now become obsolete. [1]

PR:		241125 [1]
29 Jan 2020 08:50:54
Original commit files touched by this commit Revision:524538  9.2.0_1
gerald search for other commits by this committer
Appease portlint when it comes for patch format.
18 Jan 2020 08:45:54
Original commit files touched by this commit Revision:523406  9.2.0_1
gerald search for other commits by this committer
Backport (part of) r521207 | gerald | 2019-12-28 from lang/gcc9-devel:

  Enable GCC plugins support by default.

PR:		242644
Submitted by: 	tobik
Differential Revision:	https://reviews.freebsd.org/D22292
29 Nov 2019 13:47:58
Original commit files touched by this commit Revision:518650  9.2.0
gerald search for other commits by this committer
Temporarily apply a patch from upstream that addresses a build failure
on powerpc ("error: integer constant is too large for 'long' type").

This is already part of lang/gcc9-devel after r518494 and the 20191123
snapshot of GCC 9.2.1; it will be part of the GCC 9.3 release at which
point we can remove this local patch again.

PR:		241125
19 Nov 2019 17:17:52
Original commit files touched by this commit Revision:517973  9.2.0
gerald search for other commits by this committer
Forward port r517702 | gerald | 2019-11-15 from lang/gcc9-devel:

  On versions of FreeBSD that that are new enough and made that switch
  already, use ELFv2 ABI on powerpc64.

PR:		239813
Submitted by:	pkubaj
Reported by:	linimon
16 Nov 2019 08:12:35
Original commit files touched by this commit Revision:517725  9.2.0
gerald search for other commits by this committer
Backport 517206 | gerald | 2019-11-10 from lang/gcc10-devel, which already
landed in lang/gcc9-devel as r517355 | gerald | 2019-11-13.

  Add a new option PLUGINS that enables GCC's plugin framework. This is off
  by default for now, but something to possibly make the default after a bit
  of settling.

  I plan to backport this to lang/gcc9-devel and then lang/gcc9.

Submitted by:	David Carlier <devnexen@gmail.com>
Differential Revision:	https://reviews.freebsd.org/D22292
24 Aug 2019 11:25:12
Original commit files touched by this commit Revision:509718  9.2.0
gerald search for other commits by this committer
Properly push down lang/gcc9/patch-clang-vec_step into the files/
subdirectory.
24 Aug 2019 11:04:35
Original commit files touched by this commit Revision:509717  9.2.0
gerald search for other commits by this committer
clang on rs6000/powerpc* unfortunately poisons user namespace by default
(without any special options or include files being required).

Until that changes (or GCC changes) we need to avoid using vec_step as a
variable name.

PR:		239266
17 Aug 2019 07:16:27
Original commit files touched by this commit Revision:509141  9.2.0
gerald search for other commits by this committer
Update to GCC 9.2 release, the second in the GCC 9 series, which fixes
some 68 bugs.

This is the default version of GCC in the Ports Collection, and it just
got a bit more polish and stability.

Both files/patch-amd64-gcc-multilib-support and
files/patch-powerpc64-no-_GNU_SOURCE [1] have been integrated upstream
(and also been part of lang/gcc9-devel already), so remove them here.

PR:		239648 [1]
12 Aug 2019 07:30:34
Original commit files touched by this commit Revision:508710  9.1.0_1
gerald search for other commits by this committer
Ensure _GNU_SOURCE is now longer defined on powerpc64 (which was a
regression from the GCC 8 series).

The technical background is that a consolidation in upstream GCC made
non-GNU platforms include gnu-user.h and then undefined some macros
in rs6000/freebsd.h, but missed doing the same in rs6000/freebsd64.h.

The has now been included upstream and the current snapshot that the
lang/gcc9-devel port tracks; carrying files/patch-powerpc64-no-_GNU_SOURCE
in this port should become obsolete with the GCC 9.2 release.

(As this should be a very short-lived measure, bump PORTREVISION only
for powerpc64 to avoid all other users having to rebuild, too.)

PR:		239648
27 Jul 2019 06:50:25
Original commit files touched by this commit Revision:507388  9.1.0_1
gerald search for other commits by this committer
Explicitly depend on GCC 8 (instead of USE_GCC=yes) for powerpc64 to
avoid a dependency loop.

PR:		238330
Reported by:	pkubaj
26 Jul 2019 20:46:57
Original commit files touched by this commit Revision:507372  9.1.0_1
gerald search for other commits by this committer
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.

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, everything INDEX-11 shows with a dependency on lang/gcc9 now.

PR:		238330
24 Jul 2019 21:30:44
Original commit files touched by this commit Revision:507302  9.1.0
tobik search for other commits by this committer
lang/gcc*: Hide pkg-message during upgrades

PR:		239419
Approved by:	gerald (maintainer)
01 Jun 2019 18:06:12
Original commit files touched by this commit Revision:503247  9.1.0
gerald search for other commits by this committer
Welcome GCC 9.1, the first release of the GCC 9 series!

https://gcc.gnu.org/gcc-9/changes.html has a comprehensive overview of
many improvements and changes and https://gcc.gnu.org/gcc-8/porting_to.html
addresses issues you may encounter porting to this new version, though
this release series should have fewer of those than previous ones.

To provide a brief overview of some of the more noticable changes:

GCC's diagnostics now print source code with a left margin showing line
numbers.  This is configurable via -fno-diagnostics-show-line-numbers.
Plus there have been lots of further improvements around diagnostic
messages in general as -fopt-info.

As usual a large number of improvements to code generation, including
(Only the first 15 lines of the commit message are shown above View all of this commit message)

Number of commits found: 23