[PC-BSD Commits] r8084 - pcbsd/current/src-sh/pbi-manager

svn at pcbsd.org svn at pcbsd.org
Mon Nov 29 13:09:49 PST 2010


Author: kris
Date: 2010-11-29 13:09:48 -0800 (Mon, 29 Nov 2010)
New Revision: 8084

Modified:
   pcbsd/current/src-sh/pbi-manager/pbi-manager
Log:

Update to pbi_makeport functionality, now the first time run it will build
a clean freebsd chroot "sandbox" for the port / PBI building, in order to 
prevent messes on the host system. Doing this also makes building PBIs
much more reliable and cleaner all around. 



Modified: pcbsd/current/src-sh/pbi-manager/pbi-manager
===================================================================
--- pcbsd/current/src-sh/pbi-manager/pbi-manager	2010-11-29 17:23:13 UTC (rev 8083)
+++ pcbsd/current/src-sh/pbi-manager/pbi-manager	2010-11-29 21:09:48 UTC (rev 8084)
@@ -897,7 +897,9 @@
                         shift; PBI_MAKEPREFIX="$1"
                         ;;
             --sign)	if [ $# -eq 1 ]; then usage_create_pbi; fi
-                        shift; PBI_SSLPRIVKEY="$1"
+			shift
+			get_abspath "$1"
+			PBI_SSLPRIVKEY="$_ABSPATH"
                         ;;
                  *)
                         if [ $# -gt 1 ]; then usage_make_pbi; fi
@@ -977,6 +979,7 @@
         PROGBASE="/usr/local" 
 	SYS_LOCALBASE="/usr/local"
 	PBI_APPDIR="${PROGBASE}/pbi"
+	PBI_CHROOTFILE="${PBI_APPDIR}/.pbi-world.tbz"
 	PBI_HASHDIR="${PBI_APPDIR}/.hashdir"
 	PBI_RCDIR="${SYS_LOCALBASE}/etc/rc.d"
 	PBI_ETCCONF="${SYS_LOCALBASE}/etc/pbi.conf"
@@ -1003,7 +1006,6 @@
 	MOD_XDGMIME_DIR="xdg-mime"
 	MOD_EXTLINKFILE="external-links"
 	MOD_AUTOEXTLINKFILE=".auto-external-links"
-	OLDPATH=""
 	PBI_ADD_GUIDISPLAY="NO"
 	PBI_ADD_INFODISPLAY="NO"
 	PBI_ADD_LICDISPLAY="NO"
@@ -1142,9 +1144,11 @@
 rm_buildfiles() {
 	if [ "${PBI_KEEPBUILDFILES}" = "YES" ] ; then return ; fi
 	if [ -z "${PBI_PROGDIRPATH}" ] ; then return ; fi
-	if [ "`basename $0`" = "pbi_makeport" -a -d "${PBI_PROGDIRPATH}" ] ; then 
+	if [ "`basename $0`" = "pbi_makeport_chroot" -a -d "${PBI_PROGDIRPATH}" ] ; then 
 		rm -rf "${PBI_PROGDIRPATH}" 
 	fi
+	if [ -z "$PBI_CHROOTDIR" ] ; then return ; fi
+	rm -rf "${PBI_CHROOTDIR}"
 }
 
 # Load PBI conf options
@@ -1222,7 +1226,7 @@
 	echo -e "`basename ${0}`: ${1}"
 	rm_tmpdir
 	rm_buildfiles
-	clean_wrkdirprefix
+	chroot_make_cleanup
 	clean_remote_dl
 	exit 255
 }
@@ -1240,85 +1244,52 @@
 
 	# Set the PREFIX
 	PREFIX="${PBI_PROGDIRPATH}" ; export PREFIX
-	WRKDIRPREFIX="${PBI_PROGDIRPATH}.wrkdir" ; export WRKDIRPREFIX
 	if [ -e "${PREFIX}" ] ; then 
 		if [ "$MKDELBUILD" != "YES" ] ; then
 			exit_err "${PREFIX} already exists! Delete it before doing a rebuild"
 		else
-			if [ -z "${PREFIX}" -o -z "$WRKDIRPREFIX" ] ; then
+			if [ -z "${PREFIX}" ] ; then
 				exit_err "null PREFIX, this shouldn't happen"
 			fi
 			rm -rf "${PREFIX}"
-			rm -rf "${WRKDIRPREFIX}"
 		fi
 	fi
 
-	mkdir -p ${PREFIX}
-	# rm /\$ORIGIN >/dev/null 2>/dev/null
-	#ln -fs ${PREFIX} /\$ORIGIN
-	#PREFIX='/\$ORIGIN' ; export PREFIX
+	mkdir -p "${PREFIX}"
 
-	__MAKE_CONF="${PBI_PROGDIRPATH}/make.conf"
-	export __MAKE_CONF
-	cp /etc/make.conf ${__MAKE_CONF}
+	local MAKE_CONF="/etc/make.conf"
 
-	echo "PREFIX=${PREFIX}" >> ${__MAKE_CONF}
-	#echo 'PREFIX=$${ORIGIN}' >> ${__MAKE_CONF}
-	echo "LOCALBASE=${PREFIX}" >> ${__MAKE_CONF}
-	echo "LINUXBASE=${PREFIX}" >> ${__MAKE_CONF}
-	echo "PACKAGE_BUILDING=yes" >> ${__MAKE_CONF}
-	#echo 'LOCALBASE=$${ORIGIN}' >> ${__MAKE_CONF}
+	echo "PREFIX=${PREFIX}" >> ${MAKE_CONF}
+	echo "LOCALBASE=${PREFIX}" >> ${MAKE_CONF}
+	echo "LINUXBASE=${PREFIX}" >> ${MAKE_CONF}
+	echo "PACKAGE_BUILDING=yes" >> ${MAKE_CONF}
+	echo "LDFLAGS+=-L${PREFIX}/lib" >> ${MAKE_CONF}
 
-	echo "BATCH=yes" >> ${__MAKE_CONF}
-	echo "PACKAGE_BUILDING=yes" >> ${__MAKE_CONF}
-	echo "WRKDIRPREFIX=${WRKDIRPREFIX}" >> ${__MAKE_CONF}
+	echo "BATCH=yes" >> ${MAKE_CONF}
+	echo "PACKAGE_BUILDING=yes" >> ${MAKE_CONF}
 
-        # Experiementing with $ORIGIN, still needs some work
-	#echo "CFLAGS+=-Wl,-z,origin" >> ${__MAKE_CONF}
-	#echo "CFLAGS+=\"-Wl,-R,\\\$ORIGIN/../lib\"" >> ${__MAKE_CONF}
-	#echo "LDFLAGS+=-Wl,-z,origin" >> ${__MAKE_CONF}
-	# CFLAGS = "-Wl,-R'$ORIGIN', -O2, -fno-strict-aliasing, -Wl,-z,'$ORIGIN'
-	# To inspect libs: objdump -p 
 
-
 	if [ ! -z "$PBI_MAKEOPTS" ] ; then
 		# Check if we have custom make opts
-		echo "${PBI_MAKEOPTS}" >> ${__MAKE_CONF}
+		echo "${PBI_MAKEOPTS}" >> ${MAKE_CONF}
 	fi
 
-	# Set PATH
-	OLDPATH="${PATH}"
-	PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:${PREFIX}/bin:${PREFIX}/sbin"
-	export PATH
+	# Link /usr/local -> PREFIX
+	mkdir -p /usr/local/pbi
+	ln -s ${PREFIX} /usr/local
 
-	# Need to trick ldconfig lookups as well
-	LD_ELF_HINTS_PATH="${PREFIX}/.ld-elf.hints" ; export LD_ELF_HINTS_PATH
-	ldconfig -elf -f ${LD_ELF_HINTS_PATH} /lib /usr/lib ${PREFIX}/lib ${PREFIX}/lib/compat/pkg 2>/dev/null
+	#PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:${PREFIX}/bin:${PREFIX}/sbin"
+	#export PATH
 
-	echo "LDCONFIG=/sbin/ldconfig -f ${LD_ELF_HINTS_PATH}" >> ${__MAKE_CONF}
-	LDCONFIG="/sbin/ldconfig -f ${LD_ELF_HINTS_PATH}"
-	export LDCONFIG
+	FORCE_PKG_REGISTER="Y"
+	export FORCE_PKG_REGISTER
 
-	LDCONFIG_DIRS="${PREFIX}/lib"
-	export LDCONFIG_DIRS
+	#LDCONFIG_DIRS="${PREFIX}/lib"
+	#export LDCONFIG_DIRS
 
-	LD_LIBRARY_PATH="${PREFIX}/lib"
-	export LD_LIBRARY_PATH
+	#LD_LIBRARY_PATH="${PREFIX}/lib"
+	#export LD_LIBRARY_PATH
 
-	echo "LDFLAGS+=-L${PREFIX}/lib" >> ${__MAKE_CONF}
-	#echo "CFLAGS+=-Wl,-L${PREFIX}/lib/" >> ${__MAKE_CONF}
-	#echo "CFLAGS+=-Wl,-rpath-link=${PREFIX}/lib/" >> ${__MAKE_CONF}
-	#echo "CPPFLAGS+=-Wl,-L${PREFIX}/lib" >> ${__MAKE_CONF}
-	#echo "CPPFLAGS+=-Wl,-rpath-link=${PREFIX}/lib" >> ${__MAKE_CONF}
-	#echo "CXXFLAGS+=-Wl,-L${PREFIX}/lib" >> ${__MAKE_CONF}
-	#echo "CXXFLAGS+=-Wl,-rpath-link=${PREFIX}/lib" >> ${__MAKE_CONF}
-
-	# Set the DBDIRS
-	PKG_DBDIR="${PREFIX}/.pkgdb" ; export PKG_DBDIR
-	PORT_DBDIR="${PREFIX}/.portdb" ; export PORT_DBDIR
-
-	# Enable forced pkg registration
-        FORCE_PKG_REGISTER="Y" ; export FORCE_PKG_REGISTER
 }
 
 # Confirm we are running as root
@@ -3589,7 +3560,7 @@
 # Begins the port make
 start_pbi_makeport()
 {
-  	cd ${PORTSDIR}/${PBI_MAKEPORT}
+	cd /usr/ports/${PBI_MAKEPORT}
 	make clean
 	make
 	make install
@@ -3608,21 +3579,21 @@
 	if [ "${PBI_PRUNEBUILDPORTS}" = "NO" ] ; then return ; fi
 
 	get_pkgname "${PORTSDIR}/${PBI_MAKEPORT}"
-	echo "${PKGNAME}" >${PBI_PROGDIRPATH}/.keepports
+	echo "${PKGNAME}" >/.keepports
 
 	# Do the same for any OTHERPORTS
 	for port in ${PBI_MKPORTBEFORE}
 	do
                 if [ ! -d "${PORTSDIR}/${port}" ] ; then continue ; fi
 		get_pkgname "${PORTSDIR}/${port}"
-		echo "${PKGNAME}" >>${PBI_PROGDIRPATH}/.keepports
+		echo "${PKGNAME}" >>/.keepports
         done
 
 	for port in ${PBI_MKPORTAFTER}
 	do
                 if [ ! -d "${PORTSDIR}/${port}" ] ; then continue ; fi
 		get_pkgname "${PORTSDIR}/${port}"
-		echo "${PKGNAME}" >>${PBI_PROGDIRPATH}/.keepports
+		echo "${PKGNAME}" >>/.keepports
         done
 
 	# Now check what packages we have and prune those whom aren't needed
@@ -3630,12 +3601,14 @@
 	z="1"
 	do
 		FOUND=""
-		for j in `pkg_info -I -a | cut -d ' ' -f 1`
+		for j in `pkg_info -I -a | cut -d " " -f 1`
 		do
-			grep "${j}" "${PBI_PROGDIRPATH}/.keepports" >/dev/null 2>/dev/null
+			grep "${j}" "/.keepports" >/dev/null 2>/dev/null
 			if [ "$?" != "0" ] ; then 
-				check_remove_port "${j}" 
-				if [ "$?" = "0" ] ; then
+				pkg_info -R "${j}" | grep "Required" >/dev/null 2>/dev/null
+				if [ "$?" != "0" ] ; then 
+					echo "Removing non-required port: ${j}"
+					pkg_delete ${j} 
 					FOUND="1"
 					break 
 				fi
@@ -3645,7 +3618,6 @@
 		# All done pruning ports
 		if [ -z "$FOUND" ] ; then break ; fi
 	done
-	#rm ${PBI_PROGDIRPATH}/.keepports
 }
 
 # Get the full package-name for a target port
@@ -3654,17 +3626,6 @@
 	PKGNAME="${name}"
 }
 
-# Check if the specified port doesn't have anything which requires it, and remove it if so
-check_remove_port() {
-	pkg_info -R "${1}" | grep "Required" >/dev/null 2>/dev/null
-	if [ "$?" != "0" ] ; then 
-		echo "Removing non-required port: ${1}"
-		pkg_delete ${1} 
-		return 0
-	fi
-	return 1
-}
-
 # Make any additional required ports 
 start_pbi_mkportbefore()
 {
@@ -3672,10 +3633,10 @@
 	
 	for port in ${PBI_MKPORTBEFORE}
 	do
-		if [ ! -d "${PORTSDIR}/${port}" ] ; then
-			exit_err "${PORTSDIR}/${port} does not exist!"
+		if [ ! -d "/usr/ports/${port}" ] ; then
+			exit_err "/usr/ports/${port} does not exist!"
 		fi
-  		cd ${PORTSDIR}/${port}
+  		cd /usr/ports/${port}
 		make clean
 		make
 		make install
@@ -3687,6 +3648,7 @@
 			exit_err "make install of ${port} failed!"
 		fi
 	done
+
 }
 
 # Make any additional required ports 
@@ -3696,10 +3658,10 @@
 	
 	for port in ${PBI_MKPORTAFTER}
 	do
-		if [ ! -d "${PORTSDIR}/${port}" ] ; then
-			exit_err "${PORTSDIR}/${port} does not exist!"
+		if [ ! -d "/usr/ports/${port}" ] ; then
+			exit_err "/usr/ports/${port} does not exist!"
 		fi
-  		cd ${PORTSDIR}/${port}
+  		cd /usr/ports/${port}
 		make clean
 		make
 		make install
@@ -3711,6 +3673,7 @@
 			exit_err "make install of ${port} failed!"
 		fi
 	done
+
 }
 
 # Start pbi_update processing
@@ -4654,30 +4617,45 @@
 
   	parse_make_pbi_cmdline "$@"
  
-
-  	do_pbi_make
+  	do_pbi_make "$@"
 }
 
-# Clean the WRKDIRPREFIX
-clean_wrkdirprefix() {
-	if [ -z "${WRKDIRPREFIX}" ] ; then return 0; fi
-	if [ ! -d "${WRKDIRPREFIX}" ] ; then return 0; fi
-	rm -rf "${WRKDIRPREFIX}"
-}
-
 do_pbi_make() {
 
+  	# Load the PBI settings
+	get_pbi_progversion
+	get_pbi_progname
+  	get_pbi_progdir
+
+	# Check if this is being called from within chroot or outside
+	if [ "`basename $0`" = "pbi_makeport" ] ; then
+		# Extract the chroot 
+		chroot_extract
+
+		# Now re-run pbi_makeport in chroot environment
+		chroot "${PBI_CHROOTDIR}" "/usr/local/sbin/pbi_makeport_chroot" "$@"
+		_err=$?
+		if [ "$_err" = "0" ] ; then
+			mv ${PBI_CHROOTDIR}${PBI_CREATE_OUTDIR}/*.pbi ${PBI_CREATE_OUTDIR}/
+			mv ${PBI_CHROOTDIR}${PBI_CREATE_OUTDIR}/*.sha256 ${PBI_CREATE_OUTDIR}/
+		fi
+
+		# Lets cleanup the chroot environment
+		chroot_make_cleanup
+		rm_tmpdir
+
+		exit $_err
+	fi
+
+	if [ "`basename $0`" != "pbi_makeport_chroot" ] ; then return ; fi
+	
+
   	# Check if we have some specific make options to use
   	load_pbi_conffile
 
   	# init tmpdir
   	init_tmpdir
 
-  	# Load the PBI settings
-	get_pbi_progversion
-	get_pbi_progname
-  	get_pbi_progdir
-
   	set_make_options
 
   	# See if we need to run a pre make script
@@ -4691,14 +4669,9 @@
   	# Prune any proto / build specific ports
   	start_pbi_prune_ports
 
-	# Clean the WRKDIRPREFIX
-	clean_wrkdirprefix
-
   	# See if we need to run a post make script
   	run_pbi_postportmake
 
-	if [ ! -z "$OLDPATH}" ] ; then PATH=${OLDPATH} ; export PATH ; fi
-
 	# Auto-generate a external_links directive from plist info
 	mk_auto_ext_linksfile
 
@@ -4714,11 +4687,144 @@
 	exit 0
 }
 
+# Clean the chroot environment
+chroot_make_cleanup() {
+	if [ -z "${PBI_CHROOTDIR}" ] ; then return ; fi
+	if [ ! -d "${PBI_CHROOTDIR}" ] ; then return ; fi
+	if [ "${PBI_CHROOTDIR}" = "/" ] ; then return ; fi
+	
+	# Unmount /dev if mounted
+	umount ${PBI_CHROOTDIR}/dev >/dev/null 2>/dev/null
+	umount ${PBI_CHROOTDIR}/usr/ports/distfiles >/dev/null 2>/dev/null
+	rm -rf "${PBI_CHROOTDIR}" >/dev/null 2>/dev/null
+	chflags -R noschg ${PBI_CHROOTDIR} >/dev/null 2>/dev/null
+	rm -rf "${PBI_CHROOTDIR}" >/dev/null 2>/dev/null
+}
+
+# Function which extracts the clean chroot environment for the PBI
+chroot_extract() {
+
+	# If no chroot file exists, make it first
+	if [ ! -e "${PBI_CHROOTFILE}" ] ; then mk_chroot_file ; fi
+
+	PBI_CHROOTDIR="${PBI_PROGDIRPATH}.chroot"
+	export PBI_CHROOTDIR
+	mkdir -p "${PBI_CHROOTDIR}"
+	echo "Extracting chroot environment..."
+	tar xvf ${PBI_CHROOTFILE} -C "${PBI_CHROOTDIR}" >/dev/null 2>/dev/null
+	if [ "$?" != "0" ] ; then
+		exit_err "Failed extracting chroot environment!"
+	fi
+
+	echo "Copying ${PORTSDIR} -> ${PBI_CHROOTDIR}/usr/ports"
+	cp /etc/resolv.conf ${PBI_CHROOTDIR}/etc/resolv.conf
+	mkdir -p ${PBI_CHROOTDIR}/usr/ports
+	tar cvf - -C "${PORTSDIR}" --exclude ./distfiles . 2>/dev/null | tar xvf - -C "${PBI_CHROOTDIR}/usr/ports" 2>/dev/null
+	mkdir -p ${PBI_CHROOTDIR}/usr/ports/distfiles
+	if [ ! -d "${PORTSDIR}/usr/ports/distfiles" ] ; then
+		mkdir -p ${PORTSDIR}/usr/ports/distfiles
+	fi
+	mount_nullfs ${PORTSDIR}/usr/ports/distfiles ${PBI_CHROOTDIR}/usr/ports/distfiles
+
+	# Now copy over the pbi_* scripts
+	mkdir ${PBI_CHROOTDIR}/usr/local/sbin
+	cp /usr/local/sbin/pbi_* ${PBI_CHROOTDIR}/usr/local/sbin
+	cp ${PBI_CHROOTDIR}/usr/local/sbin/pbi_makeport ${PBI_CHROOTDIR}/usr/local/sbin/pbi_makeport_chroot
+	chmod 755 ${PBI_CHROOTDIR}/usr/local/sbin/pbi_*
+
+	mkdir -p ${PBI_CHROOTDIR}/var/db
+	cp -r ${PBI_DBDIR} ${PBI_CHROOTDIR}{PBI_DBDIR}
+	
+	# Copy over the confdir as well
+	if [ ! -z "${PBI_CONFDIR}" ] ; then
+		local _cDir=`dirname "${PBI_CONFDIR}"`
+		mkdir -p "${PBI_CHROOTDIR}${_cDir}"
+	 	cp -r "${PBI_CONFDIR}" "${PBI_CHROOTDIR}${PBI_CONFDIR}"
+	fi
+
+	# Copy over the ssl priv key if used
+	if [ ! -z "$PBI_SSLPRIVKEY" ] ; then
+		local _sDir=`dirname "${PBI_SSLPRIVKEY}"`
+		mkdir -p "${PBI_CHROOTDIR}${_sDir}"
+	 	cp "${PBI_SSLPRIVKEY}" "${PBI_CHROOTDIR}${PBI_SSLPRIVKEY}"
+	fi
+
+	# Start devfs in the chroot
+	mount -t devfs devfs ${PBI_CHROOTDIR}/dev
+
+	# Make sure the outgoing dir exists
+	mkdir -p ${PBI_CHROOTDIR}${PBI_CREATE_OUTDIR} >/dev/null 2>/dev/null
+}
+
+# No chroot environment tar file exists yet, lets build one
+mk_chroot_file() {
+	# Make sure SVN is installed
+	which svn >/dev/null 2>/dev/null
+	if [ "$?" != "0" ] ; then
+		exit_err "Subversion is required to rebuild the chroot environment!"
+	fi
+
+	echo "Building the PBI chroot environment... This may take a while..."
+	PBI_BUILDSRC="${PBI_APPDIR}/.tmpSRC.$$"
+	PBI_BUILDTARGET="${PBI_APPDIR}/.worldTarget.$$"
+	PBI_BUILDLOG="${PBI_APPDIR}/.buildWorldLog"
+	echo "" > ${PBI_BUILDLOG}
+	mkdir -p "${PBI_BUILDSRC}"
+	mkdir -p "${PBI_BUILDTARGET}"
+	
+	# Figure out which version of FreeBSD to checkout
+	local _osRel=`uname -r`
+	echo $_osRel | grep "CURRENT" >/dev/null 2>/dev/null
+	if [ "$?" = "0" ] ; then
+		local svnUrl="svn://svn.freebsd.org/base/head"
+	else
+		local _osMajor=`echo $_osRel | cut -c 1-1`
+		local svnUrl="svn://svn.freebsd.org/base/releng/${_osMajor}.0"
+	fi
+
+	echo "Checking out FreeBSD sources from $svnUrl"
+	svn co ${svnUrl} ${PBI_BUILDSRC} >>${PBI_BUILDLOG} 2>>${PBI_BUILDLOG}
+	if [ "$?" != "0" ] ; then
+		rm -rf "${PBI_BUILDSRC}"
+		rm -rf "${PBI_BUILDTARGET}"
+		exit_err "Subversion checkout failed! Logfile saved: ${PBI_BUILDLOG}"
+	fi
+
+	echo "Running buildworld / installworld"
+	cd ${PBI_BUILDSRC}
+	make buildworld installworld distribution DESTDIR=${PBI_BUILDTARGET} >>${PBI_BUILDLOG} 2>>${PBI_BUILDLOG}
+	if [ "$?" != "0" ] ; then
+		cd
+		rm -rf "${PBI_BUILDSRC}"
+		rm -rf "${PBI_BUILDTARGET}"
+		exit_err "Buildworld failed! Logfile saved: ${PBI_BUILDLOG}"
+	fi
+
+	cp -R ${PBI_BUILDSRC} ${PBI_BUILDTARGET}/usr/src
+
+	echo "Creating chroot environment tarball"
+	tar cvjf ${PBI_CHROOTFILE} -C ${PBI_BUILDTARGET} . >>${PBI_BUILDLOG} 2>>${PBI_BUILDLOG}
+	if [ "$?" != "0" ] ; then
+		cd
+		rm -rf "${PBI_BUILDSRC}"
+		rm -rf "${PBI_BUILDTARGET}"
+		rm -rf "${PBI_CHROOTFILE}"
+		exit_err "Making chroot environment tarball failed! Logfile saved: ${PBI_BUILDLOG}"
+	fi
+
+	# Cleanup after ourselves
+	chflags -R noschg "${PBI_BUILDTARGET}" >/dev/null 2>/dev/null
+	rm -rf "${PBI_BUILDSRC}" >/dev/null 2>/dev/null
+	rm -rf "${PBI_BUILDTARGET}" >/dev/null 2>/dev/null
+	rm ${PBI_BUILDLOG}
+}
+
 # Read the target ports plist, and generate a external_links config based upon it
 mk_auto_ext_linksfile() {
 	# Get ports name
 	get_pkgname "${PORTSDIR}/${PBI_MAKEPORT}"
 	_pname="${PKGNAME}"
+
  	pkg_info -L ${_pname} | sed "s|^${PBI_PROGDIRPATH}/||g" \
 		| grep -v "^Information for" \
 		| grep -v "^Files:" \
@@ -4899,6 +5005,7 @@
    pbi_info) pbi_info_init "$@" ;;
    pbi_listrepo) pbi_listrepo_init "$@" ;;
    pbi_makeport) pbi_make_init "$@" ;;
+   pbi_makeport_chroot) pbi_make_init "$@" ;;
    pbi_makepatch) pbi_makepatch_init "$@" ;;
    pbi_makerepo) pbi_makerepo_init "$@" ;;
    pbi_patch) pbi_patch_init "$@" ;;



More information about the Commits mailing list