makeobsolete revision 1.32
11.1Sbouyer#!/bin/sh 21.1Sbouyer# 31.32Slukem# $NetBSD: makeobsolete,v 1.32 2022/08/21 07:10:03 lukem 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.32Slukem -L base,x make specified lists 211.1Sbouyer -b make netbsd + x11 lists 221.1Sbouyer -x only make x11 lists 231.27Sapb -a arch set arch (e.g, m68k, mips, powerpc) [${MACHINE_ARCH}] 241.27Sapb -m machine set machine (e.g, amiga, i386, macppc) [${MACHINE}] 251.27Sapb -s setsdir directory to find sets [${setd}] 261.27Sapb -t target target directory [${target}] 271.1Sbouyer [setname ...] sets to build 281.1SbouyerUSAGE 291.22Slukem exit 1 301.22Slukem} 311.22Slukem 321.32Slukemwhile getopts L:bxa:m:s:t: ch; do 331.22Slukem case ${ch} in 341.30Suebayasi L) 351.31Scegger save_IFS="${IFS}" 361.31Scegger IFS=, 371.31Scegger for _list in ${OPTARG}; do 381.31Scegger case $_list in 391.31Scegger base) lists="${lists} ${nlists}" ;; 401.31Scegger x) lists="${lists} ${xlists}" ;; 411.31Scegger esac 421.31Scegger done 431.31Scegger IFS="${save_IFS}" 441.30Suebayasi ;; 451.30Suebayasi # backward compat 461.22Slukem b) 471.30Suebayasi lists="${nlists} ${xlists}" 481.22Slukem ;; 491.22Slukem x) 501.27Sapb lists="${xlists}" 511.22Slukem ;; 521.22Slukem a) 531.27Sapb MACHINE_ARCH="${OPTARG}" 541.27Sapb MACHINE_CPU="$(arch_to_cpu "${OPTARG}")" 551.22Slukem ;; 561.22Slukem m) 571.27Sapb MACHINE="${OPTARG}" 581.22Slukem ;; 591.22Slukem s) 601.27Sapb setsdir="${OPTARG}" 611.22Slukem ;; 621.22Slukem t) 631.27Sapb target="${OPTARG}" 641.1Sbouyer ;; 651.1Sbouyer *) 661.22Slukem usage 671.1Sbouyer ;; 681.1Sbouyer esac 691.1Sbouyerdone 701.22Slukemshift $((${OPTIND} - 1)) 711.1Sbouyerif [ -n "$1" ]; then 721.1Sbouyer lists="$*" 731.1Sbouyerfi 741.1Sbouyer 751.29Sapbif [ ! -d "${target}" ]; then 761.27Sapb echo "target directory [${target}] doesn't exist" 771.1Sbouyer exit 1 781.1Sbouyerfi 791.10Stron 801.31Sceggerfor setname in ${lists:-${nlists}}; do 811.27Sapb file="${target}/${setname}" 821.27Sapb list_set_files "${setname}" | ${AWK} '{print $1}' | \ 831.28Sapb ${SORT} -ru > "${file}" 841.13Slukemdone 85