head 1.14; access; symbols RELEASE_7_4_0:1.13 RELEASE_8_2_0:1.13 RELEASE_6_EOL:1.13 RELEASE_8_1_0:1.13 RELEASE_7_3_0:1.12 RELEASE_8_0_0:1.12 RELEASE_7_2_0:1.12 RELEASE_7_1_0:1.12 RELEASE_6_4_0:1.12 RELEASE_5_EOL:1.12 RELEASE_7_0_0:1.9 RELEASE_6_3_0:1.9 PRE_XORG_7:1.9 RELEASE_4_EOL:1.9 RELEASE_6_2_0:1.9 RELEASE_6_1_0:1.9 RELEASE_5_5_0:1.9 RELEASE_6_0_0:1.8 RELEASE_5_4_0:1.8 RELEASE_4_11_0:1.8 RELEASE_5_3_0:1.6 RELEASE_4_10_0:1.5 RELEASE_5_2_1:1.5 RELEASE_5_2_0:1.5 RELEASE_4_9_0:1.5 RELEASE_5_1_0:1.5 RELEASE_4_8_0:1.4 RELEASE_5_0_0:1.4 RELEASE_4_7_0:1.4 RELEASE_4_6_2:1.3 RELEASE_4_6_1:1.3 RELEASE_4_6_0:1.3 RELEASE_5_0_DP1:1.3 RELEASE_4_5_0:1.3 RELEASE_4_4_0:1.3 RELEASE_4_3_0:1.3 RELEASE_4_2_0:1.3 RELEASE_4_1_1:1.1; locks; strict; comment @# @; 1.14 date 2011.04.24.16.37.51; author flz; state dead; branches; next 1.13; 1.13 date 2010.06.25.23.38.01; author linimon; state Exp; branches; next 1.12; 1.12 date 2008.05.29.14.14.54; author linimon; state Exp; branches; next 1.11; 1.11 date 2008.05.29.02.34.41; author linimon; state Exp; branches; next 1.10; 1.10 date 2008.05.29.01.45.39; author linimon; state Exp; branches; next 1.9; 1.9 date 2005.12.11.04.35.44; author kris; state Exp; branches; next 1.8; 1.8 date 2004.12.28.04.31.29; author kris; state Exp; branches; next 1.7; 1.7 date 2004.11.25.00.04.48; author kris; state Exp; branches; next 1.6; 1.6 date 2004.07.14.09.27.26; author kris; state Exp; branches; next 1.5; 1.5 date 2003.04.06.05.42.41; author kris; state Exp; branches; next 1.4; 1.4 date 2002.09.15.22.02.20; author kris; state Exp; branches; next 1.3; 1.3 date 2000.10.06.07.32.42; author asami; state Exp; branches; next 1.2; 1.2 date 2000.09.26.23.51.04; author asami; state Exp; branches; next 1.1; 1.1 date 2000.08.29.07.45.02; author asami; state Exp; branches; next ; desc @@ 1.14 log @Remove portbuild scripts from pcvs, as they now live in svn/projects. @ text @#!/bin/sh of=extras.html.new if [ \! -e .force -a -e .stamp -a $(echo $(find . -newer .stamp -type f -name '*.log' 2>/dev/null | wc -l)) = "0" ]; then exit; fi echo "List of files and directories that do not match their mtree description" >$of echo "

List of files and directories that do not match their mtree description

" >>$of echo "" >>$of rm -f .force touch .stamp find . -name '*.log' | xargs grep -l '^list of.*file' | sort | sed -e 's/^..//' > .tmp if [ $(echo $(cat .tmp | wc -l)) = 0 ]; then echo "No extra files (yet)" >> $of else set $(cat .tmp) num=$# if [ -s .updated ]; then echo "(ports update finished at: $(cat .updated))
" >> $of fi echo "(timestamp of newest log: $(ls -rtTl | grep '\.log$' | tail -1 | awk '{printf("%s %s %s %s\n",$6,$7,$8,$9)}'))

" >> $of echo "" >>$of echo "" >>$of while [ $# -gt 0 ]; do log=$(basename $1 .log) echo -n "" >>$of shift done echo "
LogAff.SizeRepositoryMaintainerPathname
" >>$of echo -n "" >> $of echo -n "" >>$of echo -n $log >>$of echo -n "" >>$of echo -n "" >>$of affected=$(($(grep -cF $log < INDEX) - 1)) if [ $affected != 0 ]; then echo -n $affected >>$of; fi echo -n "" >>$of size=$(/bin/ls -sk $log.log | awk '{print $1}') echo -n "$size KB" >>$of echo -n "" >>$of dir=$(sed -n -e '5p' $log.log | awk '{print $3}' | sed -e 's,^/[^/]*/[^/]*/,,') echo -n "$dir" >>$of echo -n "" >>$of maint=$(sed -n -e '4p' $log.log | awk '{print $3}') maints="$maints $maint" echo -n "$maint" >>$of echo "" >>$of cat $log.log | sed -e '1,/^list of extra files and directories/d' -e '/^list of/,$d' | awk '{print $11}' | sed -E -e 's,^,,' -e 's,(usr/(local|X11R6)),\1,g' -e 's,$,
,' >>$of cat $log.log | sed -e '1,/^list of files present before this port was installed/d' -e '/^list of/,$d' -e 's,^\./,,' | awk '{print $1}' | sed -e 's,^,,' -e 's,$, (missing)
,' >> $of cat $log.log | sed -e '1,/^list of filesystem changes/d' -e '/^ /d' | awk '{print $1}' | sed -e 's,^,,' -e 's,$, (changed)
,' >>$of echo "

" >> $of echo "$num errors
" >> $of fi rm .tmp echo "
" >> $of echo "back to top" >> $of echo "" >>$of mv -f $of extras.html echo $maints | sed -e 's/ /\ /g' | sort -fu > maintainers @ 1.13 log @Generalize the packge building scripts to be able to be run on more than one 'head' node, rather than just pointyhat itself. Constants are factored out into installation-specific files known as portbuild/conf/server.conf and portbuild/conf/client.conf. There is only one server.conf file. Individual directories may have their own client.conf files, or may symlink to ../conf/client.conf. Note the change of the misnomer filename 'cvsdone' to '.updated'. Feature safe: yes @ text @@ 1.12 log @Remove the force file, if it was used. Forgotten by: linimon @ text @d20 2 a21 2 if [ -s cvsdone ]; then echo "(cvs update finished at: $(cat cvsdone))
" >> $of @ 1.11 log @Add a force function here, just like processlogs. @ text @d11 1 @ 1.10 log @Fix these after the 1.31 update to buildscript. Forgotten by: pav @ text @d5 1 a5 1 if [ -e .stamp -a $(echo $(find . -newer .stamp -type f -name '*.log' 2>/dev/null | wc -l)) = "0" ]; then exit; fi @ 1.9 log @Don't use a lockfile, the script will be called with lockf -t0 instead to avoid problems with stale lockfiles after a reboot. @ text @d39 1 a39 1 dir=$(sed -n -e '4p' $log.log | awk '{print $3}' | sed -e 's,^/[^/]*/[^/]*/,,') d42 1 a42 1 maint=$(sed -n -e '3p' $log.log | awk '{print $3}') @ 1.8 log @* Catch up to change in formatting of 'extra files' section in logs * Other minor changes @ text @a4 5 # delete .new file if it is more than a day old find $of -mtime +1 -delete 2>/dev/null if [ -f $of ]; then exit; fi @ 1.7 log @Catch up to the changed format of the logs. List the extra/removed/changed files separately, and colour-code the serious errors (files left behind outside of /usr/local and /usr/X11R^; files removed that were installed by another port, and files with changed permissions or ownership) @ text @d18 1 a18 2 #find . -name '*.log' | xargs grep -l '^list of extra files and directories' | xargs-exec sed -n -e '/^checking installed files/d' -e 's:^extra[:] :{} :p' -e 's:\(.*\) extra$:{} \1:p' '{}' ';' | sort | sed -e 's/^..//' -e 's/\.log//' | awk '{print $1 " " $2}' > .tmp find . -name '*.log' | xargs grep -l '^list of extra files and directories' | sort | sed -e 's/^..//' > .tmp d27 1 a27 1 echo "(timestamp of newest log: $(ls -rtTl | grep 'log$' | tail -1 | awk '{printf("%s %s %s %s\n",$6,$7,$8,$9)}'))

" >> $of d31 1 a31 1 log=$(echo $1 | basename $1 .log) @ 1.6 log @Parse the slightly-different format of the build logs. @ text @d45 1 a45 1 dir=$(sed -n -e '3p' $log.log | awk '{print $4}' | sed -e 's,^/[^/]*/[^/]*/,,') d52 3 a54 3 for file in $(cat $log.log | sed -e '1,/^list of extra files and directories/d' -e '/^=======/,$d' -e '/^ /d' -e 's/^extra: //' -e 's/^missing: //' -e 's/://' | awk '{print $1}'); do echo "$file
" >>$of done @ 1.5 log @Update sed pattern used to process logs @ text @d48 1 a48 1 maint=$(sed -n -e '4p' $log.log | awk '{print $3}') @ 1.4 log @Optimize the html output by putting multiple missing files in the same table row, instead of making a new row for every single file. This cuts down the generated page size drastically, improving rendering times. Submitted by: Edwin Groothuis PR: ports/40962 @ text @d52 1 a52 1 for file in $(cat $log.log | sed -e '1,/^list of extra files and directories/d' -e '/^list of all files and directories/,$d' -e '/^ /d' -e 's/^extra: //' -e 's/^missing: //' -e 's/://' | awk '{print $1}'); do @ 1.3 log @Hack this file beyond recognition to cope with both the old and new mtree outputs. Also change the title of the file from "List of extra files and directories" to "List of files and directories that do not match their mtree description", which is more accurate. @ text @d33 1 a33 2 for file in $(cat $log.log | sed -e '1,/^list of extra files and directories/d' -e '/^list of all files and directories/,$d' -e '/^ /d' -e 's/^extra: //' -e 's/^missing: //' -e 's/://' | awk '{print $1}'); do echo -n "" >>$of d38 1 a38 1 echo -n "" >>$of d41 1 a41 1 echo -n "" >>$of d44 1 a44 1 echo -n "" >>$of d47 1 a47 1 echo -n "" >>$of d51 3 a53 1 echo "$file" >>$of d55 1 @ 1.2 log @Change "grep *.log" to "find . -name '*.log' | xargs grep", the number of logs were overflowing the argv array. @ text @d12 2 a13 2 echo "List of extra files and directories" >$of echo "

List of extra files and directories

" >>$of d18 2 a19 1 find . -name '*.log' | sort | xargs grep '^extra: ' /dev/null | sed -e 's/^..//' > .tmp d24 1 a24 1 num=$(($# / 2)) d28 1 a28 1 echo "(timestamp of newest log: $(ls -rtTl *.log | tail -1 | awk '{printf("%s %s %s %s\n",$6,$7,$8,$9)}'))

" >> $of d32 2 a33 1 log=$(echo $1 | sed -e 's/\.log:extra://') d52 3 a54 2 echo "$2" >>$of shift 2 d57 1 a57 1 echo "$num extra files
" >> $of @ 1.1 log @Read package build log files and compile a list of "extra" files in an HTML table format. @ text @d18 1 a18 1 grep '^extra: ' *.log > .tmp @