Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Jan 2018 11:08:38 +0100
From:      Tijl Coosemans <tijl@FreeBSD.org>
To:        Stefan Esser <se@freebsd.org>
Cc:        lev@FreeBSD.org, freebsd-ports@freebsd.org
Subject:   Re: Why portmaster try to install python 3.6 when I have 3.4 set in /etc/make.conf?
Message-ID:  <20180111110838.776ae065@kalimero.tijl.coosemans.org>
In-Reply-To: <fe5ffb19-ebeb-2cec-d285-c1949e54c7fd@freebsd.org>
References:  <55707b9f-3d02-2982-2aa8-3570724608ac@FreeBSD.org> <dbe7b775-b957-a72f-c1a5-fd0a7877b525@freebsd.org> <fe5ffb19-ebeb-2cec-d285-c1949e54c7fd@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 10 Jan 2018 21:59:17 +0100 Stefan Esser <se@freebsd.org> wrote:
> 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@py36
>>>         ===>>> Reason: Moved to a flavored, generic, version  
>>> [...]  
>>> ===>>> All >> py34-pip-9.0.1 >> devel/py-setuptools@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@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

You're not supposed to set PYTHON3_DEFAULT directly.  Users should set
DEFAULT_VERSIONS=python3=3.4, like Lev showed above.



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