From owner-freebsd-python@FreeBSD.ORG Wed Jan 8 13:04:51 2014 Return-Path: Delivered-To: python@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DBAADC5F; Wed, 8 Jan 2014 13:04:50 +0000 (UTC) Received: from lmtp.galacsys.net (webmail.galacsys.net [IPv6:2001:1b78:0:1:d918:51d7:0:1]) by mx1.freebsd.org (Postfix) with ESMTP id 722BB1690; Wed, 8 Jan 2014 13:04:50 +0000 (UTC) Received: from martymac.org (webmail.galacsys.net [217.24.81.215]) by lmtp.galacsys.net (Postfix) with ESMTP id A29051FA5CD8; Wed, 8 Jan 2014 14:04:49 +0100 (CET) From: "Ganael LAPLANCHE" To: wg@FreeBSD.org Subject: Egginfo plist handling and PREFIX X-Openwebmail-Date: Wed, 8 Jan 2014 15:04:49 +0200 Message-Id: <20140108105819.M77522@martymac.org> X-Mailer: Open WebMail 2.01 20030425 X-OriginatingIP: 157.99.64.43 (ganael.laplanche@martymac.org) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Cc: python@FreeBSD.org X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Date: Wed, 08 Jan 2014 13:04:51 -0000 X-List-Received-Date: Wed, 08 Jan 2014 13:04:51 -0000 Hi, We may have a bug in r336553 (http://svnweb.freebsd.org/ports?view=revision&revision=336553) within the add-plist-egginfo target regarding PREFIX handling. It is no more possible to install e.g. sysutils/dvdvideo or sysutils/brebis with a custom PREFIX : # cd /usr/ports/sysutils/brebis # make PREFIX=/files/Down/brebis-test install [...] ===> Registering installation for brebis-0.8 pkg-static: lstat(/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test/lib/python3.3/site-packages/brebis-0.8-py3.3.egg-info/PKG-INFO): No such file or directory pkg-static: lstat(/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test/lib/python3.3/site-packages/brebis-0.8-py3.3.egg-info/SOURCES.txt): No such file or directory pkg-static: lstat(/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test/lib/python3.3/site-packages/brebis-0.8-py3.3.egg-info/dependency_links.txt): No such file or directory pkg-static: lstat(/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test/lib/python3.3/site-packages/brebis-0.8-py3.3.egg-info/top_level.txt): No such file or directory pkg-static: lstat(/tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test//tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test/lib/python3.3/site-packages/brebis-0.8-py3.3.egg-info/): No such file or directory *** Error code 74 Before installation, egginfo files are staged here : /tmp/wrkdirs/files/Ports/ports/sysutils/brebis/work/stage/files/Down/brebis-test/lib/python3.3/site-packages/brebis-0.8-py3.3.egg-info wich corresponds to ${STAGEDIR}${PREFIX}[...], not ${STAGEDIR}${PYTHONBASE}[...]. Replacing ${PYTHONBASE} by ${PREFIX} within Mk/bsd.python.mk with this patch : 8<------------------ --- Mk/bsd.python.mk.orig 2014-01-08 11:39:35.869744772 +0100 +++ Mk/bsd.python.mk 2014-01-08 11:42:47.999731061 +0100 @@ -515,23 +515,23 @@ add-plist-egginfo: .if !defined(PYDISTUTILS_NOEGGINFO) && \ !defined(PYDISTUTILS_AUTOPLIST) && \ (defined(INSTALLS_EGGINFO) || \ (defined(USE_PYDISTUTILS) && \ ${USE_PYDISTUTILS} != "easy_install")) && \ defined(PYTHON_REL) . for egginfo in ${PYDISTUTILS_EGGINFO} if [ -d "${PYDISTUTILS_EGGINFODIR}/${egginfo}" ]; then \ ${LS} ${PYDISTUTILS_EGGINFODIR}/${egginfo} | while read f; do \ - ${ECHO_CMD} ${PYDISTUTILS_EGGINFODIR:S;^${STAGEDIR}${PYTHONBASE}/;;}/${egginfo}/$${f} >> ${TMPPLIST}; \ + ${ECHO_CMD} ${PYDISTUTILS_EGGINFODIR:S;^${STAGEDIR}${PREFIX}/;;}/${egginfo}/$${f} >> ${TMPPLIST}; \ done; \ - ${ECHO_CMD} "@unexec rmdir \"%D/${PYDISTUTILS_EGGINFODIR:S;${STAGEDIR}${PYTHONBASE}/;;}/${egginfo}\" 2>/dev/null || true" >> ${TMPPLIST}; \ + ${ECHO_CMD} "@unexec rmdir \"%D/${PYDISTUTILS_EGGINFODIR:S;${STAGEDIR}${PREFIX}/;;}/${egginfo}\" 2>/dev/null || true" >> ${TMPPLIST}; \ fi; . endfor .else @${DO_NADA} .endif .if defined(PYDISTUTILS_AUTOPLIST) && defined(USE_PYDISTUTILS) _RELSITELIBDIR= ${PYTHONPREFIX_SITELIBDIR:S;${PREFIX}/;;} _RELLIBDIR= ${PYTHONPREFIX_LIBDIR:S;${PREFIX}/;;} 8<------------------ fixes the problem, but I am not sure it is the way to go. I may be missing something here. Any help would be greatly appreciated. Can you tell me what you think about that ? Thanks in advance, Best regards, -- Ganael LAPLANCHE http://www.martymac.org | http://contribs.martymac.org FreeBSD: martymac , http://www.FreeBSD.org