Boost 1.55.0 (Was: Re: PowerPC Packages)

Nathan Whitehorn nwhitehorn at freebsd.org
Thu Jun 26 17:38:45 UTC 2014


On 06/26/14 08:44, Baptiste Daroussin wrote:
> On Thu, Jun 26, 2014 at 08:35:14AM -0700, Nathan Whitehorn wrote:
>> On 06/26/14 03:02, Alexey Dokuchaev wrote:
>>> On Wed, Jun 25, 2014 at 07:23:05AM -0700, Justin Hibbits wrote:
>>>> As I mentioned earlier, you can set "FAVORITE_COMPILER=gcc" in
>>>> make.conf, and it'll build with gcc47.
>>> FAVORITE_COMPILER looks more like a hack to me.  Ideally boost's port
>>> Makefile should be fixed instead.
>>>
>>> I also would rather use system compiler (whether it's gcc4.2 or clang)
>>> instead of gcc47.
>>>
>>> ./danfe
>>>
>> Yes, it should be made to respect whatever cc is.
> As long as cc is supported upstream, boost being a nightmare to maintain I will
> reject all patches that are not accepted upstream first, otherwise bumping to
> 1.56 will be painful.
>
> That said I fully support the effort.
>
> regards,
> Bapt

The following patch fixes the issue for me (as well as several other 
ports). I'll let you decide whether this is how you want to handle the 
problem.
-Nathan

Index: Mk/Uses/compiler.mk
===================================================================
--- Mk/Uses/compiler.mk (revision 358026)
+++ Mk/Uses/compiler.mk (working copy)
@@ -75,7 +75,9 @@
  ALT_COMPILER_TYPE=     none
  _ALTCCVERSION=
  .if ${COMPILER_TYPE} == gcc && exists(/usr/bin/clang)
+.if ${ARCH} == amd64 || ${ARCH} == i386 # clang often non-default for a 
reason
  _ALTCCVERSION!=        /usr/bin/clang --version
+.endif
  .elif ${COMPILER_TYPE} == clang && exists(/usr/bin/gcc)
  _ALTCCVERSION!=        /usr/bin/gcc --version
  .endif
@@ -138,7 +140,7 @@

  .if ${_COMPILER_ARGS:Mc++11-lang}
  .if !${COMPILER_FEATURES:Mc++11}
-.if defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc
+.if (defined(FAVORITE_COMPILER) && ${FAVORITE_COMPILER} == gcc) || 
(${ARCH} != amd64 || ${ARCH} != i386) # clang not always supported on Tier-2
  USE_GCC=       yes
  CHOSEN_COMPILER_TYPE=  gcc
  .elif (${COMPILER_TYPE} == clang && ${COMPILER_VERSION} < 33) || 
${COMPILER_TYPE} == gcc



More information about the freebsd-ports mailing list