Commit graph

725 commits

Author SHA1 Message Date
Mathieu Arnold
305f148f48
Remove # $FreeBSD$ from Makefiles. 2021-04-06 16:31:07 +02:00
Gerald Pfeifer
3c29491c0b 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
2021-03-21 09:57:04 +00:00
Gerald Pfeifer
07f38be147 Resign as maintainer of this port of GCC 4.8 which has been unsupported
upstream since 2015 and marked deprecated for three years now.

sysutils/memtest86+ and sysutils/uefi-edk2-bhyve are two remaining users
in the entire ports tree which hopefully will be converted at one point.

On the way refer to GCC 10 instead of GCC 9 for a recommended update.

And move the USES block earlier in the Makefile as newer GCC ports do
to honor our coding standards (and pet portlint).
2020-11-15 22:21:18 +00:00
Gerald Pfeifer
e2aed19275 Also remove -march=haswell from CFLAGS and CXXFLAGS since GCC 4.8
does not specifically support Intel Haswell.

With that we should have covered all attempts people reported of
setting CPUTYPE that GCC 4.8 does not support.

PR:		218819
2020-11-06 22:19:34 +00:00
Gerald Pfeifer
5399fea276 Backport r553560 | gerald | 2020-10-28 from lang/gcc7:
Our only [two consumers] in the tree [do] not require Fortran nor
  Objective-C, so do not build those front ends and libraries any longer.

  Also remove the BOOTSTRAP option, which has been the default all along,
  and bootstrap unconditionally, further simplifying this port.
2020-10-30 22:42:54 +00:00
Gerald Pfeifer
e166ddeb30 Remove -march=ivybridge from CFLAGS and CXXFLAGS if present since this
version of GCC does not support the Intel Ivy Bridge architecture.

PR:		244654
2020-10-22 13:41:31 +00:00
Gerald Pfeifer
20d09e2dcc Remove -march=westmere from CFLAGS and CXXFLAGS if present since this
old version of GCC (end of life for more than five years) does not yet
support the Intel Westmere architecture. [1]

This avoids breaking users who set a global CPUTYPE to westmere.

While here, backport r469788 from lang/gcc6: [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:		250263 [1], 228205 [2]
Reported by:	Patrick McMunn <doctorwhoguy@gmail.com> [1]
Submitted by:   rozhuk.im@gmail.com [2]
2020-10-18 09:07:43 +00:00
Gerald Pfeifer
5c2f489252 Remove three arm-specific local patches since r524029 restricted this
port to amd64 and i386.  This complements r539330 which only covered
the Makefile.
2020-06-26 19:14:34 +00:00
Gerald Pfeifer
e6aea60464 Since r524029 | gerald | 2020-01-25 this port has been restricted to
amd64 and i386 and is only still in our tree for the sake of two other
ports (specific to those two architectures).

Remove remaining traces of support for other architectures.

This change should not have any impact on anything installed or packaged.
2020-06-16 07:44:20 +00:00
Gerald Pfeifer
39d3407a77 This port, lang/gcc48, is only still alive due to dependencies by
sysutils/uefi-edk2-bhyve and sysutils/memtest86+.  Its successors
lang/gcc49 and lang/gcc5 have left the tree already, and lang/gcc6
is scheduled for removal soon.

Thus at least restrict to i386 and amd64, the only two platforms
supported by those two dependant ports.
2020-01-25 11:45:52 +00:00
Gerald Pfeifer
67186a4adf Now that GCC 9 is the canonical version in the Ports Collection,
recommend that (instead of GCC 9) in the deprecation notes of ports
for old versions of GCC.
2019-09-09 13:19:15 +00:00
Tobias Kortkamp
e73279ea10 lang/gcc*: Hide pkg-message during upgrades
PR:		239419
Approved by:	gerald (maintainer)
2019-07-24 21:30:44 +00:00
Gerald Pfeifer
e66727024b Recommend the use of GCC 8 (instead of GCC 7 until now) to replace
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.
2019-06-13 06:20:04 +00:00
Baptiste Daroussin
7990f81066 Install texinfo files (GNU info) into ${PREFIX}/share/info
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
2018-11-10 18:12:57 +00:00
Gerald Pfeifer
69fcfbe962 Recommend the use of GCC 7 or later over this port, since that is now
the default version of GCC for the Ports Collection.
2018-09-29 22:26:36 +00:00
Mathieu Arnold
f57bc4af66 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
Submitted by:	mat
exp-runs by:	antoine
2018-09-10 13:11:23 +00:00
Gerald Pfeifer
b25b5a01c7 Simplify the setting of CFLAGS where /g is not necessary when substituting
a Makefile variable (since this takes place for every word in the variable,
not just once).
2018-07-22 09:57:25 +00:00
Tijl Coosemans
23e99b00ef Run "/usr/sbin/service ldconfig restart" for USE_LDCONFIG instead of
"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)
2018-05-14 19:15:36 +00:00
Gerald Pfeifer
f960f73cd7 Simplify MASTER_SITES in all GCC-ports related to end-of-lifed releases
(gcc47, gcc48, gcc49, and gcc5), taking advantage of the default for GCC
releases provided by MASTER_SITES_ABBREVS.

Reported by:	portlint
2018-05-13 20:05:29 +00:00
Alex Dupre
aca2d686e3 Update mpfr to 4.0.1 release and bump PORTVERSION of dependent ports. 2018-04-19 07:08:45 +00:00
Gerald Pfeifer
c2a92a1aea Bump PORTREVISIONs of all users of math/mpc that we just updated to
version 1.1.0 (via revision 464079).
2018-03-10 17:46:04 +00:00
Dimitry Andric
3f6545049c Fix builds of lang/gcc{48,49,5} with clang 6.0.0
Since clang++ 6.0.0 now defaults to -std=gnu++14 (similar to g++ 6 and
higher), building gcc48, gcc49 or gcc5 produce quite a number of
"invalid suffix on literal; C++11 requires a space between literal and
identifier" errors.  This is because in many places, double quotes are
directly followed by printf helper macros like HOST_WIDE_INT_PRINT.

In gcc 6 and later, spaces were added between the double quotes and the
macros, to fix this issue, but for earlier versions, use a combination
of find, grep and sed to add them mechanically throughout the respective
source trees.

In addition, gcc5 needs a regular patch to fix an incorrect call to
error(), which should have been error_at().  (This was a mismerge by
upstream.)

Approved by:	gerald (maintainer)
PR:		224927
MFH:		2018Q1
2018-01-09 22:08:45 +00:00
Gerald Pfeifer
3a99e08e20 Backport the change to ensure what we install is stripped (i.e., debug
info is removed) from lang/gcc7 to lang/gcc47, lang/gcc48 and lang/gcc49.

(For more background see revisions 454177 and 454422.)

Reported by:	Ports QA Framework, miwi, sobomax
Discussed with:	tijl, miwi
Differential Revision:	https://reviews.freebsd.org/D10357
2017-11-23 21:12:22 +00:00
Gerald Pfeifer
785266d1fa Given that GCC 5 has gone end-of-life now, recommend GCC 6 or later
instead of GCC 5 or later in the deprecation messages for lang/gcc46
to lang/gcc49.
2017-11-19 22:44:45 +00:00
Gerald Pfeifer
d792ff0690 Add deprecation notes for lang/gcc47, lang/gcc48, and lang/gcc49,
but no expiration date at this point (since at least the latter two
still have users in the ports tree and sparc64 relies on the latter).

PR:		222373
Submitted by:	Yasuhiro KIMURA <yasu@utahime.org>
2017-10-04 20:36:13 +00:00
Gerald Pfeifer
f8aba5dada Backport a number of changes from lang/gcc5 and lang/gcc49:
- Move ONLY_FOR_ARCHS into the right position of the Makefile.

 - Omit a comment describing GCC_VERSION and SUFFIX.

 - Do not quote constant strings compared with ${ARCH}. [1]

 - Last, but not least the only functional change (and an important one):
   Remove headers being created by GCC's fixincludes machinery from
   the installation / packaging to avoid breakage when FreeBSD's headers
   are changing afterwards. [2]

PR:		221905 [1], 222233 [2]
Submitted by:	linimon [1]
2017-09-22 13:05:17 +00:00
Gerald Pfeifer
96780a12bd Remove workarounds for PR 219274 that bapt@ had put in place in 2014
from the end-of-life lang/gcc4* ports.

PR:		219274
2017-07-19 22:41:57 +00:00
Gerald Pfeifer
3febde1e72 Adjust WWW reference in pkg-descr to https and avoid a trailing slash
for all lang/gcc4* ports.
2017-06-14 21:31:11 +00:00
Sunpoet Po-Chuan Hsieh
5a3404d7c6 Update print/texinfo to 6.3
Changes:	http://savannah.gnu.org/forum/forum.php?forum_id=8679
Differential Revision:	https://reviews.freebsd.org/D
PR:		218972
Exp-run by:	antoine
2017-05-08 12:43:47 +00:00
Gerald Pfeifer
b45d26c4d2 Remove files/patch-unwind-ia64.h which has been obsolete for a while
since ONLY_FOR_ARCHS does not include ia64.

Streamline the setting of INFO.
2017-04-30 21:40:23 +00:00
Gerald Pfeifer
a0559f15f0 Now that this port does not feature support for Java/GCJ any longer,
we can simplify files/patch-arm-support accordingly.
2017-04-23 08:18:45 +00:00
Gerald Pfeifer
fda2c67324 Remove Java support (both in terms of the JAVA option and everything
associated with it as well as java from CATEGORIES) from this port.

Technically GCC 4.8 only went end-of-life upstream in June 2015, alas
GCC 4.9 and GCC 5 are well established by now and also provide support
for Java (GCJ/libgcj), and this change simplifies this port significantly
and speeds up the build.

In addition to the expected changes to Makefile, pkg-plist, and pkg-descr,
this also removes files/java-patch-hier.
2017-04-22 08:50:18 +00:00
Martin Wilke
0af18a4496 - Fix shebang
Approved by:	gerald (maintainer via mail)
2017-04-14 20:50:32 +00:00
Gerald Pfeifer
28b9335eba Replace the sole use of DISTVERSION (in MASTER_SITES) by PORTVERSION.
Inspired by:	mat
2017-04-12 06:37:46 +00:00
Gerald Pfeifer
0e341eae57 No longer define CPE_VERSION for ports tracking releases of GCC since
there the default of PORTREVISION is just fine.
2017-02-03 15:18:48 +00:00
Gerald Pfeifer
e95608b4e7 Remove traces of armv6hf which no longer exists as an arch. [1]
Remove redundant definition of DISTVERSION and simplify GCC_VERSION.

Reported by:	andreast [1]
2017-02-03 09:31:08 +00:00
Tijl Coosemans
02f27a83b4 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)
2017-01-18 13:20:31 +00:00
Gerald Pfeifer
e40987f488 Move all ARM-specific bits we used to have in lang/gcc until r426565
(where I updated that port from GCC 4.8.5 to 4.9.4) to lang/gcc48.

Apart from these improvements these two ports used to be more or less
aligned, and not syncing them fully earlier looks like an omission.

Reported by:	linimon
2016-11-20 21:39:50 +00:00
Gerald Pfeifer
742a14d923 Move the conflict with lang/gcc from lang/gcc48 to lang/gcc49 now that
we have updated lang/gcc to the GCC 4.9 series.  (The direction from
lang/gcc49 to the respective port already has been addressed.)

PR:		196712
2016-11-20 20:34:38 +00:00
Mathieu Arnold
eabbfd75e3 ${RM} already has -f.
PR:		213570
Submitted by:	mat
Exp-run by:	antoine
Sponsored by:	Absolight
2016-10-21 12:51:40 +00:00
Gerald Pfeifer
c976404cff Remove OPTIONS_DEFAULT_powerpc64=BOOTSTRAP which is redundant with
OPTIONS_DEFAULT.
2016-08-24 20:13:10 +00:00
Gerald Pfeifer
f7939668a6 Default powerpc64 to bootstrapping (option BOOTSTRAP) since otherwise
GCC can be mis-built, leading to an internal compiler error building
libgcc/libgcov.c, at least on FreeBSD 11.

Adjust OPTIONS_DEFINE_powerpc64 and OPTIONS_DEFAULT_powerpc64
incrementally (with +=) to avoid overwriting settings defined
at the top of the Makefile (or child ports). [1]

Submitted by:	swills [1]
Reported by:	swills
2016-08-24 20:05:40 +00:00
Gerald Pfeifer
65bfb4ce38 Pet portlint in terms of patch file format. 2016-08-24 13:32:58 +00:00
Gerald Pfeifer
0190464df7 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.

PR:		210122, 211742
Submitted by:	jkim
2016-08-16 07:21:05 +00:00
Gerald Pfeifer
baabf138fa Apply the following to all common GCC ports based on end-of-life versions
of GCC including lang/gcc:

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.
2016-05-06 23:00:26 +00:00
Gerald Pfeifer
0175374736 Make MULTILIB_DESC consistent and more logical also for the lang/gcc
and lang/gcc48 ports, now in line across all lang/gcc* ports.
2016-05-03 20:17:47 +00:00
Jan Beich
70267d209b lang/gcc*: convert to CONFIGURE_OUTSOURCE
PR:		208294, 208309
Exp-run by:	antoine
Approved by:	gerald (maintainer)
Differential Revision:	https://reviews.freebsd.org/D4157
2016-04-13 10:40:58 +00:00
Mathieu Arnold
a9dcad2fff Remove ${PORTSDIR}/ from dependencies, categories h, i, j, k, and l.
With hat:	portmgr
Sponsored by:	Absolight
2016-04-01 14:08:37 +00:00
Julio Merino
dad9e883dd Add a MULTILIB option to gcc{,48,49,5} for powerpc64
This change is the same as r400632, which updated gcc[56]-devel, but now
for gcc{,48,49,5}.  This change is the second attempt at doing this: the
first attempt went in r401072 and was reverted in r401074 because the diff
was bogus and enabled the new MULTILIB option under all platforms instead
of just powerpc64.

This fixes the build of gcc{,48,49,5} under powerpc64 when the system
is built without the lib32 libraries.

More in detail:

If the system is built with lib32 support (WITH_LIB32, which is the default),
building gcc from ports results in a compiler that can target both 64-bit and
32-bit binaries on powerpc64.  However, when lib32 support is disabled
(WITHOUT_LIB32), gcc should only be built with 64-bit support or otherwise
the build fails.

To fix this, explicitly disable 32-bit support when /usr/lib32 is not present
and add a MULTILIB option (which is only defined for powerpc64 when 32-bit
support is possible and defaults to yes to preserve the current behavior) to
allow the user to explicitly control this feature.

Approved by:    gerald (maintainer), bdrewery (mentor), andreast
Differential Revision:  https://reviews.freebsd.org/D3952
2015-11-22 21:06:54 +00:00
Julio Merino
c7f5a2f84d Revert r401072.
I'm not sure what happened exactly but I think I committed the change from
the wrong client.  The applied change enabled the MULTILIB option for all
architectures and not only powerpc64.  Let's just revert the commit and do
it properly from scratch; other things might be wrong so I wanna take a
closer look, and it's best to just revert quickly.
2015-11-08 20:31:51 +00:00