diff --git a/tools/tools/README b/tools/tools/README index fe7fd51fa90f..5e04bf7f3097 100644 --- a/tools/tools/README +++ b/tools/tools/README @@ -53,6 +53,7 @@ scsi-defects Get at the primary or grown defect list of a SCSI disk. sysdoc Build a manual page with available sysctls for a specific kernel configuration. tinybsd Script to build FreeBSD embedded systems. +track Track the progress of a world / kernel build vop_table Generates a HTML document that shows all the VOP's in the kernel. whereintheworld Summarizes "make world" output. diff --git a/tools/tools/track/Makefile b/tools/tools/track/Makefile new file mode 100644 index 000000000000..3d44baae2b83 --- /dev/null +++ b/tools/tools/track/Makefile @@ -0,0 +1,7 @@ +# $FreeBSD$ + +PREFIX?= /usr/local +BINDIR?= ${PREFIX}/bin +SCRIPTS= track.sh + +.include diff --git a/tools/tools/track/track.sh b/tools/tools/track/track.sh new file mode 100644 index 000000000000..b8cb46e6727f --- /dev/null +++ b/tools/tools/track/track.sh @@ -0,0 +1,49 @@ +#!/bin/sh +#- +# Copyright (c) 2008 Dag-Erling Coïdan Smørgrav +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer +# in this position and unchanged. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD$ +# + +tail -10000 -F "$@" | +while read line +do + case $line in + \>\>\>*) + endl="\r\n" + ;; + \*\*\*\ Error*) + endl="\r\n" + ;; + \=\=\=*) + endl="\r" + ;; + *) + continue + ;; + esac + printf "%s%*s${endl}" "${line}" $((${COLUMNS:-80} - ${#line} - 1)) " " +done