Re: Clang as default compiler November 4th

2012-09-12 Thread Lars Engels
On Wed, Sep 12, 2012 at 04:15:20AM -0500, Mark Linimon wrote:
> On Tue, Sep 11, 2012 at 11:27:50AM +0200, Lars Engels wrote:
> > At the moment the ports maintainers don't give much about if their ports
> > build with CLANG or not because they're not forced to.
> 
> I think this is a mis-representation.
> 
> Adding the requirement "your ports must work on clang" is adding an
> ex-post-facto requirement.  This creates the following matrix of what
> we are implicitly asking maintainers to do:
> 
> (FreeBSD 7|8|9|10) * (amd64|arm|i386|powerpc|sparc64) * (base gcc|base clang)
> 
> It is completely insane to expect anyone to be able to test in all of those
> environments, or even a tiny subset of them.  This isn't what most people
> sign up for when they sign up to maintain ports.

No, I didn't mean it that way. I only meant that the people /
maintainers running CURRENT will actually see that their ports don't
work and if they want to keep on using them on CURRENT they need to fix
them. e.g. two of the ports I maintain don't build with CLANG, yet. I
just checked that on the wiki page [1].
I had to look that up manually, but would have experienced that if I my
CURRENT box was building with CLANG by default. :)

It's clear that we cannot expect our maintainers to check all possible
combinations of FreeBSD, architecture and compiler.

> 
> > Those who don't run CURRENT won't notice, but those who do will have to
> > get their butts up and fix the ports
> 
> I think it's foolish to assume that maintainres don't have their butts in
> gear as it is.  Please note, we have nearly 1300 PRs, hundreds of ports with
> build errors and/or PRs, and hundreds that fail on -current only.  I try to
> advertise all these things the best I know how.  Adding the hundreds that
> fail on -clang only and then blaming the maintainers is simply going to be
> counter-productive.



[1] http://wiki.freebsd.org/PortsAndClang


pgpJEPGfwlCHs.pgp
Description: PGP signature


Re: Clang as default compiler November 4th

2012-09-11 Thread Lars Engels
On Mon, Sep 10, 2012 at 10:54:04PM -0700, Doug Barton wrote:
> As of last week, 4,680 ports out of 23,857 failed to build with clang on
> 9-amd64. That's almost a 20% failure rate. Until we have better support
> for either building ports with clang, or have better support for the
> idea of a "ports compiler," this change is premature. The ports are an
> important part of the FreeBSD Operating _System_, and pulling the
> trigger on the default compiler before the ports problems are addressed
> robustly seems like a big fat FU.
> 
> That said, I agree that this issue needs to be addressed. In fact, 9
> months before the release of 9.0 I said on the internal committers list
> that there was no point in making a new release until we had thoroughly
> addressed both the default compiler for the base, and resolving the
> "ports compiler" issue. While there has been some movement on the
> former, there has been nothing done on the latter for years now, even
> though everyone agrees that it is an important issue.
> 
> I'd like to request that rather than moving the default compiler
> prematurely that you call for volunteers to address the problems with
> the ports. Both the issues of fixing more ports to build correctly with
> clang, and the issue of defining a "ports compiler" version of gcc (and
> appropriate infrastructure) for those that can't. Once those issues are
> resolved there would not be any further obstacles to moving the default.
> Until they are, the change is premature.
> 
> Doug

Doug, as you can already use CLANG instead of GCC now, you will be able
to use GCC instead of CLANG after November 4th.

At the moment the ports maintainers don't give much about if their ports
build with CLANG or not because they're not forced to.
Those who don't run CURRENT won't notice, but those who do will have to
get their butts up and fix the ports, so 10.0 can have 99% of all ports
build with CLANG and even 8.x and 9.x can already profit from having the
broken ports fixed now.


pgpJylqaSN0pf.pgp
Description: PGP signature