diff options
Diffstat (limited to 'mk/scripts/mkdatabase')
| -rwxr-xr-x | mk/scripts/mkdatabase | 212 |
1 files changed, 0 insertions, 212 deletions
diff --git a/mk/scripts/mkdatabase b/mk/scripts/mkdatabase deleted file mode 100755 index 739464e8e7b..00000000000 --- a/mk/scripts/mkdatabase +++ /dev/null @@ -1,212 +0,0 @@ -#!/bin/sh -# $NetBSD: mkdatabase,v 1.4 2003/05/06 17:42:05 jmmv Exp $ -# -# Script for generating a database with complete dependency information -# for a particular package -# -# Copyright (c) 2003 The NetBSD Foundation, Inc. -# All rights reserved. -# -# This code is derived from software contributed to The NetBSD Foundation -# by Dan McMahill. -# -# 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. -# 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. -# 3. All advertising materials mentioning features or use of this software -# must display the following acknowledgement: -# This product includes software developed by the NetBSD -# Foundation, Inc. and its contributors. -# 4. Neither the name of The NetBSD Foundation nor the names of its -# contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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. -# - - -TMPDIR=${TMPDIR:-/tmp} -BMAKE=${BMAKE:-make} -AWK=${AWK:-/usr/bin/awk} -DATABASE=${DATABASE:-${TMPDIR}/pkgdb.$$} -EXPR=${EXPR:-expr} - -# as of 2003-01-04, metapkgs/gnome gets to pass #6 so -# it is very likely that if you reach 25, something is broken -MAX_PASS=${MAX_PASS:-25} - -prog=$0 - -usage(){ - echo "$prog - Generates a complete dependency tree for a particular package" - echo "Usage: $prog [-a|--append] [-d|--debug] [-f|--database database]" - echo " " - echo " $prog -h|--help" - echo " " - echo " $prog -v|--version" - echo " " - echo "The options supported by $prog are: " - echo " " - echo " -a|--append Append to the database rather than overwriting it" - echo " " - echo " -d|--debug Enables debugging output" - echo " " - echo " -f|--database <file> Writes the database into file specified by <file>" - echo " " - echo " -h|--help Displays this help message" - echo " " - echo " -v|--version Displays the version of this script and exits." - echo " " - echo "Example: cd /usr/pkgsrc/graphics/gimp && $prog -d /tmp/gimp_database" - echo " " -} - -clean_and_exit(){ - exit 1 -} - - -###################################################################### -# -# Handle command line options -# -###################################################################### - -DEBUG= -append=no - -while - test -n "$1" -do - case "$1" - in - - # Append to the database - -a|--append) - append=yes - shift - ;; - - # Turn on debugging - -d|--debug) - DEBUG=yes - shift - ;; - - # Use the specified database file - -f|--database) - DATABASE=$2 - shift 2 - ;; - - # Help - -h|--help) - usage - exit 0 - ;; - - # Version - -v|--version) - ${AWK} '/^#[ \t]*\$NetBSD/ {gsub(/,v/,"",$3);printf("%s: Version %s, %s\n",$3,$4,$5); exit 0;}' $prog - exit 0 - ;; - - -*) echo "$prog: ERROR: $1 is not a valid option" - usage - clean_and_exit - ;; - - *) - break - ;; - - esac -done - -if [ "x$DEBUG" = "xyes" ]; then - set -v -fi - -if [ ! -d $TMPDIR ]; then - mkdir -p $TMPDIR -fi - -prompt="----> " - -case ${DATABASE} in - /*) - # we already have the absolute path to the database file - # so do nothing - ;; - - *) - # make sure we have the full path to the database file - DATABASE=`pwd`/${DATABASE} - ;; -esac - - -if [ "X$append" = "Xyes" ]; then - echo "$prompt Appending to database in ${DATABASE}" - if [ ! -f ${DATABASE} ]; then - touch ${DATABASE} - fi - # make sure we haven't already been listed before - # appending ourselves. - here=`pwd` - tmp1=`dirname $here` - pkgcat=`basename $tmp1` - pkg=`basename $here` - pkgpath=$pkgcat/$pkg - if [ "x$DEBUG" = "xyes" ]; then - echo "Looking for $pkgpath before appending" - fi - if grep "^index $pkgpath " ${DATABASE} >/dev/null 2>&1 ; then - echo "$prompt $pkgpath has already been depended. Skipping..." - exit 0 - else - ${BMAKE} print-summary-data >> ${DATABASE} || exit 1 - fi -else - echo "$prompt Creating new database in ${DATABASE}" - ${BMAKE} print-summary-data > ${DATABASE} || exit 1 -fi -here=`pwd` -echo "$prompt Depending in $here (pass #1)" -dirs=`${AWK} -f ../../mk/scripts/chkdatabase.awk debug=${DEBUG} ${DATABASE}` -pass=2 -while [ ! -z "$dirs" -a $pass -lt ${MAX_PASS} ]; do - for d in $dirs ; do - echo "$prompt Depending in ../../$d (pass #$pass)" ;\ - cd ../../$d && ${BMAKE} print-summary-data >> ${DATABASE} || exit 1 - cd $here - done - dirs=`${AWK} -f ../../mk/scripts/chkdatabase.awk debug=${DEBUG} ${DATABASE}` - pass=`${EXPR} $pass + 1` -done - -if [ $pass -eq ${MAX_PASS} ]; then - echo "ERROR: You have reached $pass times through the dependency tree" - echo " and _still_ not finished. This is probably due to a broken" - echo " set of dependencies. You may wish to examine the partial" - echo " database left in ${DATABASE}" - exit 1 -else - echo "Complete dependency database left in ${DATABASE}" -fi - |
