pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/py24-setuptools easy-install.pth is a volatile f...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/bee4dea3af7d
branches:  trunk
changeset: 520967:bee4dea3af7d
user:      joerg <joerg%pkgsrc.org@localhost>
date:      Fri Nov 03 13:56:46 2006 +0000

description:
easy-install.pth is a volatile file as installed eggs are registered in
it for sys.path handling. Create a default version on install time and
remove it when done. Also install a small script which allows registering
and unregistering of eggs installed via packages. Bump revision.

diffstat:

 devel/py24-setuptools/DEINSTALL            |  10 ++++++++++
 devel/py24-setuptools/INSTALL              |  14 ++++++++++++++
 devel/py24-setuptools/Makefile             |  19 +++++++++++++++----
 devel/py24-setuptools/PLIST                |   4 ++--
 devel/py24-setuptools/files/manage-eggs.py |  20 ++++++++++++++++++++
 5 files changed, 61 insertions(+), 6 deletions(-)

diffs (118 lines):

diff -r 94372f7d36c1 -r bee4dea3af7d devel/py24-setuptools/DEINSTALL
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/py24-setuptools/DEINSTALL   Fri Nov 03 13:56:46 2006 +0000
@@ -0,0 +1,10 @@
+#!/bin/sh
+#
+# $NetBSD: DEINSTALL,v 1.1 2006/11/03 13:56:46 joerg Exp $
+#
+
+case $STAGE in
+DEINSTALL)
+       ${RM} @PYSITELIB@/easy-install.pth
+       ;;
+esac
diff -r 94372f7d36c1 -r bee4dea3af7d devel/py24-setuptools/INSTALL
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/py24-setuptools/INSTALL     Fri Nov 03 13:56:46 2006 +0000
@@ -0,0 +1,14 @@
+#!/bin/sh
+#
+# $NetBSD: INSTALL,v 1.1 2006/11/03 13:56:46 joerg Exp $
+#
+
+case $STAGE in
+POST-INSTALL)
+       cat > @PYSITELIB@/easy-install.pth << EOF
+import sys; sys.__plen = len(sys.path)
+./setuptools-0.6c1-py2.4.egg
+import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:]; p=getattr(sys,'__egginsert',0); sys.path[p:p]=new; sys.__egginsert = p+len(new)
+EOF
+       ;;
+esac
diff -r 94372f7d36c1 -r bee4dea3af7d devel/py24-setuptools/Makefile
--- a/devel/py24-setuptools/Makefile    Fri Nov 03 13:44:12 2006 +0000
+++ b/devel/py24-setuptools/Makefile    Fri Nov 03 13:56:46 2006 +0000
@@ -1,31 +1,42 @@
-# $NetBSD: Makefile,v 1.3 2006/07/24 22:51:32 wiz Exp $
+# $NetBSD: Makefile,v 1.4 2006/11/03 13:56:46 joerg Exp $
 #
 
 DISTNAME=              setuptools-0.6c1-py2.4.egg
 PKGNAME=               py24-setuptools-0.6c1
+PKGREVISION=           1
 CATEGORIES=            devel
 MASTER_SITES=          http://cheeseshop.python.org/packages/2.4/s/setuptools/
 EXTRACT_SUFX=          # empty
 
-MAINTAINER=            pkgsrc-users%NetBSD.org@localhost
+MAINTAINER=            joerg%NetBSD.org@localhost
 HOMEPAGE=              http://peak.telecommunity.com/DevCenter/setuptools
 COMMENT=               New Python packaging system
 
 WRKSRC=                ${WRKDIR}
-NO_BUILD=      yes
 PYTHON_VERSIONS_ACCEPTED= 24
 PY_PATCHPLIST= yes
-PLIST_SUBST+=  PYVERSSUFFIX=${PYVERSSUFFIX:Q}
+PLIST_SUBST+=  PYVERSSUFFIX=${PYVERSSUFFIX:Q} PYPKGPREFIX=${PYPKGPREFIX}
 TMPSCRIPT=     ${WRKSRC}
 INSTCMD=       import sys; \
                sys.path.insert(0,"${DISTNAME}"); \
                from setuptools.command.easy_install import main; \
                main(["-s", "${TMPSCRIPT}", "${DISTNAME}"])
 
+CHECK_FILES_SKIP+=     ${PREFIX}/${PYSITELIB}/easy-install.pth
+
+FILES_SUBST+=  PYSITELIB=${PREFIX}/${PYSITELIB}
+
+do-build:
+       ${SED} -e 's,@PYTHON@,${PYTHONBIN},' \
+              -e 's,@PYPREFIX@,${PYPKGPREFIX},' \
+              -e 's,@PYSITELIB@,${PREFIX}/${PYSITELIB},' \
+              ${FILESDIR}/manage-eggs.py > ${WRKSRC}/manage-eggs.py
+
 do-install:
        cd ${WRKSRC} && ${PYTHONBIN} -c ${INSTCMD:Q}
        ${INSTALL_SCRIPT} ${TMPSCRIPT}/easy_install \
                ${PREFIX}/bin/easy_install${PYVERSSUFFIX}
+       ${INSTALL_SCRIPT} ${WRKSRC}/manage-eggs.py ${PREFIX}/bin/${PYPKGPREFIX}-manage-eggs
 
 .include "../../lang/python/extension.mk"
 .include "../../mk/bsd.pkg.mk"
diff -r 94372f7d36c1 -r bee4dea3af7d devel/py24-setuptools/PLIST
--- a/devel/py24-setuptools/PLIST       Fri Nov 03 13:44:12 2006 +0000
+++ b/devel/py24-setuptools/PLIST       Fri Nov 03 13:56:46 2006 +0000
@@ -1,6 +1,6 @@
-@comment $NetBSD: PLIST,v 1.2 2006/07/24 22:51:32 wiz Exp $
+@comment $NetBSD: PLIST,v 1.3 2006/11/03 13:56:46 joerg Exp $
 bin/easy_install${PYVERSSUFFIX}
-${PYSITELIB}/easy-install.pth
+bin/${PYPKGPREFIX}-manage-eggs
 ${PYSITELIB}/setuptools-${PKGVERSION}-py2.4.egg/EGG-INFO/PKG-INFO
 ${PYSITELIB}/setuptools-${PKGVERSION}-py2.4.egg/EGG-INFO/SOURCES.txt
 ${PYSITELIB}/setuptools-${PKGVERSION}-py2.4.egg/EGG-INFO/dependency_links.txt
diff -r 94372f7d36c1 -r bee4dea3af7d devel/py24-setuptools/files/manage-eggs.py
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/devel/py24-setuptools/files/manage-eggs.py        Fri Nov 03 13:56:46 2006 +0000
@@ -0,0 +1,20 @@
+#!@PYTHON@
+
+import sys
+
+from setuptools.command.easy_install import PthDistributions
+from pkg_resources import find_distributions
+
+usage = "@PYPREFIX@-manage-eggs [ register | unregister ] egg\n"
+
+if len(sys.argv) != 3 or sys.argv[1] not in ("register", "unregister"):
+       sys.stderr.write(usage)
+       sys.exit(1)
+
+pth = PthDistributions("@PYSITELIB@/easy-install.pth")
+distrib = find_distributions(sys.argv[2], True).next()
+if sys.argv[1] == "register":
+       pth.add(distrib)
+elif sys.argv[1] == "unregister":
+       pth.remove(distrib)
+pth.save()



Home | Main Index | Thread Index | Old Index