regpkgset revision 1.2
11.1Sagc#! /bin/sh 21.1Sagc# 31.2Sdyoung# $NetBSD: regpkgset,v 1.2 2004/01/16 10:05:10 dyoung Exp $ 41.1Sagc# 51.1Sagc# Copyright (c) 2003 Alistair G. Crooks. All rights reserved. 61.1Sagc# 71.1Sagc# Redistribution and use in source and binary forms, with or without 81.1Sagc# modification, are permitted provided that the following conditions 91.1Sagc# are met: 101.1Sagc# 1. Redistributions of source code must retain the above copyright 111.1Sagc# notice, this list of conditions and the following disclaimer. 121.1Sagc# 2. Redistributions in binary form must reproduce the above copyright 131.1Sagc# notice, this list of conditions and the following disclaimer in the 141.1Sagc# documentation and/or other materials provided with the distribution. 151.1Sagc# 3. All advertising materials mentioning features or use of this software 161.1Sagc# must display the following acknowledgement: 171.1Sagc# This product includes software developed by Alistair G. Crooks. 181.1Sagc# for the NetBSD project. 191.1Sagc# 4. The name of the author may not be used to endorse or promote 201.1Sagc# products derived from this software without specific prior written 211.1Sagc# permission. 221.1Sagc# 231.1Sagc# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS 241.1Sagc# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 251.1Sagc# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 261.1Sagc# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 271.1Sagc# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 281.1Sagc# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 291.1Sagc# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 301.1Sagc# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 311.1Sagc# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 321.1Sagc# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 331.1Sagc# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 341.1Sagc# 351.1Sagc 361.1Sagc# Usage: regpkgset set 371.1Sagc 381.1Sagcverbose="" 391.2Sdyoungcache="" 401.1Sagc 411.1Sagcwhile [ $# -gt 1 ]; do 421.1Sagc case $1 in 431.1Sagc -v) verbose=$1 ;; 441.2Sdyoung -c) cache=$1 ;; 451.1Sagc *) break ;; 461.1Sagc esac 471.1Sagc shift 481.1Sagcdone 491.1Sagc 501.1Sagcif [ $# -lt 1 ]; then 511.1Sagc echo "Usage: regpkgset pkgset..." 521.1Sagc exit 1 531.1Sagcfi 541.1Sagc 551.1Sagccase $1 in 561.1Sagcall) list="base comp etc games man misc text" ;; 571.1Sagc*) list=$@ ;; 581.1Sagcesac 591.1Sagc 601.2Sdyoungif [ x${cache} != x ]; then 611.2Sdyoung BUILD_INFO_CACHE=$(mktemp /var/tmp/$(basename $0)-BUILD_INFO.XXXXXX) 621.2Sdyoung export BUILD_INFO_CACHE 631.2Sdyoung { 641.2Sdyoung echo "OPSYS=`uname -s`" 651.2Sdyoung echo "OS_VERSION=`uname -r`" 661.2Sdyoung make -f- all <<EOF 671.2Sdyoung.include <bsd.own.mk> 681.2Sdyoungall: 691.2Sdyoung @echo OBJECT_FMT=${OBJECT_FMT} 701.2Sdyoung @echo MACHINE_ARCH=${MACHINE_ARCH} 711.2Sdyoung @echo MACHINE_GNU_ARCH=${MACHINE_GNU_ARCH} 721.2SdyoungEOF 731.2Sdyoung echo "_PKGTOOLS_VER=`pkg_create -V`" 741.2Sdyoung } > ${BUILD_INFO_CACHE} 751.2Sdyoungfi 761.2Sdyoung 771.1Sagcfor pkgset in $list; do 781.1Sagc for pkg in `./listpkgs $pkgset`; do 791.1Sagc ./regpkg $verbose $pkgset $pkg 801.1Sagc done 811.1Sagcdone 821.1Sagc 831.2Sdyoung[ x${BUILD_INFO_CACHE} != x ] && rm -f ${BUILD_INFO_CACHE} 841.2Sdyoung 851.1Sagcexit 0 86