Bug 217008 - lang/cint: fails to build with lang/gcc6 or later
Summary: lang/cint: fails to build with lang/gcc6 or later
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Raphael Kubo da Costa
URL: https://gcc.gnu.org/gcc-6/porting_to....
Keywords:
Depends on:
Blocks: 219275
  Show dependency treegraph
 
Reported: 2017-02-11 20:02 UTC by Jan Beich
Modified: 2017-08-17 18:57 UTC (History)
3 users (show)

See Also:
rakuco: maintainer-feedback-
rakuco: merge-quarterly+


Attachments
Proposed patch (674 bytes, patch)
2017-07-28 14:11 UTC, Raphael Kubo da Costa
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Beich freebsd_committer freebsd_triage 2017-02-11 20:02:01 UTC
cint/src/dict/gcc4strm.cxx: In function 'int G__G__stream_13_0_9(G__value*, const char*, G__param*, int)':
cint/src/dict/gcc4strm.cxx:1052:118: error: 'const class std::basic_ios<char>' has no member named 'operator void*'; did you mean 'operator bool'?
       G__letint(result7, 89, (long) ((const basic_ios<char,char_traits<char> >*) G__getstructoffset())->operator void*());
                                                                                                                      ^

gcc6 build log: http://sprunge.us/cWdJ
Comment 1 Jan Beich freebsd_committer freebsd_triage 2017-02-11 20:03:45 UTC
Adding USE_CXXSTD=gnu++98 won't hide the issue unless the ports learns to respect CXXFLAGS.
Comment 2 Raphael Kubo da Costa freebsd_committer freebsd_triage 2017-07-28 14:11:56 UTC
Created attachment 184802 [details]
Proposed patch

The attached patch both fixes the build with GCC 6 by passing -std=gnu++03 as well as teaches the port to respect CFLAGS and CXXFLAGS.

The patch should be MFH'ed as well.
Comment 3 commit-hook freebsd_committer freebsd_triage 2017-08-13 11:11:31 UTC
A commit references this bug:

Author: rakuco
Date: Sun Aug 13 11:10:47 UTC 2017
New revision: 447876
URL: https://svnweb.freebsd.org/changeset/ports/447876

Log:
  Make the port respect CFLAGS and CXXFLAGS.

  Bump PORTREVISION since this changes the flags the port is built with. This is
  step 1 towards making the port build with GCC 6.

  PR:		217008
  Approved by:	maintainer timeout (fjoe, 16 days)
  MFH:		2017Q3

Changes:
  head/lang/cint/Makefile
Comment 4 commit-hook freebsd_committer freebsd_triage 2017-08-13 11:13:35 UTC
A commit references this bug:

Author: rakuco
Date: Sun Aug 13 11:13:00 UTC 2017
New revision: 447877
URL: https://svnweb.freebsd.org/changeset/ports/447877

Log:
  Explicitly pass -std=gnu++03 to the build.

  This allows the port to build with GCC 6, which defaults to -std=gnu++14. The
  port's code does not work with C++11 or later.

  PR:		217008
  Approved by:	maintainer timeout (fjoe, 16 days)

Changes:
  head/lang/cint/Makefile
Comment 5 commit-hook freebsd_committer freebsd_triage 2017-08-17 16:02:09 UTC
A commit references this bug:

Author: rakuco
Date: Thu Aug 17 16:01:06 UTC 2017
New revision: 448135
URL: https://svnweb.freebsd.org/changeset/ports/448135

Log:
  MFH: r447876

  Make the port respect CFLAGS and CXXFLAGS.

  Bump PORTREVISION since this changes the flags the port is built with. This is
  step 1 towards making the port build with GCC 6.

  PR:		217008
  Approved by:	maintainer timeout (fjoe, 16 days)

  Approved by:	ports-secteam (feld)

Changes:
_U  branches/2017Q3/
  branches/2017Q3/lang/cint/Makefile
Comment 6 Gerald Pfeifer freebsd_committer freebsd_triage 2017-08-17 18:57:44 UTC
I don't think this should be actually merger quarterly.  The issue
only presents itself when the default is switched to GCC 6 -- which
really does not make sense on a quarterly branch.