From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1S2bs7-0001Lr-UR for garchives@archives.gentoo.org; Wed, 29 Feb 2012 05:14:40 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C7EB2E0630; Wed, 29 Feb 2012 05:14:26 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id BC48AE0817; Wed, 29 Feb 2012 05:13:25 +0000 (UTC) Received: from mail-pz0-f52.google.com (mail-pz0-f52.google.com [209.85.210.52]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) (Authenticated sender: floppym) by smtp.gentoo.org (Postfix) with ESMTPSA id 44C551B4002; Wed, 29 Feb 2012 05:13:25 +0000 (UTC) Received: by dado14 with SMTP id o14so9652696dad.11 for ; Tue, 28 Feb 2012 21:13:23 -0800 (PST) Received-SPF: pass (google.com: domain of floppym@gentoo.org designates 10.68.225.73 as permitted sender) client-ip=10.68.225.73; Authentication-Results: mr.google.com; spf=pass (google.com: domain of floppym@gentoo.org designates 10.68.225.73 as permitted sender) smtp.mail=floppym@gentoo.org Received: from mr.google.com ([10.68.225.73]) by 10.68.225.73 with SMTP id ri9mr1827083pbc.70.1330492403730 (num_hops = 1); Tue, 28 Feb 2012 21:13:23 -0800 (PST) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Received: by 10.68.225.73 with SMTP id ri9mr1543995pbc.70.1330492403715; Tue, 28 Feb 2012 21:13:23 -0800 (PST) Received: by 10.68.73.162 with HTTP; Tue, 28 Feb 2012 21:13:23 -0800 (PST) In-Reply-To: <4F4D4380.9070909@gentoo.org> References: <4F4D4380.9070909@gentoo.org> Date: Wed, 29 Feb 2012 00:13:23 -0500 Message-ID: Subject: [gentoo-dev] Re: [gentoo-python] New eclass for Python From: Mike Gilbert To: Gentoo Dev , gentoo-python@lists.gentoo.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Archives-Salt: 9de136be-7023-4b17-8f16-7e2c27d1d910 X-Archives-Hash: dc11c4752dcbe15ccdae8079989fc9b4 On Tue, Feb 28, 2012 at 4:13 PM, Krzysztof Pawlik wro= te: > Hello, > > After some work during weekend on Python packages I've decided to start a > rewrite of Python/distutils eclass for installing Python packages. My mai= n goal > was simplicity and functionality similar to ruby-ng.eclass (thanks Ruby t= eam for > your great work!). Python team members already contributed comments and > suggestions and helped me to make the eclass better, thank you! > > Highlights: > =C2=A0- *SIMPLE*next > =C2=A0- uses PYTHON_TARGETS use-expand (no more python-updater, whoooo!) > =C2=A0- EAPI4 required, uses REQUIRED_USE > =C2=A0- <400 lines of code including documentation > =C2=A0- should work for >95% of packages (my educated guess) > =C2=A0- did I mention it's *SIMPLE*? > =C2=A0- easy to maintain & read so it's also easy to use > > Important thing: I'm not aiming at having 100% functionality of current > python.eclass+distutils.eclass in the new one, I think that simplicity is= more > important that supporting every possible, obscure case that's out there. > > I'm attaching the eclass itself and two ebuilds using it, code is also av= ailable > in my overlay at http://git.overlays.gentoo.org/gitweb/?p=3Ddev/nelchael.= git;a=3Dsummary > > If there are no objections then during the weekend (March 3, 4) I will ad= d this > to portage (after finishing remaining TODO items, PyPy requires 4G of RAM= (!!)). > > -- > Krzysztof Pawlik =C2=A0 =C2=A0key id: 0xF6A80E46 > desktop-misc, java, vim, kernel, python, apache... > # Phase function: src_unpack python-distutils-ng_src_unpack() { [[ "${PYTHON_OPTIONAL}" =3D "yes" ]] && { use python || return; } if type python_unpack &> /dev/null; then # This should not run anything specific to any single Python # implementation, keep it generic: python_unpack_all else [[ -n ${A} ]] && unpack ${A} fi } I think you meant to write "if type python_unpack_all". More to the point, I don't actually understand why this function exists. It doesn't actually do anything that default_src_unpack does not do already. Exporting it will clobber any vcs eclasses if the inherit order is wrong.