aboutsummaryrefslogtreecommitdiff
path: root/lang/gcc8
Commit message (Collapse)AuthorAgeFilesLines
* Remove # $FreeBSD$ from Makefiles.Mathieu Arnold2021-04-061-1/+0
|
* Update to MPC version 1.2.0 with the following changes:Gerald Pfeifer2021-03-211-0/+1
| | | | | | | | | | | | | | | | | | | | - 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 Notes: svn path=/head/; revision=568912
* Backport part of r566453 | gerald | 2021-02-24 from lang/gcc8-devel:Gerald Pfeifer2021-03-041-1/+2
| | | | | | | | | | | | | | ALso back port 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] PR: 253286 [1] Notes: svn path=/head/; revision=567297
* Back port part of r554351 | gerald | 2020-11-07 from lang/gcc8-devel:Gerald Pfeifer2020-12-271-1/+0
| | | | | | | | | 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. Notes: svn path=/head/; revision=559432
* r553147 | gerald | 2020-10-23 21:27:59 +0000 (Fr., 23 Okt. 2020) | 7 linesGerald Pfeifer2020-11-261-7/+1
| | | | | | | | | | | | Forward port r552389 | gerald | 2020-10-15 from lang/gcc7: Remove the GRAPHITE options (which we never enabled by default). GCC 8 is towards the end of its lifecycle and this is a more experimental feature, so better left to actively developed versions. Notes: svn path=/head/; revision=556342
* Update to the GCC 8.4 release which fixes at least 209 bugs comparedGerald Pfeifer2020-03-093-78/+4
| | | | | | | | | | to the previous. Multilib support on amd64 has been merged upstream, thus obsoleting files/patch-amd64-gcc-multilib-support . Notes: svn path=/head/; revision=528120
* Remove sparc64, which has not been working for far too long, from theGerald Pfeifer2020-03-081-1/+1
| | | | | | | | | | list of supported architectures for the GCC 8 based ports. PR: 236839 Agreed to by: emaste Notes: svn path=/head/; revision=528030
* Partially forward port r517855 | gerald | 2019-11-18 from lang/gcc8-devel:Gerald Pfeifer2019-11-201-0/+4
| | | | | | | | | | | | 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 Notes: svn path=/head/; revision=517994
* clang on rs6000/powerpc* unfortunately poisons user namespace by defaultGerald Pfeifer2019-08-221-0/+21
| | | | | | | | | | | | (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 Notes: svn path=/head/; revision=509607
* Bump PORTREVISION for ports depending on the canonical version of GCCGerald Pfeifer2019-07-261-1/+1
| | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=507372
* lang/gcc*: Hide pkg-message during upgradesTobias Kortkamp2019-07-241-0/+6
| | | | | | | | PR: 239419 Approved by: gerald (maintainer) Notes: svn path=/head/; revision=507302
* GCC has two runtime libraries: The static library libgcc.a (-lgcc) andGerald Pfeifer2019-04-152-1/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the shared library libgcc_s.so (-lgcc_s). Both implement many of the same functions but they also each have their unique functions. When GCC links programs and libraries there are three possibilities: 1. gcc -static-libgcc or gcc -static: -lgcc => Just use libgcc.a. 2. gcc -shared-libgcc: -lgcc_s -lgcc => Link with libgcc_s first, so libgcc.a is only used for its unique functions. 3. gcc: -lgcc -Wl,--as-needed -lgcc_s -Wl,--no-as-needed => Link with libgcc.a first so libgcc_s is only used for its unique functions (_Unwind_* functions). Approach 3 is the default for gcc and it's also what clang and clang++ use; approach 2 is the default for gfortran, g++ and probably other front ends. This patch makes 3 the default for gfortran. It significantly reduces the use of libgcc_s. The _Unwind_* functions are also available in the old base system libgcc_s which means this reduces the need for -rpath /usr/local/lib/gccN in ports that depend on libraries built with gfortran. Consider a dependency tree like this: prog -> libA -> libgcc_s (old base system libgcc_s is fine) -> libB -> libgcc_s (libB built with gfortran, needs new libgcc_s) Here prog needs to be linked with -rpath /usr/local/lib/gccN even if it's a normal C program compiled with clang. Without -rpath it will fail to start because it loads old libgcc_s first as a dependency of libA and then it fails to load libB. With this patch libB works with old base system libgcc_s or may not need libgcc_s at all, so prog does not need to be linked with -rpath. PR: 208120 Submitted by: tijl MFH: 2019Q2 (important user visible improvement) Notes: svn path=/head/; revision=499061
* Backport r496295 | andreast | 2019-03-19 22:03:17 from lang/gcc8-devel:Gerald Pfeifer2019-03-302-1/+77
| | | | | | | | | | This commit brings multilib support for gcc on amd64. This means you can compile and execute 32-bit binaries with gcc. The gcc part will be upstreamed as soon as gcc trunk opens for new commits. On the release front, gcc8, we will merge this commit after a week or so. Notes: svn path=/head/; revision=497254
* No longer require a not too old version of GCC to build on powerpc64, butGerald Pfeifer2019-03-072-8/+6
| | | | | | | | | | | | | | | | | rely on the system compiler (even if that means we need to be explicitly conservative when it comes to optimizations). [1] Simplify the creation of the multilib-related sub-directory tree on powerpc64 and avoid leaving an empty directory behind on the way. [2] Sync pkg-descr with lang/gcc7-devel, in particular after r442530 there. PR: 235975 [1], 235964 [2], 231804 [2] Submitted by: Piotr Kubaj <pkubaj@anongoth.pl> [1] Discussed with: Piotr Kubaj <pkubaj@anongoth.pl> [2] Notes: svn path=/head/; revision=494921
* Update to the GCC 8.3 release which fixes more than 153 bugs compared toGerald Pfeifer2019-02-243-5/+5
| | | | | | | | | the previous release, with a focus on regressions. Pet portlint as it comes to the patch format of files/patch-fuse-ld=lld . Notes: svn path=/head/; revision=493748
* On powerpcspe configure GCC --with-cpu=8548 instead of --with-cpu=8540,Gerald Pfeifer2019-02-041-1/+1
| | | | | | | | | | | 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 Notes: svn path=/head/; revision=492106
* Update files/patch-spe-config (and with that our local adjustments toGerald Pfeifer2019-01-201-8/+17
| | | | | | | | | | | | | config.gcc) to the changed directory structure under gcc/config brought by GCC 8 when powerpcspe was cloned and broken out from the regular powerpc port. PR: 234419 Submitted by: jhibbits MFH: 2019Q1 (build fix on powerpcspe) Notes: svn path=/head/; revision=490785
* Move items belonging into the USES block earlier in the Makefile,Gerald Pfeifer2019-01-161-4/+4
| | | | | | | | | and into a separate block. Reported by: portlint Notes: svn path=/head/; revision=490521
* Install 32-bit libraries for powerpc64 if built.Andreas Tobler2018-12-291-1/+8
| | | | | | | Approved by: gerald@ Notes: svn path=/head/; revision=488675
* Fix dependency loop on powerpc64Antoine Brodin2018-12-151-1/+3
| | | | Notes: svn path=/head/; revision=487531
* Bump PORTREVISION for ports depending on the canonical version of GCCGerald Pfeifer2018-12-121-1/+1
| | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=487272
* Add support for -fuse-ld=lld, backported from GCC mainline which isGerald Pfeifer2018-11-252-1/+106
| | | | | | | | | | going to become GCC 9 (in form of files/patch-fuse-ld=lld borrowed from devel/riscv64-gcc). PR: 227302 Notes: svn path=/head/; revision=485902
* Merge r479405 | mat | 2018-09-10 from lang/gcc8-devel to lang/gcc8 as well:Gerald Pfeifer2018-11-251-1/+1
| | | | | | | | | | | | | After an include, PLIST_SUB must be appended to, not overwritten. If it is overwritten, many values will be clobbered, and pain will ensue. PR: 230864 Reviewed by: mat Notes: svn path=/head/; revision=485839
* Install texinfo files (GNU info) into ${PREFIX}/share/infoBaptiste Daroussin2018-11-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=484628
* Forward port r478722 | gerald | 2018-09-01 from lang/gcc7:Gerald Pfeifer2018-09-021-0/+47
| | | | | | | | | | | Disable the build/use of libssp/gets-chk since FreeBSD 12 and later do not feature gets() any longer. PR: 222796, 231066 Differential Revision: https://reviews.freebsd.org/D12298 Notes: svn path=/head/; revision=478752
* Bump PORTREVISION for ports depending on the canonical version of GCCGerald Pfeifer2018-07-291-0/+1
| | | | | | | | | | | | | | | | | 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 Notes: svn path=/head/; revision=475857
* Update to the GCC 8.2 release, the second in the GCC 8 series.Gerald Pfeifer2018-07-262-4/+4
| | | | | | | | | | | | | | This fixes more than 99 bugs, among others a performance regression with -mtune=native on Intel Skylake chips has been fixed. This also fixes a bug introduced in GCC 8.1 affecting passing or returning of classes with a deleted copy constructor and defaulted trivial move constructor (GCC bug c++/86094). GCC 8.2 introduces -fabi-version=13 and makes it the default; ABI incompatibilities between GCC 8.1 and 8.2 can be reported with -Wabi=12. Notes: svn path=/head/; revision=475400
* Forward port r469788 from lang/gcc6:Gerald Pfeifer2018-07-221-0/+2
| | | | | | | | | | | | | | | | | Filter the -mretpoline command-line option, which is understood by 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 Notes: svn path=/head/; revision=475105
* Welcome GCC 8.1, the first release of the GCC 8 series!Gerald Pfeifer2018-07-147-0/+314
https://gcc.gnu.org/gcc-8/changes.html has a comprehensive overview of many changes in this release and https://gcc.gnu.org/gcc-8/porting_to.html addresses issues you may encounter porting to this new version. To provide a brief overview of some of the more noticable changes: On the optimization front inter-procedural optimizations (IPO) and profile driven optimizations (PDO) have been further improved and some classic loop nest optimization passes have been added: -floop-unroll-and-jam performs outer loop unrolling and fusing of the inner loop copies, while -floop-interchange exchanges loops in a loop nest to improve data locality. These, as well as an improved -ftree-loop-distribution pass are enabled by default at -O3 and above. A new pragma "GCC unroll" has been implemented in the C family of languages as well as Fortran to provide finer-grained control over loop unrolling. DWARF debugging information in the presence of link-time optimization now properly preserves language-specific information. The -gcolumn-info option is now enabled by default, so column information is part of DWARF debugging information in addition to filenames and line numbers. The C family compilers have gained options -Wmultistatement-macros (warning about unsafe macros expanding to multiple statements used as a body of a statement such as if, else, while, switch, or for), -Wstringop-truncation (warning for calls to bounded string manipulation functions such as strncat, strncpy, and stpncpy that might either truncate the copied string or leave the destination unchanged), -Wcast-function-type (warning when a function pointer is cast to an incompatible function pointer, enabled by -Wextra), and -Wsizeof-pointer-div (warning for suspicious divisions of the size of a pointer by the size of the elements it points to, which usually is an indication of a mistaken way to calculate the number of elements in an array, enabled by -Wall), among others. The existing -Warray-bounds and -Wrestrict options have been enhanced to detect many more instances, as have -Wformat-overflow and -Wformat-truncation. Error messages and warnings better highlight the locations of issues in many cases, and helpful "fix it" hints are provided more often. The C++ ABI (-fabi-version=12) introduces minor changes in a few fringe cases. The GCC 7 ABI can still be selected with -fabi-version=11. The C++ frontend as well as libstdc++ feature experimental support for many C++2a features and Fortran has seen a large number of improvements. Lots and lots of improvements for Arm and AArch64 targets, as well as the usual dose on x86 and powerpc. PR: 229681 Notes: svn path=/head/; revision=474650