Why portmaster try to install python 3.6 when I have 3.4 set in /etc/make.conf?
Stefan Esser
se at freebsd.org
Wed Jan 10 20:59:29 UTC 2018
Am 10.01.18 um 21:30 schrieb Stefan Esser:
> Am 10.01.18 um 17:29 schrieb Lev Serebryakov:
>> I have system with pre-FLAVORed ports installed, and try to update
>> ports with new version of "portmaster". My "/etc/make.conf" contains:
>>
>> DEFAULT_VERSIONS+= python2=2.7
>> DEFAULT_VERSIONS+= python3=3.4
>> DEFAULT_VERSIONS+= python=3.4
>>
>> But "portmaster -a" try to install python 3.6:
>>
>> ===>>> All >> py34-pip-9.0.1 (12/12)
>> ===>>> The devel/py3-pip port moved to devel/py-pip at py36
>> ===>>> Reason: Moved to a flavored, generic, version
>> [...]
>> ===>>> All >> py34-pip-9.0.1 >> devel/py-setuptools at py36 >>
>> lang/python36 (14/14)
>
> Another example that the FLAVOR feature is not well designed :(
>
> The entry in /usr/ports/MOVED maps devel/py3-pip to devel/py-pip at py36
> even though building that port with FLAVOR=py34 builds the correct
> version with the expected dependency on Python-3.4.
>
> If at least the output of "make pretty-flavors-package-names" did hint
> at the existence of a package for FLAVOR=py34, I could make portmaster
> override the wrong FLAVOR obtained from the MOVED file.
>
> But the output of that command is:
>
> $ cd /usr/ports/devel/py-py
> $ make pretty-flavors-package-names
> py27: py27-py-1.5.2
> py36: py36-py-1.5.2
I have just checked, that the ports infrastructure already kind of
supports this case. With PYTHON3_DEFAULT=3.4 set in /etc/make.conf,
it is possible to determine the flavor that corresponds to the
package to be upgraded:
$ PYTHON3_DEFAULT=3.4 make pretty-flavors-package-names
py27: py27-py-1.5.2
py34: py34-py-1.5.2
I'll try to get this feature implemented in portmaster, but it may
take a few days ...
Regards, STefan
More information about the freebsd-ports
mailing list