Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 Nov 2015 14:05:14 +1100
From:      Kubilay Kocak <koobs@FreeBSD.org>
To:        Jan Beich <jbeich@vfemail.net>, Jason Unovitch <junovitch@FreeBSD.org>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: ${PYTHON_CMD}/${PERL} in _CONFIGURE_WITH not working
Message-ID:  <564FDF6A.70405@FreeBSD.org>
In-Reply-To: <vb8x-ntzi-wny@vfemail.net>
References:  <20151120030756.GA28016@Silverstone.nc-us.unovitch.com> <vb8x-ntzi-wny@vfemail.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 20/11/2015 4:02 PM, Jan Beich wrote:
> Jason Unovitch <junovitch@FreeBSD.org> writes:
> 
>> PERL_USES=                      perl5
>> PERL_CONFIGURE_ENABLE=          perl
>> PERL_CONFIGURE_WITH=            perl=${PERL} perl-bindings
>> PYTHON_USES=                    python:2
>> PYTHON_CONFIGURE_ENABLE=        python
>> PYTHON_CONFIGURE_WITH=          python=${PYTHON_CMD}
> [...]
>> % make -VCONFIGURE_ARGS
>> "--enable-python --with-python= "
>> "--enable-perl --with-perl= --with-perl-bindings"
> 
> It appears bsd.option.mk expands _WITH and _ENABLE twice unlike _ON/_OFF:
> once in .for loop and once (lazily) when CONFIGURE_ARGS is referenced.
> Try using $${PERL} and $${PYTHON_CMD} or the following patch:
> 
> # XXX incomplete as there're more cases with premature expansion
> Index: Mk/bsd.options.mk
> ===================================================================
> --- Mk/bsd.options.mk	(revision 401846)
> +++ Mk/bsd.options.mk	(working copy)
> @@ -491,16 +491,8 @@ ${_u:tu}=		${${opt}_VARS:M${var}=*:C/[^=]*=//:C/^"
>  .        endif
>  .      endfor
>  .    endif
> -.    if defined(${opt}_CONFIGURE_ENABLE)
> -.      for iopt in ${${opt}_CONFIGURE_ENABLE}
> -CONFIGURE_ARGS+=	--enable-${iopt}
> -.      endfor
> -.    endif
> -.    if defined(${opt}_CONFIGURE_WITH)
> -.      for iopt in ${${opt}_CONFIGURE_WITH}
> -CONFIGURE_ARGS+=	--with-${iopt}
> -.      endfor
> -.    endif
> +CONFIGURE_ARGS+=	${${opt}_CONFIGURE_ENABLE:C/.+/--enable-&/}
> +CONFIGURE_ARGS+=	${${opt}_CONFIGURE_WITH:C/.+/--with-&/}
>  .    for configure in CONFIGURE CMAKE QMAKE
>  .      if defined(${opt}_${configure}_ON)
>  ${configure}_ARGS+=	${${opt}_${configure}_ON}
> @@ -539,16 +531,8 @@ ${_u:tu}=		${${opt}_VARS_OFF:M${var}=*:C/[^=]*=//:
>  .        endif
>  .      endfor
>  .    endif
> -.    if defined(${opt}_CONFIGURE_ENABLE)
> -.      for iopt in ${${opt}_CONFIGURE_ENABLE}
> -CONFIGURE_ARGS+=	--disable-${iopt:C/=.*//}
> -.      endfor
> -.    endif
> -.    if defined(${opt}_CONFIGURE_WITH)
> -.      for iopt in ${${opt}_CONFIGURE_WITH}
> -CONFIGURE_ARGS+=	--without-${iopt:C/=.*//}
> -.      endfor
> -.    endif
> +CONFIGURE_ARGS+=	${${opt}_CONFIGURE_ENABLE:C/=.*//:C/.+/--disable-&/}
> +CONFIGURE_ARGS+=	${${opt}_CONFIGURE_WITH:C/=.*//:C/.+/--without-&/}
>  .    for configure in CONFIGURE CMAKE QMAKE
>  .      if defined(${opt}_${configure}_OFF)
>  ${configure}_ARGS+=	${${opt}_${configure}_OFF}
> 

Can you create an issue to fix this + MFH please?

./koobs



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?564FDF6A.70405>