pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/mk/bulk Preserve the .work.log file from a broken buil...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/67a07d687ed8
branches:  trunk
changeset: 483650:67a07d687ed8
user:      jlam <jlam%pkgsrc.org@localhost>
date:      Tue Nov 16 18:34:12 2004 +0000

description:
Preserve the .work.log file from a broken build as .broken.work.html
in the package directory, and add a link to it from .broken.html at
the point where the build fails.  Also adjust the auxilliary scripts
to handle/cleanup .broken.work.html files.

This should enhance the ability of developers to debug broken builds
by providing important information about what is happening as a build
progresses and fails.

diffstat:

 mk/bulk/bsd.bulk-pkg.mk |  20 +++++++++++++++++++-
 mk/bulk/build           |   5 ++++-
 mk/bulk/post-build      |   7 ++++---
 mk/bulk/pre-build       |   8 +++++++-
 4 files changed, 34 insertions(+), 6 deletions(-)

diffs (138 lines):

diff -r f23b49e436fa -r 67a07d687ed8 mk/bulk/bsd.bulk-pkg.mk
--- a/mk/bulk/bsd.bulk-pkg.mk   Tue Nov 16 18:04:38 2004 +0000
+++ b/mk/bulk/bsd.bulk-pkg.mk   Tue Nov 16 18:34:12 2004 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: bsd.bulk-pkg.mk,v 1.64 2004/11/12 15:39:22 jlam Exp $
+#      $NetBSD: bsd.bulk-pkg.mk,v 1.65 2004/11/16 18:34:12 jlam Exp $
 
 #
 # Copyright (c) 1999, 2000 Hubert Feyrer <hubertf%NetBSD.org@localhost>
@@ -73,6 +73,9 @@
 # This file exists to mark a package as broken
 BROKENFILE?=   .broken${BULK_ID}.html
 
+# This file is the work log for a broken package
+BROKENWRKLOG?= .broken${BULK_ID}.work.html
+
 # This file is where the log of the build goes
 BUILDLOG?=     .make${BULK_ID}
 
@@ -348,7 +351,22 @@
                        ${RM} ${BUILDLOG} ; \
                else \
                        ${MV} ${BUILDLOG} ${BROKENFILE} ;\
+                       if [ -f "${WRKLOG}" ]; then \
+                               (${ECHO_MSG} "<pre>"; \
+                               ${ECHO_MSG} ""; \
+                               ${CAT} ${WRKLOG}; \
+                               ${ECHO_MSG} "</pre>"; \
+                               ) >> ${BROKENWRKLOG}; \
+                       fi; \
                        ( \
+                       if [ -f "${BROKENWRKLOG}" ]; then \
+                               ${ECHO_MSG} "</pre>"; \
+                               ${ECHO_MSG} "<p>"; \
+                               ${ECHO_MSG} "Please view the <a href=\"../../${PKGPATH}/${BROKENWRKLOG}\">work log for ${PKGNAME}</a>"; \
+                               ${ECHO_MSG} "</p>"; \
+                               ${ECHO_MSG} "<pre>"; \
+                               ${ECHO_MSG} ""; \
+                       fi ; \
                        ${ECHO_MSG} "BULK> ${PKGNAME} was marked as broken:" ; \
                        ${LS} -la ${BROKENFILE} ; \
                        ${ECHO_MSG} ${MAKE} deinstall ; \
diff -r f23b49e436fa -r 67a07d687ed8 mk/bulk/build
--- a/mk/bulk/build     Tue Nov 16 18:04:38 2004 +0000
+++ b/mk/bulk/build     Tue Nov 16 18:34:12 2004 +0000
@@ -1,5 +1,5 @@
 #!/bin/sh
-# $NetBSD: build,v 1.44 2004/11/12 15:39:22 jlam Exp $
+# $NetBSD: build,v 1.45 2004/11/16 18:34:12 jlam Exp $
 
 #
 # Copyright (c) 1999, 2000 Hubert Feyrer <hubertf%NetBSD.org@localhost>
@@ -196,6 +196,7 @@
        INDEXFILE=`${BMAKE} show-var VARNAME=INDEXFILE` || fail=yes
        ORDERFILE=`${BMAKE} show-var VARNAME=ORDERFILE` || fail=yes
        BROKENFILE=`${BMAKE} show-var VARNAME=BROKENFILE` || fail=yes
+       BROKENWRKLOG=`${BMAKE} show-var VARNAME=BROKENWRKLOG ` || fail=yes
        BUILDLOG=`${BMAKE} show-var VARNAME=BUILDLOG` || fail=yes
        STARTFILE=`${BMAKE} show-var VARNAME=STARTFILE` || fail=yes
        AWK=`${BMAKE} show-var VARNAME=AWK` || fail=yes
@@ -221,6 +222,7 @@
 echo "INDEXFILE       = $INDEXFILE"
 echo "ORDERFILE       = $ORDERFILE"
 echo "BROKENFILE      = $BROKENFILE"
+echo "BROKENWRKLOG    = $BROKENWRKLOG"
 echo "BUILDLOG        = $BUILDLOG"
 echo "STARTFILE       = $STARTFILE"
 echo "----------------------------------"
@@ -235,6 +237,7 @@
        -z "$INDEXFILE" -o \
        -z "$ORDERFILE" -o \
        -z "$BROKENFILE" -o \
+       -z "$BROKENWRKLOG" -o \
        -z "$BUILDLOG" -o \
        -z "$STARTFILE" -o \
        -z "$AWK" -o \
diff -r f23b49e436fa -r 67a07d687ed8 mk/bulk/post-build
--- a/mk/bulk/post-build        Tue Nov 16 18:04:38 2004 +0000
+++ b/mk/bulk/post-build        Tue Nov 16 18:34:12 2004 +0000
@@ -1,5 +1,5 @@
 #!/usr/pkg/bin/perl
-# $NetBSD: post-build,v 1.45 2004/07/15 11:57:26 grant Exp $
+# $NetBSD: post-build,v 1.46 2004/11/16 18:34:12 jlam Exp $
 #
 # Collect stuff after a pkg bulk build
 #
@@ -42,10 +42,11 @@
 
 chomp($os=`uname -s`);
 
-# Extract the name of the files used for the build log and broken build log.
+# Extract the names of the files used for the build log and broken build logs.
 # These have defaults set by bsd.bulk-pkg.mk and may be overridden in
 # /etc/mk.conf
 chomp($BROKENFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=BROKENFILE )`);
+chomp($BROKENWRKLOG=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=BROKENWRKLOG )`);
 
 # Also extract the names of the cache files used during the bulk build.  We'll
 # save a copy of those to help debug if the build messed up.
@@ -92,7 +93,7 @@
 
 # Copy over the output from the build process
 chdir($USR_PKGSRC);
-system("find . -name $BROKENFILE -print | $GTAR -T - -plcf - | (cd $FTP; $GTAR -plxf -)");
+system("find . -name $BROKENFILE -o -name $BROKENWRKLOG -print | $GTAR -T - -plcf - | (cd $FTP; $GTAR -plxf -)");
 
 # Copy over the cache files used during the build
 foreach my $f ($BULK_DBFILE, $DEPENDSTREEFILE, $DEPENDSFILE, $SUPPORTSFILE, $INDEXFILE, $ORDERFILE) {
diff -r f23b49e436fa -r 67a07d687ed8 mk/bulk/pre-build
--- a/mk/bulk/pre-build Tue Nov 16 18:04:38 2004 +0000
+++ b/mk/bulk/pre-build Tue Nov 16 18:34:12 2004 +0000
@@ -1,5 +1,5 @@
 #!/bin/sh
-# $NetBSD: pre-build,v 1.39 2004/04/19 23:09:55 seb Exp $
+# $NetBSD: pre-build,v 1.40 2004/11/16 18:34:12 jlam Exp $
 #
 # Clean up system to be ready for bulk pkg build
 #
@@ -30,6 +30,11 @@
        echo "Had problems determining the name of the .broken files"
        exit 1
 fi
+BRKWRKLOG=`( cd ${PKGLINT_PKG_DIR} ; ${BMAKE} show-var VARNAME=BROKENWRKLOG )`;
+if [ "$BRKWRKLOG" = "" ]; then
+       echo "Had problems determining the name of the .broken.work files"
+       exit 1
+fi
 BLDLOG=`( cd ${PKGLINT_PKG_DIR} ; ${BMAKE} show-var VARNAME=BUILDLOG )`;
 if [ "$BLDLOG" = "" ]; then
        echo "Had problems determining the name of the .make files"
@@ -131,6 +136,7 @@
 # Clean up state files
 cd ${USR_PKGSRC}
 rm -f $BROKENF */*/$BROKENF
+rm -f $BRKWRKLOG */*/$BRKWRKLOG
 rm -f $BLDLOG */*/$BLDLOG
 rm -f $STARTFILE
 



Home | Main Index | Thread Index | Old Index