pkgsrc-Changes-HG archive

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

[pkgsrc/tv-derecurse]: pkgsrc/mk sync with HEAD



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b28cdaeb57e7
branches:  tv-derecurse
changeset: 483979:b28cdaeb57e7
user:      tv <tv%pkgsrc.org@localhost>
date:      Thu Jan 13 20:11:55 2005 +0000

description:
sync with HEAD

diffstat:

 mk/bsd.pkg.use.mk            |    4 +-
 mk/bulk/bsd.bulk-pkg.mk      |   25 ++-
 mk/bulk/do-sandbox-build     |    4 +-
 mk/bulk/do-sandbox-upload    |   11 +
 mk/bulk/post-build           |  252 ++++++++++++++++++++++++------------------
 mk/bulk/pre-build            |    9 +-
 mk/compiler.mk               |   23 ++-
 mk/compiler/ccache.mk        |   41 ++++++-
 mk/compiler/ccc.mk           |   84 ++++++++------
 mk/compiler/distcc.mk        |   41 ++++++-
 mk/compiler/f2c.mk           |  128 +++++++++++++++++++++
 mk/compiler/gcc.mk           |   19 +++-
 mk/compiler/mipspro-ucode.mk |   37 ++++++-
 mk/compiler/mipspro.mk       |   41 ++++--
 mk/compiler/sunpro.mk        |   63 ++++++----
 mk/compiler/xlc.mk           |  106 ++++++++++++-----
 mk/defaults/mk.conf          |   14 ++-
 mk/java-vm.mk                |   28 ++--
 mk/platform/DragonFly.mk     |    4 +-
 mk/texinfo.mk                |   38 ++++++-
 mk/wrapper/bsd.wrapper.mk    |    6 +-
 21 files changed, 704 insertions(+), 274 deletions(-)

diffs (truncated from 1641 to 300 lines):

diff -r e61f2cf77894 -r b28cdaeb57e7 mk/bsd.pkg.use.mk
--- a/mk/bsd.pkg.use.mk Mon Jan 10 16:15:24 2005 +0000
+++ b/mk/bsd.pkg.use.mk Thu Jan 13 20:11:55 2005 +0000
@@ -1,8 +1,10 @@
-#      $NetBSD: bsd.pkg.use.mk,v 1.1.2.5 2005/01/10 16:15:25 tv Exp $
+#      $NetBSD: bsd.pkg.use.mk,v 1.1.2.6 2005/01/13 20:11:55 tv Exp $
 #
 # Turn USE_* macros into proper depedency logic.  Included near the top of
 # bsd.pkg.mk, after bsd.prefs.mk.
 
+PREPEND_PATH+=         ${LOCALBASE}/bin
+
 ############################################################################
 # ${PREFIX} selection
 ############################################################################
diff -r e61f2cf77894 -r b28cdaeb57e7 mk/bulk/bsd.bulk-pkg.mk
--- a/mk/bulk/bsd.bulk-pkg.mk   Mon Jan 10 16:15:24 2005 +0000
+++ b/mk/bulk/bsd.bulk-pkg.mk   Thu Jan 13 20:11:55 2005 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: bsd.bulk-pkg.mk,v 1.65.2.1 2004/11/23 20:54:12 tv Exp $
+#      $NetBSD: bsd.bulk-pkg.mk,v 1.65.2.2 2005/01/13 20:11:55 tv Exp $
 
 #
 # Copyright (c) 1999, 2000 Hubert Feyrer <hubertf%NetBSD.org@localhost>
@@ -79,46 +79,51 @@
 # This file is where the log of the build goes
 BUILDLOG?=     .make${BULK_ID}
 
+# This is the directory in which bulk build global files should be kept.
+# It defaults to ${PKGSRCDIR}, but may be better suited to another directory
+# if pkgsrc is on a remote (e.g., nfs) filesystem.
+BULKFILESDIR?= ${PKGSRCDIR}
+
 # This is a top level file which lists the entire pkgsrc depends tree in the
 # format:
 # foo/bar devel/libfoo
 # meaning 'foo/bar' is requied to build 'devel/libfoo'
 # this is in the format needed by tsort(1)
-DEPENDSTREEFILE?=      ${PKGSRCDIR}/.dependstree${BULK_ID}
+DEPENDSTREEFILE?=      ${BULKFILESDIR}/.dependstree${BULK_ID}
 
 # This is a top level file which lists the entire pkgsrc depends tree in the
 # format:
 # foo/bar depends on: devel/libfoo devel/libbar devel/baz .....
 # ie, to build foo/bar we need devel/libfoo devel/libbar devel/baz ... installed
-DEPENDSFILE?=  ${PKGSRCDIR}/.depends${BULK_ID}
+DEPENDSFILE?=  ${BULKFILESDIR}/.depends${BULK_ID}
 
 # This is a top level file which lists the entire pkgsrc depends tree in the
 # format:
 # devel/libfoo is depended upon by: foo/bar graphics/gtkfoo ...
 # ie, to build foo/bar we need devel/libfoo to be installed.
 #     to build graphics/gtkfoo we need devel/libfoo to be installed
-SUPPORTSFILE?= ${PKGSRCDIR}/.supports${BULK_ID}
+SUPPORTSFILE?= ${BULKFILESDIR}/.supports${BULK_ID}
 
 # This is a top level file which cross-references each package name and pkg
 # directory in the format:
 # devel/libfoo libfoo-1.3
-INDEXFILE?=    ${PKGSRCDIR}/.index${BULK_ID}
+INDEXFILE?=    ${BULKFILESDIR}/.index${BULK_ID}
 
 # File containing a list of all the packages in the correct order for a bulk
 # build.  The correct order is one where packages that are required by others
 # are built before the packages which require them.
-ORDERFILE?=    ${PKGSRCDIR}/.order${BULK_ID}
+ORDERFILE?=    ${BULKFILESDIR}/.order${BULK_ID}
 
 # File which is used as a timestamp for when the build started.  This is used
 # eventually for looking for leftover files (files not properly deinstalled)
-STARTFILE?=    ${PKGSRCDIR}/.start${BULK_ID}
+STARTFILE?=    ${BULKFILESDIR}/.start${BULK_ID}
 
 # File which is used as a database for bulk builds in which SPECIFIC_PKGS is
 # defined.  This database is used to hold all the dependency and index
 # information for the specific packages as well as their dependencies.  In a
 # SPECIFIC_PKGS bulk build, this file is created and then used to create the
 # INDEXFILE and DEPENDSTREEFILE.
-BULK_DBFILE?=  ${PKGSRCDIR}/.bulk_db${BULK_ID}
+BULK_DBFILE?=  ${BULKFILESDIR}/.bulk_db${BULK_ID}
 
 # A list of pkgs which we should _never_ delete during a build.  The primary
 # use is for digest and also for xpkgwedge.  Add pkgtools/xpkgwedge in
@@ -202,8 +207,8 @@
        fi ; \
        if [ "$$uptodate" = "1" ]; then \
                ${SHCOMMENT} "Check required binary packages" ; \
-               deps=${DEPENDS:C/:.*//:Q} ; \
-               for dep in $$deps ; do \
+               (${DEPENDS:C/:.*$//:@d@${ECHO} ${d:Q};@} ${TRUE}) | \
+               while read dep; do \
                        ${SHCOMMENT} "check against the binary pkg that pkg_add would pick, too:" ; \
                        ${SHCOMMENT} "(Only one should be returned here, really...)" ; \
                        pkg=`${PKG_ADMIN} lsbest "${PACKAGES}/All/$$dep"` ; \
diff -r e61f2cf77894 -r b28cdaeb57e7 mk/bulk/do-sandbox-build
--- a/mk/bulk/do-sandbox-build  Mon Jan 10 16:15:24 2005 +0000
+++ b/mk/bulk/do-sandbox-build  Thu Jan 13 20:11:55 2005 +0000
@@ -1,5 +1,5 @@
 #!/bin/sh
-#      $NetBSD: do-sandbox-build,v 1.7 2004/01/15 10:02:54 grant Exp $
+#      $NetBSD: do-sandbox-build,v 1.7.8.1 2005/01/13 20:11:55 tv Exp $
 
 #
 # Script to start a sandbox build
@@ -8,4 +8,4 @@
 #
 
 sh=`which sh`
-chroot /usr/sandbox $sh -c "cd /usr/cvs.local/pkgsrc/ ; $sh mk/bulk/build $@"
+chroot /usr/sandbox $sh -c "cd /usr/pkgsrc/ ; $sh mk/bulk/build $@"
diff -r e61f2cf77894 -r b28cdaeb57e7 mk/bulk/do-sandbox-upload
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/mk/bulk/do-sandbox-upload Thu Jan 13 20:11:55 2005 +0000
@@ -0,0 +1,11 @@
+#!/bin/sh
+#      $NetBSD: do-sandbox-upload,v 1.2.2.2 2005/01/13 20:11:55 tv Exp $
+
+#
+# Script to start a sandbox build
+#
+# See pkgsrc/Packages.txt for documentation!
+#
+
+sh=`which sh`
+chroot /usr/sandbox $sh -c "cd /usr/pkgsrc/ ; $sh mk/bulk/upload $@"
diff -r e61f2cf77894 -r b28cdaeb57e7 mk/bulk/post-build
--- a/mk/bulk/post-build        Mon Jan 10 16:15:24 2005 +0000
+++ b/mk/bulk/post-build        Thu Jan 13 20:11:55 2005 +0000
@@ -1,5 +1,5 @@
 #!/usr/pkg/bin/perl
-# $NetBSD: post-build,v 1.47.2.1 2004/11/23 20:54:12 tv Exp $
+# $NetBSD: post-build,v 1.47.2.2 2005/01/13 20:11:55 tv Exp $
 #
 # Collect stuff after a pkg bulk build
 #
@@ -7,140 +7,174 @@
 #
 
 use File::Basename;
-use POSIX ();
+use POSIX qw(strftime);
+use strict;
+use warnings;
+
+my %vars;
+my $verbose = 1; # set to 2 to see more command execution detail
+
+sub my_system (@) {
+       print STDERR '> '.join(' ', @_)."\n" if ($verbose >= 2);
+       system(@_);
+}
 
 # Where config vars are stored (/bin/sh syntax)
 
-if (-f $ENV{"BULK_BUILD_CONF"}) {
-       $BULK_BUILD_CONF=$ENV{"BULK_BUILD_CONF"};
-} else {
-       $BULK_BUILD_CONF=dirname("$0")."/build.conf";
-}
+my $BULK_BUILD_CONF = $ENV{BULK_BUILD_CONF} || (dirname($0).'/build.conf');
+$BULK_BUILD_CONF = "./$BULK_BUILD_CONF" if ($BULK_BUILD_CONF !~ m:^/:);
 
 # Dig given variable out of config file, and set it
-sub getconf {
-       local($var)=@_;
-       local($val);
+sub getconf (@) {
+       open(I, ". $BULK_BUILD_CONF; for var in ".join(' ', @_)."; do eval echo \\\${\$var}; done |") || die 'cannot open pipe';
+       
+       foreach my $var (@_) {
+               $vars{$var} = <I>;
+               chomp $vars{$var};
+               die "\$$var not defined by $BULK_BUILD_CONF" if ($vars{$var} eq '');
 
-       if ($BULK_BUILD_CONF =~ /^\//) {
-               chomp($val=`. $BULK_BUILD_CONF ; echo \$$var`);
-       } else {
-               chomp($val=`. ./$BULK_BUILD_CONF ; echo \$$var`);
+               print STDERR "> $var=$vars{$var}\n" if ($verbose >= 2);
        }
-       eval "\$$var=\"$val\";";
 }
 
-getconf("ADMINSIG");           # "-Your Name"
-getconf("FTPURL");             # "pub/NetBSD/pkgstat/`date +%Y%m%d.%H%M`"
-getconf("FTP");                        # "/disk1/ftp/${FTPURL}"
-getconf("FTPHOST");            # ftp://ftp.machi.ne/
-getconf("REPORT");             # "broken.html"
-getconf("USR_PKGSRC");         # "/usr/pkgsrc"
-getconf("osrev");              # `uname -r`
-getconf("arch");               # `uname -m`
-$reportf=basename($REPORT);
+getconf(
+       'ADMINSIG',             # "-Your Name"
+       'FTPURL',               # "pub/NetBSD/pkgstat/`date +%Y%m%d.%H%M`"
+       'FTP',                  # "/disk1/ftp/${FTPURL}"
+       'FTPHOST',              # ftp://ftp.machi.ne/
+       'REPORT',               # "broken.html"
+       'USR_PKGSRC',           # "/usr/pkgsrc"
+       'arch',                 # `uname -m`
+       'osrev',                # `uname -r`
+);
+
+my $reportf = basename($vars{REPORT});
 
-chomp($os=`uname -s`);
+my $os = `uname -s`;
+chomp $os;
+
+my $BMAKE = $ENV{BMAKE} || die '$BMAKE not defined in environment';
+
+sub getmakevars (@) {
+       open(I, "cd $vars{USR_PKGSRC}/pkgtools/pkglint && $BMAKE show-vars BATCH=1 VARNAMES='".join(' ', @_)."' |") || die 'cannot open pipe';
+
+       foreach my $var (@_) {
+               $vars{$var} = <I>;
+               chomp $vars{$var};
+               die "\${$var} not defined by $BMAKE" if ($vars{$var} eq '');
+
+               print STDERR "> $var=$vars{$var}\n" if ($verbose >= 2);
+       }
+}
 
 # 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 )`);
+getmakevars(qw(
+       BROKENFILE
+       BROKENWRKLOG
+       BULK_DBFILE
+       DEPENDSFILE
+       DEPENDSTREEFILE
+       FIND
+       GTAR
+       INDEXFILE
+       LOCALBASE
+       ORDERFILE
+       PKG_DBDIR
+       STARTFILE
+       SUPPORTSFILE
+       X11BASE
+));
 
-# 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.
-chomp($BULK_DBFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=BULK_DBFILE )`);
-chomp($DEPENDSTREEFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=DEPENDSTREEFILE )`);
-chomp($DEPENDSFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=DEPENDSFILE )`);
-chomp($SUPPORTSFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=SUPPORTSFILE )`);
-chomp($INDEXFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=INDEXFILE )`);
-chomp($ORDERFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=ORDERFILE )`);
-chomp($STARTFILE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=STARTFILE )`);
-chomp($LOCALBASE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=LOCALBASE )`);
-chomp($X11BASE=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=X11BASE )`);
-chomp($FIND=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=FIND )`);
-chomp($GTAR=`( cd $USR_PKGSRC/pkgtools/pkglint ; $ENV{"BMAKE"} show-var VARNAME=GTAR )`);
-$bulkdbfile=basename($BULK_DBFILE);
-$dtfile=basename($DEPENDSTREEFILE);
-$depfile=basename($DEPENDSFILE);
-$supfile=basename($SUPPORTSFILE);
-$indfile=basename($INDEXFILE);
-$ordfile=basename($ORDERFILE);
-$startfile=basename($STARTFILE);
+my $bulkdbfile = basename($vars{BULK_DBFILE});
+my $dtfile = basename($vars{DEPENDSTREEFILE});
+my $depfile = basename($vars{DEPENDSFILE});
+my $supfile = basename($vars{SUPPORTSFILE});
+my $indfile = basename($vars{INDEXFILE});
+my $ordfile = basename($vars{ORDERFILE});
 
-$startdate = (stat($STARTFILE))[9];
+my $startdate = (stat($vars{STARTFILE}))[9];
+my $enddate = '';
 if ($startdate == 0) {
        $startdate = "unknown";
 } else {
        local $ENV{TZ} = "UTC";
-       $startdate = POSIX::strftime("%c %Z", gmtime($startdate));
-       $enddate = POSIX::strftime("%c %Z", gmtime(time()));
+       $startdate = strftime("%c %Z", gmtime($startdate));
+       $enddate = strftime("%c %Z", gmtime(time()));
 }
 
-$verbose=1;
-
-$report_head = <<EOF;
+my $report_head = <<EOF;
 Package                    Breaks  Maintainer
 --------------------------------------------------------------
 EOF
-$report_form = <<EOF;
+my $report_form = <<EOF;
 @<<<<<<<<<<<<<<<<<<<<<<<<< @<<<<<< @<<<<<<<<<<<<<<<<<<<<<<<<
-$pkg                       $nbrokenby  $maintainer
 EOF
+# $pkg, $nbrokenby, $maintainer
 
-system("mkdir -p ${FTP}");



Home | Main Index | Thread Index | Old Index