Commit graph

666 commits

Author SHA1 Message Date
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
df9f5acb75 Backport several cleanups and one real fix from lang/gcc5:
- 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
   at that): Remove headers being created by GCC's fixincludes machinery
   from the installation / packaging to avoid breakage when FreeBSD's
   headers are changing afterwards.

 - On the way, add a TIMESTAMP to distinfo.

PR:		221905 [1]
Submitted by:	linimon [1]
2017-09-23 19:23:16 +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
Gerald Pfeifer
d8bd2e463a Remove powerpc64 from ONLY_FOR_ARCHS and remove BROKEN_powerpc64.
This is an old version of GCC (a couple of generations end-of-lifed)
that is not going to be fixed realistically, and we have newer ports
that work.

Discussed with:	linimon, andreast
2017-05-28 00:16:28 +00:00
Mark Linimon
82c3cac0d2 Mark some ports failing on power64. In cases where the error message
was a stub, provide a real one.

While here, pet portlint.

Approved by:	portmgr (tier-2 blanket)
Reported by:	swills
2017-05-22 16:04:19 +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
85be9c0c67 Simplify the setting of INFO. 2017-04-30 14:19:50 +00:00
Gerald Pfeifer
e882befae3 Pet portlint wrt. patch files format warnings. 2017-04-23 07:39:58 +00:00
Gerald Pfeifer
1203f110a2 Remove Java support (both the JAVA option and everything associated with
it as well as java from CATEGORIES) from this port.

After GCC 4.7 went end-of-life upstream in June 2014 there isn't much
use of that not better served by newer lang/gcc* ports and it speeds up
the build and simplifies this port significantly.

In addition to the expected changes to Makefile, pkg-plist, and pkg-descr,
this also removes files/java-patch-hier.
2017-04-16 21:19:33 +00:00
Martin Wilke
0af18a4496 - Fix shebang
Approved by:	gerald (maintainer via mail)
2017-04-14 20:50:32 +00:00
Gerald Pfeifer
0763e76df0 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 and simplify the
definition of GCC_VERSION since GCC 4.7 is EOL.
2017-04-12 01:14:48 +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
Gerald Pfeifer
bc8dc724f8 No longer conflict with gcc-4.7.* (which lang/gcc used to be until
some 20 months ago).
2016-05-05 14:13:57 +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
9f1c496dd7 Merge MASTER_SITES and MASTER_SITE_SUBDIR into just the former.
Suggested by:	mat
2015-04-29 16:01:39 +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
b54180f8ad Add CPE information. [1]
Use PKGNAMESUFFIX so that PORTNAME falls back to plain gcc and we
can avoid setting DISTNAME and CPE_PRODUCT. [2]

PR:		198256 [1]
Submitted by:	shun.fbsd.pr@dropcut.net [1]
Suggested by:	mat [2]
2015-03-22 21:39:24 +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
3ea38902f1 Remove all traces of @dirrm from pkg-plist, including the dynamically
generated parts via the Makefile.
2014-10-20 01:24:55 +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
fa8392b0b3 Add USES=libtool 2014-09-11 13:49:01 +00:00
Gerald Pfeifer
5df55640aa Also clean *.la files in LIBEXEC, and recursively so, here and for
TARGLIB.
2014-07-12 20:57:57 +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
Gerald Pfeifer
99bd68b255 Update to the GCC 4.7.4 release which closes the GCC 4.7 release branch.
Due to the way we have been handling PORTREVISION before lang/gcc48 this
requires PORTEPOCH.

Also, since this is now final and stable, no longer bootstrap this port.
2014-06-24 14:48:52 +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
480f645182 Update to the 20140419 snapshot of GCC 4.7.4.
Add pkg-message that references the need to use -Wl,-rpath=... . [1]

PR:		185902 [1]
2014-04-21 03:13:26 +00:00
Gerald Pfeifer
ec906515b0 Update to the 20140412 snapshot of GCXC 4.7.4.
Extend full-regression-test by running contrib/test_summary.
2014-04-13 14:17:39 +00:00
Gerald Pfeifer
e2fddfdcda Properly remove man/man1/rebuild-gcj-db47.1.gz by removing the
uncompressed version since post-install runs before compress-man.

Submitted by:	mat
2014-04-07 21:41:45 +00:00
Gerald Pfeifer
90dcba274f Update to the 20140405 snapshot of GCC 4.7.4.
No longer install rebuild-gcj-db47 (which requires bash among others)
and its man page.
2014-04-07 09:17:06 +00:00
Gerald Pfeifer
0764ec1707 Update to the 20140329 snapshot of GCC 4.7.4.
Replace USE_BZIP2 by USES=tar:bzip2.
2014-04-01 06:14:22 +00:00
Gerald Pfeifer
56bf763338 Update to the 20140315 snapshot of GCC 4.7.4. 2014-03-16 22:26:50 +00:00
Gerald Pfeifer
04bfaa8ecd Update the default version of GCC used in the Ports Collection from
GCC 4.6.4 to GCC 4.7.3.  This entails updating the lang/gcc port as
well as changing the default in Mk/bsd.default-versions.mk.

This adds powerpc64 as a supported architecture (and removes ia64,
though it can be supported by manually installing lang/gcc48).

New binaries %%GNU_HOST%%-gcc-ar47, %%GNU_HOST%%-gcc-nm47, and
%%GNU_HOST%%-gcc-ranlib47 are provided to support link-time
optimization (LTO) which scales significantly better.

And it adds support for indirect functions (IFUNCS), experimental
support for transactional memory in the compiler as well as a supporting
run-time library called libitm, a new string length optimization pass,
and support for atomic operations specifying the C++11/C11 memory model.

Version 3.1 of the OpenMP specification is now supported for the C,
C++, and Fortran compilers.

GCC accepts the options -std=c11 and -std=gnu11 for the C11 revision
of the ISO C standard which inlcude support for unicode strings,
nonreturning functions (_Noreturn and <stdnoreturn.h>), alignment
support (_Alignas, _Alignof, max_align_t, <stdalign.h>), and a
__builtin_complex built-in function.

The C++ frontend now accepts the -std=c++11, -std=gnu++11, and
-Wc++11-compat options and implements many C++11 features of the
language including extended friends syntax, explicit override
control, non-static data member initializers, user-defined literals,
alias declarations, delegating constructors, atomic classes, and more.

The C++ standard library and Fortran frontend have received many
improvements.  See http://gcc.gnu.org/gcc-4.7/changes.html for an
extense list of changes; http://gcc.gnu.org/gcc-4.7/porting_to.html
for information on how to port to that new version.

PR:		182136
Supported by:	Christoph Moench-Tegeder <cmt@burggraben.net> (fixing many ports)
Tested by:	bdrewery (two -exp runs)
2014-03-10 20:41:10 +00:00
Gerald Pfeifer
7a2cbb4434 Update to the 20140222 snapshot of GCC 4.7.4. 2014-02-27 00:19:12 +00:00
Gerald Pfeifer
e0519be391 Update to the 20140215 snapshot of GCC 4.7.4.
Set the license to a combination of GPLv3 (for the compiler itself) and
GPLv3 with GCC Runtime Library Exception (for the runtime).
2014-02-22 11:03:10 +00:00
Gerald Pfeifer
4fc5298731 Update to the 20140208 snapshot of GCC 4.7.4.
Configure with --enable-gnu-indirect-function to enable the "ifunc"
attribute, a GCC extension. [1]

Remove the man7 pages, which we are not packaging, from the staging
area to silence some warnings some are concerned about. [2]

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. [3]

Submitted by:	jmg [1], miwi [2]
Discussed with:	kib [1], antoine [2][3]
2014-02-15 14:27:04 +00:00
Alexey Dokuchaev
542dbc8cc7 Remove references to long unsupported alpha. 2014-01-29 14:54:52 +00:00
Gerald Pfeifer
66e2d99bb4 Update to the 20140118 snapshot of GCC 4.7.4. 2014-01-22 16:21:10 +00:00
Baptiste Daroussin
e04b632220 Fix properties on pkg-plist 2014-01-21 23:40:21 +00:00
Gerald Pfeifer
6527e22488 Update to the 20131214 snapshot of GCC 4.7.4. 2013-12-16 00:54:23 +00:00
Gerald Pfeifer
2d496af658 Update to the 20131130 snapshot of GCC 4.7.4.
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) and GCC (which should search its own include
directories with higher priority) can lead to build failures.
2013-12-02 01:32:15 +00:00