# Why does devel/pear want lang/php5, not lang/php55?



## dvl@ (Jun 12, 2014)

Can you see why this poudriere build selects lang/php5, and not lang/php55?  I have DEFAULT_VERSIONS= php=55 yet devel/pear gets lang/php5 as a dependent, and I do not understand why.

Why does lang/php5 get invoked and not lang/php55?


```
$ cat /usr/local/etc/poudriere.d/make.conf 
NO_X=true
NO_X11=yes

DEFAULT_VERSIONS= perl5=5.16 ruby=1.9 python=2.7 python2=2.7 php=55 mysql=55 pgsql=92
WITH_PKGNG=yes


$ cat /usr/local/etc/poudriere.d/supernews-make.conf
# to avoid running openvpn tests which will fail in a jail
WITHOUT_CHECK=yes

DEFAULT_VERSIONS= pgsql=91




[dan@slocum:/usr/local/etc/poudriere.d] $ sudo poudriere bulk -j 92amd64 -z supernews -vv -p default devel/pear 
====>> Creating the reference jail... done
====>> Mounting system devices for 92amd64-default-supernews
====>> Mounting ports/packages/distfiles
====>> Mounting packages from: /usr/local/poudriere/data/packages/92amd64-default-supernews
====>> Mounting /var/db/ports from: /usr/local/etc/poudriere.d/92amd64-supernews-options
====>> Logs: /usr/local/poudriere/data/logs/bulk/92amd64-default-supernews/2014-06-12_13h50m21s
====>> WWW: http://services.example.org/poudriere//bulk/92amd64-default-supernews/2014-06-12_13h50m21s
====>> Appending to make.conf: /usr/local/etc/poudriere.d/make.conf
====>> Appending to make.conf: /usr/local/etc/poudriere.d/supernews-make.conf
/etc/resolv.conf -> /usr/local/poudriere/data/build/92amd64-default-supernews/ref/etc/resolv.conf
====>> Starting jail 92amd64-default-supernews
====>> Loading MOVED
====>> Calculating ports order and dependencies
====>> Computing deps for devel/pear
====>> DEBUG: devel/pear depends on lang/php5
====>> Computing deps for lang/php5
====>> DEBUG: lang/php5 depends on devel/autoconf
====>> Computing deps for devel/autoconf
====>> DEBUG: devel/autoconf depends on devel/autoconf-wrapper
====>> Computing deps for devel/autoconf-wrapper
====>> DEBUG: devel/autoconf-wrapper depends on ports-mgmt/pkg
====>> Computing deps for ports-mgmt/pkg
====>> DEBUG: devel/autoconf depends on devel/gmake
====>> Computing deps for devel/gmake
====>> DEBUG: devel/gmake depends on converters/libiconv
====>> Computing deps for converters/libiconv
====>> DEBUG: converters/libiconv depends on ports-mgmt/pkg
====>> DEBUG: devel/gmake depends on devel/gettext
====>> Computing deps for devel/gettext
====>> DEBUG: devel/gettext depends on converters/libiconv
====>> DEBUG: devel/gettext depends on ports-mgmt/pkg
====>> DEBUG: devel/gmake depends on ports-mgmt/pkg
====>> DEBUG: devel/autoconf depends on devel/m4
====>> Computing deps for devel/m4
====>> DEBUG: devel/m4 depends on ports-mgmt/pkg
====>> DEBUG: devel/autoconf depends on lang/perl5.16
====>> Computing deps for lang/perl5.16
====>> DEBUG: lang/perl5.16 depends on ports-mgmt/pkg
====>> DEBUG: devel/autoconf depends on misc/help2man
====>> Computing deps for misc/help2man
====>> DEBUG: misc/help2man depends on devel/gettext
====>> DEBUG: misc/help2man depends on devel/gmake
====>> DEBUG: misc/help2man depends on devel/p5-Locale-gettext
====>> Computing deps for devel/p5-Locale-gettext
====>> DEBUG: devel/p5-Locale-gettext depends on devel/gettext
====>> DEBUG: devel/p5-Locale-gettext depends on lang/perl5.16
====>> DEBUG: devel/p5-Locale-gettext depends on ports-mgmt/pkg
====>> DEBUG: misc/help2man depends on lang/perl5.16
====>> DEBUG: misc/help2man depends on ports-mgmt/pkg
====>> DEBUG: devel/autoconf depends on ports-mgmt/pkg
====>> DEBUG: lang/php5 depends on devel/pcre
====>> Computing deps for devel/pcre
====>> DEBUG: devel/pcre depends on ports-mgmt/pkg
====>> DEBUG: lang/php5 depends on ports-mgmt/pkg
====>> DEBUG: lang/php5 depends on textproc/libxml2
====>> Computing deps for textproc/libxml2
====>> DEBUG: textproc/libxml2 depends on converters/libiconv
====>> DEBUG: textproc/libxml2 depends on devel/gmake
====>> DEBUG: textproc/libxml2 depends on devel/pkgconf
====>> Computing deps for devel/pkgconf
====>> DEBUG: devel/pkgconf depends on ports-mgmt/pkg
====>> DEBUG: textproc/libxml2 depends on ports-mgmt/pkg
====>> DEBUG: devel/pear depends on ports-mgmt/pkg
====>> DEBUG: devel/pear depends on textproc/php5-xml
====>> Computing deps for textproc/php5-xml
====>> DEBUG: textproc/php5-xml depends on devel/autoconf
====>> DEBUG: textproc/php5-xml depends on lang/php5
====>> DEBUG: textproc/php5-xml depends on ports-mgmt/pkg
====>> DEBUG: textproc/php5-xml depends on textproc/libxml2
====>> Sanity checking the repository
^C====>> Error: Signal caught, cleaning up and exiting
====>> Cleaning up
====>> Umounting file systems
[dan@slocum:/usr/local/etc/poudriere.d] $
```


----------



## SirDice (Jun 12, 2014)

It's probably because the DEFAULT_VERSIONS of supernews-make.conf is overruling the one defined in your default make.conf. The variable's values are not added, one simply replaces the other. And the other doesn't have a default setting for PHP so it'll use the system's default, which is php5.

This may work better:
make.conf:

```
DEFAULT_VERSIONS= perl5=5.16 ruby=1.9 python=2.7 python2=2.7 php=55 mysql=55
```
supernews-make.conf:

```
DEFAULT_VERSIONS+= pgsql=91
```
Although I'm not sure that works, you can always define the whole thing:

```
DEFAULT_VERSIONS= perl5=5.16 ruby=1.9 python=2.7 python2=2.7 php=55 mysql=55 pgsql=91
```


----------



## dvl@ (Jun 12, 2014)

That's it!  Thank you.


----------

