>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"