If perl is not installed on a system when running make index in /usr/ports, significant time is spent building the temp index files for each category before the entire process fails. The supplied patch performs a quick check first that will fail if perl is not in the system path and executable prior to performing the bulk of the work. How-To-Repeat: attempt to make index without perl
Responsible Changed From-To: freebsd-ports-bugs->portmgr Portmgr territory.
State Changed From-To: open->suspended We will be removing the perl dependency within the next month all together!
Responsible Changed From-To: portmgr->bdrewery Take for when I finish testing the new index patch
Author: bdrewery Date: Sun Oct 27 14:22:02 2013 New Revision: 331775 URL: http://svnweb.freebsd.org/changeset/ports/331775 Log: - Revert r329851 and again allow using portsnap's make_index by default, if available, for 'make index'. This removes the need to have perl installed. [1] - Fix output of the file to have the proper /usr/ports/ORIGIN regardless of real PORTSDIR or CURDIR [2] PR: ports/183095 [1] Submitted by: ak [2] With hat: portmgr Modified: head/Makefile Modified: head/Makefile ============================================================================== --- head/Makefile Sun Oct 27 14:10:27 2013 (r331774) +++ head/Makefile Sun Oct 27 14:22:02 2013 (r331775) @@ -105,11 +105,11 @@ INDEX_SHELL= /bin/sh INDEX_PORTS=. .endif -#.if exists(/usr/libexec/make_index) -#MAKE_INDEX= /usr/libexec/make_index /dev/stdin -#.else +.if exists(/usr/libexec/make_index) +MAKE_INDEX= /usr/libexec/make_index /dev/stdin +.else MAKE_INDEX= perl ${.CURDIR}/Tools/make_index -#.endif +.endif ${INDEXDIR}/${INDEXFILE}: @${INDEX_ECHO_1ST} "Generating ${INDEXFILE} - please wait.."; \ @@ -144,7 +144,8 @@ ${INDEXDIR}/${INDEXFILE}: cat $${tmpdir}/${INDEXFILE}.desc.* | (cd ${.CURDIR} ; ${MAKE_INDEX}) | \ sed -e 's/ */ /g' -e 's/| */|/g' -e 's/ *|/|/g' -e 's./..g' | \ sort -t '|' +1 -2 | \ - sed -e 's../.g' > ${INDEXDIR}/${INDEXFILE}.tmp; \ + sed -Ee 's../.g' -e ':a' -e 's|/[^/]+/\.\.||; ta' \ + -e 's|${.CURDIR}|/usr/ports|g' > ${INDEXDIR}/${INDEXFILE}.tmp; \ if [ "${INDEX_PRISTINE}" != "" ]; then \ sed -e "s,$${LOCALBASE},/usr/local," ${INDEXDIR}/${INDEXFILE}.tmp > ${INDEXDIR}/${INDEXFILE}; \ else \ _______________________________________________ svn-ports-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-ports-all To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
State Changed From-To: suspended->closed perl is no longer required to build index.