makeobsolete revision 1.31
11.1Sbouyer#!/bin/sh 21.1Sbouyer# 31.31Scegger# $NetBSD: makeobsolete,v 1.31 2009/12/05 15:56:25 cegger Exp $ 41.1Sbouyer# 51.1Sbouyer# Print out the obsolete files for a set 61.1Sbouyer# Usage: makeobsolete [-b] [-x] [-a arch] [-m machine] [-s setsdir] \ 71.1Sbouyer# [-t target] [setname ...] 81.1Sbouyer# 91.1Sbouyer 101.27Sapbrundir="$(dirname "$0")" # ${0%/*} isn't good enough when there's no "/" 111.27Sapb. "${rundir}/sets.subr" 121.31Sceggerlists= 131.1Sbouyertarget=./dist 141.22Slukemobsolete=1 151.1Sbouyer 161.22Slukemusage() 171.22Slukem{ 181.22Slukem cat 1>&2 <<USAGE 191.22SlukemUsage: ${0##*/} [-a arch] [-m machine] [-s setsdir] [setname ...] 201.30Suebayasi -L base,x,ext make specified lists 211.1Sbouyer -b make netbsd + x11 lists 221.1Sbouyer -x only make x11 lists 231.30Suebayasi -y only make extsrc lists 241.27Sapb -a arch set arch (e.g, m68k, mips, powerpc) [${MACHINE_ARCH}] 251.27Sapb -m machine set machine (e.g, amiga, i386, macppc) [${MACHINE}] 261.27Sapb -s setsdir directory to find sets [${setd}] 271.27Sapb -t target target directory [${target}] 281.1Sbouyer [setname ...] sets to build 291.1SbouyerUSAGE 301.22Slukem exit 1 311.22Slukem} 321.22Slukem 331.30Suebayasiwhile getopts L:bxya:m:s:t: ch; do 341.22Slukem case ${ch} in 351.30Suebayasi L) 361.31Scegger save_IFS="${IFS}" 371.31Scegger IFS=, 381.31Scegger for _list in ${OPTARG}; do 391.31Scegger case $_list in 401.31Scegger base) lists="${lists} ${nlists}" ;; 411.31Scegger x) lists="${lists} ${xlists}" ;; 421.31Scegger ext) lists="${lists} ${extlists}" ;; 431.31Scegger esac 441.31Scegger done 451.31Scegger IFS="${save_IFS}" 461.30Suebayasi ;; 471.30Suebayasi # backward compat 481.22Slukem b) 491.30Suebayasi lists="${nlists} ${xlists}" 501.22Slukem ;; 511.22Slukem x) 521.27Sapb lists="${xlists}" 531.22Slukem ;; 541.30Suebayasi y) 551.30Suebayasi lists="${extlists}" 561.30Suebayasi ;; 571.22Slukem a) 581.27Sapb MACHINE_ARCH="${OPTARG}" 591.27Sapb MACHINE_CPU="$(arch_to_cpu "${OPTARG}")" 601.22Slukem ;; 611.22Slukem m) 621.27Sapb MACHINE="${OPTARG}" 631.22Slukem ;; 641.22Slukem s) 651.27Sapb setsdir="${OPTARG}" 661.22Slukem ;; 671.22Slukem t) 681.27Sapb target="${OPTARG}" 691.1Sbouyer ;; 701.1Sbouyer *) 711.22Slukem usage 721.1Sbouyer ;; 731.1Sbouyer esac 741.1Sbouyerdone 751.22Slukemshift $((${OPTIND} - 1)) 761.1Sbouyerif [ -n "$1" ]; then 771.1Sbouyer lists="$*" 781.1Sbouyerfi 791.1Sbouyer 801.29Sapbif [ ! -d "${target}" ]; then 811.27Sapb echo "target directory [${target}] doesn't exist" 821.1Sbouyer exit 1 831.1Sbouyerfi 841.10Stron 851.31Sceggerfor setname in ${lists:-${nlists}}; do 861.27Sapb file="${target}/${setname}" 871.27Sapb list_set_files "${setname}" | ${AWK} '{print $1}' | \ 881.28Sapb ${SORT} -ru > "${file}" 891.13Slukemdone 90