Commit graph

638 commits

Author SHA1 Message Date
Gerald Pfeifer
f22bafb54b While this port is marked for expiration and removal, there is one aspect
we still ought to fix for any remaining users:

Remove headers being created by GCC's fixincludes machinery from the
installation / packaging to avoid breakage when FreeBSD's headers are
changing afterwards.
2017-09-23 22:26:09 +00:00
Gerald Pfeifer
3e6c0a69fa Mark DEPRECATED with an EXPIRATION_DATE of 2017-11-30 [1] since this
version of GCC has not been maintained upstream for nearly four-and-a-half
years and is not used anywhere in the tree.

Move ONLY_FOR_ARCHS to its appropriate place.

PR:		222373 [1]
Submitted by:	Yasuhiro KIMURA <yasu@utahime.org> [1]
2017-09-17 19:32: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
aabb359a6b Remove traces of ia64 support (ONLY_FOR_ARCHS and files/patch-unwind-ia64.h)
which has not been present in most other GCC ports for a long while.

While at it, simplify the setting of INFO.
2017-04-30 14:00:56 +00:00
Gerald Pfeifer
fc436505fc Remove Java support (the JAVA option and CATEGORY) from this port.
Four years after GCC 4.6 went end-of-life upstream there isn't really
much use of that any more since newer ports still carry it, and it
speeds up build and simplifies this port significantly.

In addition to the expected changes to Makefile, pkg-plist, and pkg-descr
this also gets rid of files/java-patch-hier.
2017-04-15 06:39:48 +00:00
Gerald Pfeifer
e73c3e292e Pet portlint wrt. patch files format. 2017-04-14 22:12:02 +00:00
Martin Wilke
0af18a4496 - Fix shebang
Approved by:	gerald (maintainer via mail)
2017-04-14 20:50:32 +00:00
Gerald Pfeifer
7c1a7aa4f6 Completely remove DIST_VERSION that mat introduced in revision
438272 to avoid DISTVERSION in this port .

On the way also drop the definition of DISTNAME (where the
default now works) and simplify the definition of GCC_VERSION;
both of these are possible since GCC 4.6 is EOL.
2017-04-13 01:27:14 +00:00
Mathieu Arnold
6d588589c2 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
2017-04-11 15:21:23 +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
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
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
Antoine Brodin
67ad2d2460 Remove deprecated @exec/@unexec from ports using ccache-update-links 2015-09-26 11:03:19 +00:00
Mathieu Arnold
21a283f3be Remove UNIQUENAME and LATEST_LINK.
UNIQUENAME was never unique, it was only used by USE_LDCONFIG and now,
we won't have conflicts there.

Use PKGBASE instead of LATEST_LINK in PKGLATESTFILE, the *only* consumer
is pkg-devel, and it works just fine without LATEST_LINK as pkg-devel
has the correct PKGNAME anyway.

Now that UNIQUENAME is gone, OPTIONSFILE is too. (it's been called
OPTIONS_FILE now.)

Reviewed by:	antoine, bapt
Exp-run by:	antoine
Sponsored by:	Absolight
Differential Revision:	https://reviews.freebsd.org/D3336
2015-08-17 14:20:40 +00:00
Gerald Pfeifer
760c6c4dd6 Merge MASTER_SITES and MASTER_SITE_SUBDIR into just the former.
Suggested by:	mat
2015-04-29 19:37:00 +00:00
John Marino
bd64a4f18c lang/gcc(46,47,48,49,5): Use OPTIONS_EXCLUDE_DragonFly to block JAVA
The JAVA frontend doesn't build on DragonFly on any release.  The new
OPTIONS_EXCLUDE_${OPSYS} feature is a nice way to avoid the use of
Makefile.DragonFly (most are in dports, but one is in lang/gcc5).

The recent addition of CXXFLAGS to lang/gcc5 prevents Makefile.DragonFly
on lang/gcc5 from being removed outright.  There are a couple of options
available to allow its removal, but I'll need to discuss with Gerald.

Approved by:	DragonFly blanket
2015-03-26 20:36:04 +00:00
Bryan Drewery
01f8b6d7d7 Fix UNIQUENAME not being unique after recent PORTNAME shuffle.
This was causing the gcc packages to be generated with a
/usr/local/libdata/ldconfig/gcc file. All were conflicting. Bump
PORTREVISION to fix packages built during this time.

With hat:	portmgr
Reported by:	sunpoet
2015-03-23 18:56:10 +00:00
Gerald Pfeifer
d8c9826d40 Use PKGNAMESUFFIX so that PORTNAME falls back to plain gcc and we
can avoid setting DISTNAME and CPE_PRODUCT.

Suggested by:	mat
2015-03-22 21:11:51 +00:00
Gerald Pfeifer
f021648fe1 Add CPE information.
PR:		198255
Submitted by:	shun.fbsd.pr@dropcut.net
2015-03-22 01:52:43 +00:00
Dimitry Andric
0e14fd9299 When building the gcc ports using a full bootstrap, tell the configure
script to assume the BUILD_CONFIG is set to bootstrap-debug, instead of
letting it auto-detect.

With clang 3.5.0 this auto-detection can fail, due to a discrepancy [1]
[2] in its debug information, when objects are produced with and without
-g.  When the auto-detection fails, gcc will compare objects with full
debug information during the stage comparisons, and this sometimes
causes those stage comparisons to fail unexpectedly.

[1] http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20141222/250134.html
[2] http://llvm.org/PR22046

Approved by:	gerald (maintainer)
2014-12-30 19:19:43 +00:00
Gerald Pfeifer
c31a9a5c91 Remove all traces of @dirrm from pkg-plist, including those parts that
are dynamically generated via the Makefile.
2014-10-20 02:50:46 +00:00
Baptiste Daroussin
e95ace05e4 Comment out info/dir files
indexinfo is taking care of generating it at package installation time

Reported by:	peter
2014-10-06 18:13:15 +00:00
Tijl Coosemans
7b08c84926 Add USES=libtool 2014-09-11 12:02:28 +00:00
Gerald Pfeifer
da7fe7d8f1 Also clean *.la files in LIBEXEC, and recursively so, here and for
TARGLIB.
2014-07-21 19:37:43 +00:00
Baptiste Daroussin
698f728a34 Fix build on system built WITHOUT_INFO
With hat:	portmgr
2014-06-25 08:58:09 +00:00
Baptiste Daroussin
a33191366c Convert GMAKE to MAKE_CMD
Please note that lots of invocation of MAKE_CMD here are wrong as they do not
properly respect MAKE_ENV and friends

With hat:	portmgr
2014-06-25 05:35:31 +00:00
Baptiste Daroussin
4a4ec28d37 Convert all :U to :tu and :L to :tl
Since FreeBSD 8.4 and FreeBSD 9.1 make(1) do support :tu and :tl as a
replacement for :U and :L (which has been marked as deprecated)

bmake which is the default on FreeBSD 10+ only support by default
:tu/:tl a hack has been added at the time to support :U and :L to ease
migration. This hack is now not necessary anymore

Note that this makes the ports tree incompatible with make(1) from
FreeBSD 8.3 or earlier

With hat:	portmgr
2014-05-05 09:45:36 +00:00
Gerald Pfeifer
b2bfd30660 Remove an (obsolete) CONFLICTS with a former state of lang/gcc.
Replace USE_BZIP2 by USES=tar:bzip2.

Extend full-regression-test by running contrib/test_summary.

No longer install rebuild-gcj-db46 (which requires bash among others)
and its man page.
2014-04-13 13:55:21 +00:00
Gerald Pfeifer
bc6d7b9197 No longer add -I${LOCALBASE}/include to CFLAGS.
Since we now configure with --with-gmp=${LOCALBASE} this is no longer
necessary, and due to bugs in binutils (which should not install ansidecl.h
into ${PREFIX}/include, fixed with revision 336642 [1]) and GCC (which
should search its own include directories with higher priority) could
lead to build failures.

Set the license to a combination of GPLv3 (for the compiler itself) and
GPLv3 with GCC Runtime Library Exception (for the runtime).

PR:		184327 [1]
2014-02-22 18:01:22 +00:00
Gerald Pfeifer
e8330bd911 Remove the man7 pages, which we are not packaging, from the staging
area to silence some warnings some are concerned about. [1]

No longer run ccache-update-links as part of post-install which, in
the world of staging, no longer is what it used to be.  Rely on the
existing @exec and @unexec in pkg-plist instead. [2]

Submitted by:	miwi [1]
Discussed with:	antoine [1][2]
2014-02-15 15:59:38 +00:00
Baptiste Daroussin
e04b632220 Fix properties on pkg-plist 2014-01-21 23:40:21 +00:00
Gerald Pfeifer
6073b55fd3 Revert revision 334619 from 2013-11-22 that worked around a problem with
the staging infrastructure and had us remove info/gcc46 ourselves. [1]

This has now been addressed in the general infrastructure and actually
causes warnings in some cases. [2]

PR:		184178 [1]
Reported by:	amdmi3 [2]
2013-12-07 10:01:55 +00:00
Gerald Pfeifer
52640bd401 Change PORTNAME for lang/gcc46 from gcc to gcc46 to match the actual
name of this port and avoid a package name collision with other GCC
ports.  This also allows us to remove LATEST_LINK.

And it finally allows for a simple and proper CONFLICTS between
lang/gcc and lang/gcc46.
2013-11-26 14:13:15 +00:00
Gerald Pfeifer
02997c0f68 Work around ports infrastructure breakage introduced with staging and
remove info/gcc46 ourselves.

Reported by:	QAT, amdmi3, mandree, bf, dbn
PR:		184178
2013-11-22 22:03:06 +00:00
Gerald Pfeifer
c5d9c8220e Remove a (long) obsolete dependency on bison. [1]
Migrate to the new LIB_DEPENDS standard.

STAGEify.

Reported by:	marino [1]
2013-10-28 00:26:28 +00:00
Gerald Pfeifer
3be3e90f93 Update to libmpc version 1.0.1 which brings the following fixes:
- Switched to automake 1.11.6, see CVE-2012-3386.
 - #14669: Fixed extraction of CC from gmp.h.
 - Fixed case of intermediate zero real or imaginary part in mpc_fma,
   found by hydra with GMP_CHECK_RANDOMIZE=1346362345.

This is on top of the following changes from version 1.0

 - Licence change towards LGPLv3+ for the code and GFDLv1.3+ (with no
   invariant sections) for the documentation.
 - 100% of all lines are covered by tests
 - Renamed functions
   . mpc_mul_2exp to mpc_mul_2ui
   . mpc_div_2exp to mpc_div_2ui
 - 0^0, which returned (NaN,NaN) previously, now returns (1,+0).
 - Removed compatibility with K&R compilers, which was untestable due
   to lack of such compilers.
 - New functions
   . mpc_log10
   . mpc_mul_2si, mpc_div_2si
 - Speed-ups
   . mpc_fma
 - Bug fixes
   . mpc_div and mpc_norm now return a value indicating the effective
     rounding direction, as the other functions.
   . mpc_mul, mpc_sqr and mpc_norm now return correct results even if
     there are over- or underflows during the computation.
   . mpc_asin, mpc_proj, mpc_sqr: Wrong result when input variable has
     infinite part and equals output variable is corrected.
   . mpc_fr_sub: Wrong return value for imaginary part is corrected.

Convert to the new LIB_DEPENDS standard and remove hard-coded
.so versions from a couple of dependent ports.

Bump PORTREVISIONS of all dependent ports.

PR:		183141
Approved by:	portmgr (bdrewery)
2013-10-26 00:52:33 +00:00
Baptiste Daroussin
888ab73a81 Add NO_STAGE all over the place in preparation for the staging support (cat: lang) 2013-09-20 19:53:09 +00:00
Bryan Drewery
c93dfc2e9f SSP support has been added to ports with WITH_SSP for i386 and amd64
on FreeBSD 10, and amd64 on earlier versions.

SSP_UNSAFE is added to disable in a port if it fails to build, but
this should only be used in rare circumstances such as kernel modules.
Otherwise, the port may just be failing due to lack of respecting
LDFLAGS.

On FreeBSD 10, this uses an ldscript in /usr/lib/libc.so to pull in
libssp_nonshared.a to address issues linking on i386 [1].

On earlier FreeBSD versions the WITH_SSP knob will add -lssp_nonshared
to LDFLAGS on i386. This is not needed on amd64. However, several hundred
ports do not currently respect LDFLAGS, so this support is disabled currently
as it causes build failures if a dependency is looking for the stack_chk
symbols.

Many thanks to jlh@ for this as he had many years of patience in getting
all of the necessary pieces [1][2] in.

[1] http://svnweb.freebsd.org/base/head/lib/libc/libc.ldscript?revision=251668&view=markup

PR:		ports/138228 [2]
Submitted by:	jlh (bsd.ssp.mk based on)
Reviewed by:	bapt
With hat:	portmgr
exp-runs done:	37 over a month on 91i386,91amd64,10i386,10amd64
2013-09-20 12:54:54 +00:00
Baptiste Daroussin
6adf864b81 Convert to new perl framework
Convert from USE_GMAKE to USES=gmake
2013-09-17 06:40:21 +00:00
John Marino
9518965c21 lang/gcc*: define CONFIGURE_TARGET genericly (8 ports)
Instead of hardcoding the compiler target as FreeBSD, use the OPSYS
variable to it.  This makes no practical difference for FreeBSD, but
it helps DragonFly get properly configured.

Approved by:	gerald
2013-09-12 10:20:45 +00:00
Gerald Pfeifer
6552b46cda Work around a bug in libcpp that pulls in the optional system iconv
if present instead of relying on the port we actually depend on.

The issue is that /usr/include/iconv.h has #include <stdbool.h> which
in turn, since both are included very late in the game, conflicts with
similar definintions by libcpp itself.

Interestingly enough, lang/gcc46 and lang/gcc48 did not fail under the
same test scenarios and libstdc++ does not seem to require adjustments,
so PR 161417 may not be relevant in full.

PR:		161417
2013-09-05 20:08:27 +00:00
Boris Samorodov
9f7e7e1326 Introduce ICONV_CONFIGURE_ARG variable defined at Uses/iconv.mk.
It's value is "--with-libiconv-prefix=/usr/local" for systems
before 100043 with ports libiconv and to use at systems post
100043 with base iconv it's value is "" (NULL).

Co-authors:	bapt, madpilot and bsam (me)
2013-09-04 20:01:05 +00:00
Gerald Pfeifer
bed8c78c4e Replace VERSIONSTRING by DISTVERSION.
Replace USE_GMAKE by USES=gmake.
2013-08-24 23:39:11 +00:00
Alex Kozlov
d4041784dc - Remove MAKE_JOBS_SAFE variable
Approved by:	portmgr (bdrewery)
2013-08-14 22:35:50 +00:00
Gerald Pfeifer
1c77b87bb3 When bootstrapping, which is not the default for this GCC port, use
bootstrap-lean instead of default/vanilla bootstrap to save on disk
space.
2013-06-02 19:13:51 +00:00
Gerald Pfeifer
00770c2bff Update to GCC 4.6.4, the final release and end of the GCC 4.6 branch.
(This requires an EPOCH bump due to how snapshots are labeled.)

Introduce a new option BOOTSTRAP that allows for doing a full
bootstrap of GCC, as opposed to just running a simple build.
Bootstrapping is actually the default upstream, we disable it
by default for the stable flavors of GCC since that is a huge
win in terms of build time of the port.  No change in default
behavior for this port.
2013-05-13 00:23:02 +00:00
Marcus von Appen
a3a0715f38 - Convert USE_ICONV=yes to USES=iconv
- Change USE_GNOME=pkgconfig|gnomehack to USES=pathfix|pkgconfig while here

Reviewed by:	zeising
2013-04-27 11:59:28 +00:00