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