Date: Wed, 10 Jan 2018 17:56:00 -0500 From: Jim Trigg <jtrigg@huiekin.org> To: 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: <D7CD81F6-9176-4595-A830-D8B4A7B149A1@huiekin.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
ISTR that there is a more generic variable that will cause make to work wit= h all flavors instead of the default "common" set=2E Not where I can easily= look up specifics right now=2E=2E=2E Thanks, Jim Trigg On January 10, 2018 3:59:17 PM EST, Stefan Esser <se@freebsd=2Eorg> wrote: >Am 10=2E01=2E18 um 21:30 schrieb Stefan Esser: >> Am 10=2E01=2E18 um 17:29 schrieb Lev Serebryakov: >>> I have system with pre-FLAVORed ports installed, and try to update >>> ports with new version of "portmaster"=2E My "/etc/make=2Econf" >contains: >>> >>> DEFAULT_VERSIONS+=3D python2=3D2=2E7 >>> DEFAULT_VERSIONS+=3D python3=3D3=2E4 >>> DEFAULT_VERSIONS+=3D python=3D3=2E4 >>> >>> But "portmaster -a" try to install python 3=2E6: >>> >>> =3D=3D=3D>>> All >> py34-pip-9=2E0=2E1 (12/12) >>> =3D=3D=3D>>> The devel/py3-pip port moved to devel/py-pip@py36 >>> =3D=3D=3D>>> Reason: Moved to a flavored, generic, version >>> [=2E=2E=2E] >>> =3D=3D=3D>>> All >> py34-pip-9=2E0=2E1 >> devel/py-setuptools@py36 >> >>> lang/python36 (14/14) >>=20 >> Another example that the FLAVOR feature is not well designed :( >>=20 >> The entry in /usr/ports/MOVED maps devel/py3-pip to devel/py-pip@py36 >> even though building that port with FLAVOR=3Dpy34 builds the correct >> version with the expected dependency on Python-3=2E4=2E >>=20 >> If at least the output of "make pretty-flavors-package-names" did >hint >> at the existence of a package for FLAVOR=3Dpy34, I could make >portmaster >> override the wrong FLAVOR obtained from the MOVED file=2E >>=20 >> But the output of that command is: >>=20 >> $ cd /usr/ports/devel/py-py >> $ make pretty-flavors-package-names >> py27: py27-py-1=2E5=2E2 >> py36: py36-py-1=2E5=2E2 > >I have just checked, that the ports infrastructure already kind of >supports this case=2E With PYTHON3_DEFAULT=3D3=2E4 set in /etc/make=2Econ= f, >it is possible to determine the flavor that corresponds to the >package to be upgraded: > >$ PYTHON3_DEFAULT=3D3=2E4 make pretty-flavors-package-names >py27: py27-py-1=2E5=2E2 >py34: py34-py-1=2E5=2E2 > >I'll try to get this feature implemented in portmaster, but it may >take a few days =2E=2E=2E > >Regards, STefan >_______________________________________________ >freebsd-ports@freebsd=2Eorg mailing list >https://lists=2Efreebsd=2Eorg/mailman/listinfo/freebsd-ports >To unsubscribe, send any mail to >"freebsd-ports-unsubscribe@freebsd=2Eorg" --=20 Sent from my Android device with K-9 Mail=2E Please excuse my brevity=2E From owner-freebsd-ports@freebsd.org Thu Jan 11 08:48:29 2018 Return-Path: <owner-freebsd-ports@freebsd.org> Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 92227E78177 for <freebsd-ports@mailman.ysv.freebsd.org>; Thu, 11 Jan 2018 08:48:29 +0000 (UTC) (envelope-from se@freebsd.org) Received: from mailout02.t-online.de (mailout02.t-online.de [194.25.134.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mailout00.t-online.de", Issuer "TeleSec ServerPass DE-2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 572782214 for <freebsd-ports@freebsd.org>; Thu, 11 Jan 2018 08:48:28 +0000 (UTC) (envelope-from se@freebsd.org) Received: from fwd36.aul.t-online.de (fwd36.aul.t-online.de [172.20.26.137]) by mailout02.t-online.de (Postfix) with SMTP id 525C641B0904; Thu, 11 Jan 2018 09:48:26 +0100 (CET) Received: from Stefans-MBP-LAN.fritz.box (Eq8bqTZU8h7P8ceNMyepFsbZcCWhzidXCz3E8Q6GlomT2HaYzVUX0q42RlAsVAKgao@[87.151.219.126]) by fwd36.t-online.de with (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384 encrypted) esmtp id 1eZYX0-37vbTU0; Thu, 11 Jan 2018 09:48:14 +0100 Subject: Re: Why portmaster try to install python 3.6 when I have 3.4 set in /etc/make.conf? To: Jim Trigg <jtrigg@huiekin.org>, freebsd-ports@freebsd.org References: <55707b9f-3d02-2982-2aa8-3570724608ac@FreeBSD.org> <dbe7b775-b957-a72f-c1a5-fd0a7877b525@freebsd.org> <fe5ffb19-ebeb-2cec-d285-c1949e54c7fd@freebsd.org> <D7CD81F6-9176-4595-A830-D8B4A7B149A1@huiekin.org> From: Stefan Esser <se@freebsd.org> Message-ID: <eb07c514-b218-904b-4538-a0e0402623fe@freebsd.org> Date: Thu, 11 Jan 2018 09:48:13 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <D7CD81F6-9176-4595-A830-D8B4A7B149A1@huiekin.org> Content-Type: text/plain; charset=windows-1252 Content-Language: en-US Content-Transfer-Encoding: 7bit X-ID: Eq8bqTZU8h7P8ceNMyepFsbZcCWhzidXCz3E8Q6GlomT2HaYzVUX0q42RlAsVAKgao X-TOI-MSGID: 80e51402-0846-4e5f-abd9-9ddfff73bf5a X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Porting software to FreeBSD <freebsd-ports.freebsd.org> List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-ports>, <mailto:freebsd-ports-request@freebsd.org?subject=unsubscribe> List-Archive: <http://lists.freebsd.org/pipermail/freebsd-ports/> List-Post: <mailto:freebsd-ports@freebsd.org> List-Help: <mailto:freebsd-ports-request@freebsd.org?subject=help> List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-ports>, <mailto:freebsd-ports-request@freebsd.org?subject=subscribe> X-List-Received-Date: Thu, 11 Jan 2018 08:48:29 -0000 Am 10.01.18 um 23:56 schrieb Jim Trigg: > ISTR that there is a more generic variable that will cause make to work with > all flavors instead of the default "common" set. Not where I can easily look > up specifics right now... FLAVOR support has many rough edges and I expect those to hurt us in one way or the other in the future. A lot of them could easily be fixed, but a sound design should have covered them from the beginning. There is no generic ALL_FLAVORS variable, but some of the generic FLAVOR support implemented in Mk/Uses does offer a way to access all FLAVORs. In the case of Python ports, you have to pass -D BUILD_ALL_PYTHON_FLAVORS to make to get FLAVOR set to all supported Python versions/flavors: $ make -V FLAVORS py27 py36 $ make -V FLAVORS -D BUILD_ALL_PYTHON_FLAVORS py27 py36 py35 py34 The upcoming Emacs flavor support will use a different parameter and for any of the many individual ports, that support flavors directly in their respective Makefiles, the variable will have a local name. There seems to be a clear opinion in the portmgr team, that not all flavors of each port shall be built by the package build cluster, but only those that are most commonly used (e.g. py27 and py36), which I understand because else there would be thousands of additional python packages (and later perl and others) that are hardly ever used. But there should still be provisions to obtain a full list of flavors in a generic way. (I had used "FLAVORS" to denote a list of all supported flavors and e.g. PKG_FLAVORS for those that are selected for the package builders, but FLAVORS for the selected set and ALL_FLAVORS for the complete set will do as well ...) I'm not going to work-around such deficiencies in the design of FLAVORs in portmaster. I'd have to follow each new port that is converted to flavors to check whether it has all flavors in FLAVORS and which other name it uses for a list of possible FLAVOR values (if such a list explicitly exists at all, it could also be implicitly present in the form of control structures in the port's Makefile). I'll ask portmgr for a few small changes (a generic ALL_FLAVORS variable and a make target that lists all package names and corresponding flavors for a port), and I hope I get approval for these changes. For now I'll have to develop a method that at least partially compensates the missing FLAVOR support features required for port management tools. Regards, STefan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D7CD81F6-9176-4595-A830-D8B4A7B149A1>