summaryrefslogtreecommitdiff
path: root/mk/scripts/mkdatabase
diff options
context:
space:
mode:
Diffstat (limited to 'mk/scripts/mkdatabase')
-rwxr-xr-xmk/scripts/mkdatabase212
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
-