On Sun, Mar 27, 2011 at 06:16:49AM -0700, Julien Laffaye wrote: > > >Submitter-Id: current-users > >Originator: Julien Laffaye > >Organization: > >Confidential: no > >Synopsis: [PATCH] lang/python: speed up upgrade-site-packages > >Severity: non-critical > >Priority: low > >Category: ports > >Class: change-request > >Release: FreeBSD 8.2-RELEASE amd64 > >Environment: > System: FreeBSD chulak.lan 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Thu Feb 17 > 02:41:51 UTC 2011 > >Description: > Instead of asking each file in lib/python which package it comes from, ask > each package if it has a file in lib/python. > This speed things up significantly on my system. > > Port maintainer (pyt...@freebsd.org) is cc'd. > > Generated with FreeBSD Port Tools 0.99 > >How-To-Repeat: > >Fix: > > --- python-2.7,2.patch begins here --- > diff -ruN --exclude=CVS /usr/ports/lang/python.orig/Makefile > /usr/ports/lang/python/Makefile > --- /usr/ports/lang/python.orig/Makefile 2011-03-26 13:17:41.000000000 > +0000 > +++ /usr/ports/lang/python/Makefile 2011-03-27 14:09:30.000000000 +0100 > @@ -25,15 +25,9 @@ > > # Major upgrade support > PORTUPGRADE_CMD= ${LOCALBASE}/sbin/portupgrade > -PKG_WHICH_CMD= ${LOCALBASE}/sbin/pkg_which > -XARGS_CMD= ${XARGS} -0 > > .if defined(USE_PORTMASTER) > PORTUPGRADE_CMD= ${LOCALBASE}/sbin/portmaster > -PORTUPGRADE_ARGS?= "" > -PKG_WHICH_CMD= /usr/sbin/pkg_info -qW > -JOBS= ${SYSCTL} -n kern.smp.cpus > -XARGS_CMD= ${XARGS} -L 1 -0 -P $$(${JOBS}) > .endif > > upgrade-site-packages: > @@ -42,22 +36,21 @@ > ${FALSE}; \ > fi > > - @for ver in `echo ${_PYTHON_ALLBRANCHES}|${SED} 's/${PYTHON_VER}//'`; > do \ > - if [ -d ${PREFIX}/lib/python$$ver ]; then \ > - UPD=`${FIND} ${PREFIX}/lib/python$$ver \ > - -type f -print0 | \ > - ${XARGS_CMD} ${PKG_WHICH_CMD} | \ > - ${GREP} -Fv '?' | \ > - ${EGREP} -v '^python2?[0-5]?-2' | \ > - ${SORT} -u`; \ > - if [ "$$UPD" ]; then \ > - if [ -n ${PORTUPGRADE_ARGS} ]; then \ > - ${PORTUPGRADE_CMD} ${PORTUPGRADE_ARGS} > -f $$UPD; \ > - else \ > - ${PORTUPGRADE_CMD} -f $$UPD; \ > - fi; \ > - fi; \ > + @GREP_ARGS="-q"; \ > + for ver in `echo ${_PYTHON_ALLBRANCHES}|${SED} 's/${PYTHON_VER}//'`; do > \ > + GREP_ARGS="$${GREP_ARGS} -e lib/python$$ver"; \ > + done; \ > + UPD=""; \ > + for pkg in `${PKG_INFO} -Ea`; do \ > + ${PKG_INFO} -L $${pkg} | ${GREP} $${GREP_ARGS} && \ > + UPD="$${UPD} $${pkg}"; \ > + done; \ > + if [ "$${UPD}" ]; then \ > + if [ -n ${PORTUPGRADE_ARGS} ]; then \ > + ${PORTUPGRADE_CMD} ${PORTUPGRADE_ARGS} -f $${UPD}; \ > + else \ > + ${PORTUPGRADE_CMD} -f $${UPD}; \ > fi; \ > - done \ > + fi; \ > > .include <bsd.port.mk> > --- python-2.7,2.patch ends here --- > > _______________________________________________ > freebsd-python@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-python > To unsubscribe, send any mail to "freebsd-python-unsubscr...@freebsd.org"
Hi, I rework on this patch to avoid the use of ${SED} and I'll ask for a exp-run. My new patch is attached. Regards -- Sofian Brabez
pgpnZ1MRIosec.pgp
Description: PGP signature