sets.subr revision 1.7
1# 2# list_set_files setname 3# 4# Produce a packing list for setname. Each record is a line 5# consisting of a path and a System Package name, separated by 6# whitespace. E.g., 7# 8# ./bin/cp base-util-root 9# 10# Environment 11# 12# have_gcc3 13# krb 14# krb4 15# lintlibs 16# lkm 17# machine 18# machine_arch 19# machine_cpu 20# setd 21# shlib 22# stlib 23# toolchain_missing 24# 25list_set_files () { 26 for setname; do 27 list_set_lists $setname 28 done | xargs cat | grep -v '^#' 29} 30 31# 32# list_set_lists setname 33# 34# Print to stdout a list of files, one filename per line, which 35# concatenate to create the packing list for setname. E.g., 36# 37# .../lists/base/mi 38# .../lists/base/rescue.mi 39# .../lists/base/md.i386 40# . 41# . 42# . 43# 44# In each file, a record consists of a path and a System Package name, 45# separated by whitespace. E.g., 46# 47# # $NetBSD: sets.subr,v 1.7 2003/12/11 09:46:26 dyoung Exp $ 48# . base-sys-root 49# ./altroot base-sys-root 50# ./bin base-sys-root 51# ./bin/[ base-util-root 52# ./bin/cat base-util-root 53# . 54# . 55# . 56# 57# A # in the first column marks a comment. 58# 59# Environment 60# 61# have_gcc3 62# krb 63# krb4 64# lintlibs 65# lkm 66# machine 67# machine_arch 68# machine_cpu 69# setd 70# shlib 71# stlib 72# toolchain_missing 73# 74list_set_lists () { 75 setname=$1 76 77 echo $setd/lists/$setname/mi 78 if [ "$machine" != "$machine_arch" ]; then 79 # Prefer an ad.${machine_arch} over an ad.${machine_cpu}, 80 # since the arch-specific one will be more specific than 81 # the cpu-specific one. 82 if [ -f $setd/lists/$setname/ad.${machine_arch} ]; then 83 echo $setd/lists/$setname/ad.${machine_arch} 84 elif [ -f $setd/lists/$setname/ad.${machine_cpu} ]; then 85 echo $setd/lists/$setname/ad.${machine_cpu} 86 fi 87 if [ "$shlib" != "no" -a \ 88 -f $setd/lists/$setname/ad.${machine_cpu}.shl ]; then 89 echo $setd/lists/$setname/ad.${machine_cpu}.shl 90 fi 91 fi 92 if [ -f $setd/lists/$setname/md.${machine}.${machine_arch} ]; then 93 echo $setd/lists/$setname/md.${machine}.${machine_arch} 94 elif [ -f $setd/lists/$setname/md.${machine} ]; then 95 echo $setd/lists/$setname/md.${machine} 96 fi 97 if [ -f $setd/lists/$setname/stl.mi ]; then 98 echo $setd/lists/$setname/stl.mi 99 fi 100 if [ -f $setd/lists/$setname/stl.${stlib} ]; then 101 echo $setd/lists/$setname/stl.${stlib} 102 fi 103 if [ "$shlib" != "no" ]; then 104 if [ -f $setd/lists/$setname/shl.mi ]; then 105 echo $setd/lists/$setname/shl.mi 106 fi 107 if [ -f $setd/lists/$setname/shl.${shlib} ]; then 108 echo $setd/lists/$setname/shl.${shlib} 109 fi 110 if [ "$krb" != "no" -a \ 111 -f $setd/lists/$setname/krb.shl.${shlib} ]; then 112 echo $setd/lists/$setname/krb.shl.${shlib} 113 fi 114 if [ "$krb" != "no" -a "$krb4" != "no" -a \ 115 -f $setd/lists/$setname/krb4.shl.${shlib} ]; then 116 echo $setd/lists/$setname/krb4.shl.${shlib} 117 fi 118 if [ "$krb" != "no" -a -f $setd/lists/$setname/krb.shl.mi ] 119 then 120 echo $setd/lists/$setname/krb.shl.mi 121 fi 122 if [ "$krb" != "no" -a "$krb4" != "no" -a \ 123 -f $setd/lists/$setname/krb4.shl.mi ] 124 then 125 echo $setd/lists/$setname/krb4.shl.mi 126 fi 127 fi 128 if [ "$krb" != "no" -a -f $setd/lists/$setname/krb.mi ]; then 129 echo $setd/lists/$setname/krb.mi 130 fi 131 if [ "$krb" != "no" -a "$krb4" != "no" -a \ 132 -f $setd/lists/$setname/krb4.mi ]; then 133 echo $setd/lists/$setname/krb4.mi 134 fi 135 if [ "$lkm" != "no" ]; then 136 if [ -f $setd/lists/$setname/lkm.mi ]; then 137 echo $setd/lists/$setname/lkm.mi 138 fi 139 fi 140 if [ "$lintlibs" != no ]; then 141 if [ -f $setd/lists/$setname/lint.mi ]; then 142 echo $setd/lists/$setname/lint.mi 143 fi 144 if [ "$krb" != "no" -a "$krb4" != "no" -a \ 145 -f $setd/lists/$setname/krb4.lint.mi ] 146 then 147 echo $setd/lists/$setname/krb4.lint.mi 148 fi 149 if [ "$krb" != "no" -a -f $setd/lists/$setname/krb.lint.mi ] 150 then 151 echo $setd/lists/$setname/krb.lint.mi 152 fi 153 fi 154 if [ "$toolchain_missing" != "yes" ]; then 155 if [ "$have_gcc3" = "yes" ]; then 156 if [ -f $setd/lists/$setname/gcc.mi ]; then 157 echo $setd/lists/$setname/gcc.mi 158 fi 159 if [ "$shlib" != "no" ]; then 160 if [ -f $setd/lists/$setname/gcc.shl ]; then 161 echo $setd/lists/$setname/gcc.shl 162 fi 163 fi 164 else 165 if [ -f $setd/lists/$setname/tc.mi ]; then 166 echo $setd/lists/$setname/tc.mi 167 fi 168 if [ "$shlib" != "no" ]; then 169 if [ -f $setd/lists/$setname/tc.shl ]; then 170 echo $setd/lists/$setname/tc.shl 171 fi 172 fi 173 fi 174 fi 175 176 if [ -f $setd/lists/$setname/rescue.mi ]; then 177 echo $setd/lists/$setname/rescue.mi 178 fi 179 if [ -f $setd/lists/$setname/rescue.${machine} ]; then 180 echo $setd/lists/$setname/rescue.${machine} 181 fi 182 if [ "$machine" != "$machine_arch" ]; then 183 # Prefer a rescue.ad.${machine_arch} over a 184 # rescue.ad.${machine_cpu}, since the arch- 185 # specific one will be more specific than the 186 # cpu-specific one. 187 if [ -f $setd/lists/$setname/rescue.ad.${machine_arch} ]; then 188 echo $setd/lists/$setname/rescue.ad.${machine_arch} 189 elif [ -f $setd/lists/$setname/rescue.ad.${machine_cpu} ]; then 190 echo $setd/lists/$setname/rescue.ad.${machine_cpu} 191 fi 192 if [ "$shlib" != "no" -a -f \ 193 $setd/lists/$setname/rescue.ad.${machine_cpu}.shl ]; then 194 echo $setd/lists/$setname/rescue.ad.${machine_cpu}.shl 195 fi 196 fi 197} 198 199arch_to_cpu () { 200MACHINE_ARCH=${1} ${MAKE:-make} -f- all <<EOF 201.include <bsd.own.mk> 202all: 203 @echo \${MACHINE_CPU} 204EOF 205} 206 207