[HEADSUP] FYI: patch to ports that do not build with clang has been committed

Roman Divacky rdivacky at freebsd.org
Wed Oct 10 15:18:03 UTC 2012


Can we arrange exp builds with FORCE_BASE_CC_FOR_TESTING=clang that
will report all ports with USE_GCC=* but build with clang?

Lets say every three months or so?

On Tue, Oct 09, 2012 at 07:45:23PM -0500, Mark Linimon wrote:
> The commit mail hasn't gone through yet, so I guess I need to post this
> first and reference the commit mail later.
> 
> Sometime in the near future, the default CC on -current will be switched
> to clang.  The patch I have committed is a workaround -- an interim measure --
> to get ready for this transition.
> 
> I have made changes to ports/Mk/bsd.gcc.mk that allow the addition of
> "USE_GCC=any" to a port's Makefile, and then committed that change to
> various ports.  In most (but not all!) cases this will tell the port
> "build with gcc instead of clang" (*) .
> 
> For those users with CC installed as gcc (including -stable), this
> patch should have no effect.  Variations of combinations have been
> heavily tested on pointyhat-west.  If there are any regressions, please
> contact me.
> 
> You can see the difference in the errorlogs here:
> 
> With USE_GCC=any:
> 
>   http://pointyhat-west.isc.freebsd.org/errorlogs/amd64-errorlogs/e.9-exp-clang.20121007231359.pointyhat-west/index-category.html
> 
> Without USE_GCC=any:
> 
>   http://pointyhat-west.isc.freebsd.org/errorlogs/amd64-errorlogs/e.9-exp-clang.20121005165436.pointyhat-west/index-category.html
> 
> While the absolute number of errors is not that much different, that
> is a false indication: over 2500 more packages are built "with" than
> "without".
> 
> For those who wish to build *only* with clang, and thus defeat the
> workaround, simply set FORCE_BASE_CC_FOR_TESTING=anything, either
> in the Makefile line, or, if you are adventurous, in your /etc/make.conf.
> We appreciate all the testing that we can get (it is too much for any
> small group of people, much less one person.)
> 
> In the long run, I would like to see as many ports built natively with
> clang as possible, and I appreciate the work that people have been doing
> to move us towards that goal.  However, once the switch is made, it
> would have been a burden to everyone tracking -current to have suddenly
> found themselves "enlisted" in that effort :-)  So, for the medium-term,
> this workaround should reduce the POLA violation.
> 
> *Note* that due to the high number (over a thousand!) ports that do not
> build with clang, I arbitrarily decided to apply the workaround only to
> "ports that block 2 or more other ports from building" union "important
> ports".  This does not mean that the workaround shouldn't be applied to
> other ports that are too hard to fix.
> 
> This is part 1 of a set of patches that are being proposed to deal with
> the switchover.  As I merge and test them some more, I will put them out
> for further review.
> 
> Thanks.
> 
> mcl
> 
> * several ports are very, very, clever, and detect clang anyways; others
> build with gcc if CC is unset, but don't with CC=gcc.  These ports are
> broken, and need to be fixed as we continue the process of switching over.
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"


More information about the freebsd-ports mailing list