sets.subr revision 1.7
11.1Sdyoung#
21.1Sdyoung# list_set_files setname
31.1Sdyoung# 
41.1Sdyoung# Produce a packing list for setname. Each record is a line
51.1Sdyoung# consisting of a path and a System Package name, separated by
61.1Sdyoung# whitespace. E.g.,
71.1Sdyoung#
81.1Sdyoung# ./bin/cp                base-util-root
91.1Sdyoung#
101.1Sdyoung# Environment
111.1Sdyoung#
121.6Stsutsui#	have_gcc3
131.7Sdyoung#	krb
141.7Sdyoung#	krb4
151.3Sdyoung# 	lintlibs
161.3Sdyoung# 	lkm
171.1Sdyoung# 	machine
181.1Sdyoung# 	machine_arch
191.1Sdyoung# 	machine_cpu
201.3Sdyoung# 	setd
211.1Sdyoung# 	shlib
221.1Sdyoung# 	stlib
231.1Sdyoung# 	toolchain_missing
241.1Sdyoung#
251.1Sdyounglist_set_files () {
261.1Sdyoung	for setname; do
271.1Sdyoung		list_set_lists $setname
281.1Sdyoung	done | xargs cat | grep -v '^#'
291.1Sdyoung}
301.1Sdyoung
311.1Sdyoung#
321.1Sdyoung# list_set_lists setname
331.1Sdyoung# 
341.1Sdyoung# Print to stdout a list of files, one filename per line, which
351.1Sdyoung# concatenate to create the packing list for setname. E.g.,
361.1Sdyoung#
371.1Sdyoung# 	.../lists/base/mi
381.1Sdyoung# 	.../lists/base/rescue.mi
391.1Sdyoung# 	.../lists/base/md.i386
401.1Sdyoung# 	.
411.1Sdyoung# 	.
421.1Sdyoung# 	.
431.1Sdyoung#
441.1Sdyoung# In each file, a record consists of a path and a System Package name,
451.1Sdyoung# separated by whitespace. E.g.,
461.1Sdyoung#
471.7Sdyoung# 	# $NetBSD: sets.subr,v 1.7 2003/12/11 09:46:26 dyoung Exp $
481.1Sdyoung# 	.			base-sys-root
491.1Sdyoung# 	./altroot		base-sys-root
501.1Sdyoung# 	./bin			base-sys-root
511.1Sdyoung# 	./bin/[			base-util-root
521.1Sdyoung# 	./bin/cat		base-util-root
531.1Sdyoung# 	.
541.1Sdyoung# 	.
551.1Sdyoung# 	.
561.1Sdyoung#
571.1Sdyoung# A # in the first column marks a comment.
581.1Sdyoung#
591.1Sdyoung# Environment
601.1Sdyoung#
611.6Stsutsui#	have_gcc3
621.7Sdyoung#	krb
631.7Sdyoung#	krb4
641.4Sdyoung# 	lintlibs
651.4Sdyoung# 	lkm
661.1Sdyoung# 	machine
671.1Sdyoung# 	machine_arch
681.1Sdyoung# 	machine_cpu
691.4Sdyoung# 	setd
701.1Sdyoung# 	shlib
711.1Sdyoung# 	stlib
721.1Sdyoung# 	toolchain_missing
731.1Sdyoung#
741.1Sdyounglist_set_lists () {
751.1Sdyoung	setname=$1
761.1Sdyoung
771.1Sdyoung	echo $setd/lists/$setname/mi
781.1Sdyoung	if [ "$machine" != "$machine_arch" ]; then
791.1Sdyoung		# Prefer an ad.${machine_arch} over an ad.${machine_cpu},
801.1Sdyoung		# since the arch-specific one will be more specific than
811.1Sdyoung		# the cpu-specific one.
821.1Sdyoung		if [ -f $setd/lists/$setname/ad.${machine_arch} ]; then
831.1Sdyoung			echo $setd/lists/$setname/ad.${machine_arch}
841.1Sdyoung		elif [ -f $setd/lists/$setname/ad.${machine_cpu} ]; then
851.1Sdyoung			echo $setd/lists/$setname/ad.${machine_cpu}
861.1Sdyoung		fi
871.1Sdyoung		if [ "$shlib" != "no" -a \
881.1Sdyoung		     -f $setd/lists/$setname/ad.${machine_cpu}.shl ]; then
891.1Sdyoung			echo $setd/lists/$setname/ad.${machine_cpu}.shl
901.1Sdyoung		fi
911.1Sdyoung	fi
921.1Sdyoung	if [ -f $setd/lists/$setname/md.${machine}.${machine_arch} ]; then
931.1Sdyoung		echo $setd/lists/$setname/md.${machine}.${machine_arch}
941.1Sdyoung	elif [ -f $setd/lists/$setname/md.${machine} ]; then
951.1Sdyoung		echo $setd/lists/$setname/md.${machine}
961.1Sdyoung	fi
971.1Sdyoung	if [ -f $setd/lists/$setname/stl.mi ]; then
981.1Sdyoung		echo $setd/lists/$setname/stl.mi
991.1Sdyoung	fi
1001.1Sdyoung	if [ -f $setd/lists/$setname/stl.${stlib} ]; then
1011.1Sdyoung		echo $setd/lists/$setname/stl.${stlib}
1021.1Sdyoung	fi
1031.1Sdyoung	if [ "$shlib" != "no" ]; then
1041.1Sdyoung		if [ -f $setd/lists/$setname/shl.mi ]; then
1051.1Sdyoung			echo $setd/lists/$setname/shl.mi
1061.1Sdyoung		fi
1071.1Sdyoung		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
1081.1Sdyoung			echo $setd/lists/$setname/shl.${shlib}
1091.1Sdyoung		fi
1101.7Sdyoung		if [ "$krb" != "no" -a \
1111.7Sdyoung		     -f $setd/lists/$setname/krb.shl.${shlib} ]; then
1121.7Sdyoung			echo $setd/lists/$setname/krb.shl.${shlib}
1131.7Sdyoung		fi
1141.7Sdyoung		if [ "$krb" != "no" -a "$krb4" != "no" -a \
1151.7Sdyoung		     -f $setd/lists/$setname/krb4.shl.${shlib} ]; then
1161.7Sdyoung			echo $setd/lists/$setname/krb4.shl.${shlib}
1171.7Sdyoung		fi
1181.7Sdyoung		if [ "$krb" != "no" -a -f $setd/lists/$setname/krb.shl.mi ]
1191.7Sdyoung		then
1201.7Sdyoung			echo $setd/lists/$setname/krb.shl.mi
1211.7Sdyoung		fi
1221.7Sdyoung		if [ "$krb" != "no" -a "$krb4" != "no" -a \
1231.7Sdyoung		     -f $setd/lists/$setname/krb4.shl.mi ]
1241.7Sdyoung		then
1251.7Sdyoung			echo $setd/lists/$setname/krb4.shl.mi
1261.7Sdyoung		fi
1271.7Sdyoung	fi
1281.7Sdyoung	if [ "$krb" != "no" -a -f $setd/lists/$setname/krb.mi ]; then
1291.7Sdyoung		echo $setd/lists/$setname/krb.mi
1301.7Sdyoung	fi
1311.7Sdyoung	if [ "$krb" != "no" -a "$krb4" != "no" -a \
1321.7Sdyoung	     -f $setd/lists/$setname/krb4.mi ]; then
1331.7Sdyoung		echo $setd/lists/$setname/krb4.mi
1341.1Sdyoung	fi
1351.1Sdyoung	if [ "$lkm" != "no" ]; then
1361.1Sdyoung		if [ -f $setd/lists/$setname/lkm.mi ]; then
1371.1Sdyoung			echo $setd/lists/$setname/lkm.mi
1381.1Sdyoung		fi
1391.1Sdyoung	fi
1401.1Sdyoung	if [ "$lintlibs" != no ]; then
1411.1Sdyoung		if [ -f $setd/lists/$setname/lint.mi ]; then
1421.1Sdyoung			echo $setd/lists/$setname/lint.mi
1431.7Sdyoung		fi
1441.7Sdyoung		if [ "$krb" != "no" -a "$krb4" != "no" -a \
1451.7Sdyoung		     -f $setd/lists/$setname/krb4.lint.mi ]
1461.7Sdyoung		then
1471.7Sdyoung			echo $setd/lists/$setname/krb4.lint.mi
1481.7Sdyoung		fi
1491.7Sdyoung		if [ "$krb" != "no" -a -f $setd/lists/$setname/krb.lint.mi ]
1501.7Sdyoung		then
1511.7Sdyoung			echo $setd/lists/$setname/krb.lint.mi
1521.1Sdyoung		fi
1531.1Sdyoung	fi
1541.1Sdyoung	if [ "$toolchain_missing" != "yes" ]; then
1551.6Stsutsui		if [ "$have_gcc3" = "yes" ]; then
1561.2Smrg			if [ -f $setd/lists/$setname/gcc.mi ]; then
1571.2Smrg				echo $setd/lists/$setname/gcc.mi
1581.2Smrg			fi
1591.2Smrg			if [ "$shlib" != "no" ]; then
1601.2Smrg				if [ -f $setd/lists/$setname/gcc.shl ]; then
1611.2Smrg					echo $setd/lists/$setname/gcc.shl
1621.2Smrg				fi
1631.2Smrg			fi
1641.2Smrg		else
1651.2Smrg			if [ -f $setd/lists/$setname/tc.mi ]; then
1661.2Smrg				echo $setd/lists/$setname/tc.mi
1671.2Smrg			fi
1681.2Smrg			if [ "$shlib" != "no" ]; then
1691.2Smrg				if [ -f $setd/lists/$setname/tc.shl ]; then
1701.2Smrg					echo $setd/lists/$setname/tc.shl
1711.2Smrg				fi
1721.1Sdyoung			fi
1731.1Sdyoung		fi
1741.1Sdyoung	fi
1751.1Sdyoung
1761.1Sdyoung	if [ -f $setd/lists/$setname/rescue.mi ]; then
1771.1Sdyoung		echo $setd/lists/$setname/rescue.mi
1781.1Sdyoung	fi
1791.1Sdyoung	if [ -f $setd/lists/$setname/rescue.${machine} ]; then
1801.1Sdyoung		echo $setd/lists/$setname/rescue.${machine}
1811.1Sdyoung	fi
1821.1Sdyoung	if [ "$machine" != "$machine_arch" ]; then
1831.1Sdyoung		# Prefer a rescue.ad.${machine_arch} over a
1841.1Sdyoung		# rescue.ad.${machine_cpu}, since the arch-
1851.1Sdyoung		# specific one will be more specific than the
1861.1Sdyoung		# cpu-specific one.
1871.1Sdyoung		if [ -f $setd/lists/$setname/rescue.ad.${machine_arch} ]; then
1881.1Sdyoung			echo $setd/lists/$setname/rescue.ad.${machine_arch}
1891.1Sdyoung		elif [ -f $setd/lists/$setname/rescue.ad.${machine_cpu} ]; then
1901.1Sdyoung			echo $setd/lists/$setname/rescue.ad.${machine_cpu}
1911.1Sdyoung		fi
1921.1Sdyoung		if [ "$shlib" != "no" -a -f \
1931.1Sdyoung		     $setd/lists/$setname/rescue.ad.${machine_cpu}.shl ]; then
1941.1Sdyoung			echo $setd/lists/$setname/rescue.ad.${machine_cpu}.shl
1951.1Sdyoung		fi
1961.1Sdyoung	fi
1971.5Sdyoung}
1981.5Sdyoung
1991.5Sdyoungarch_to_cpu () {
2001.5SdyoungMACHINE_ARCH=${1} ${MAKE:-make} -f- all <<EOF
2011.5Sdyoung.include <bsd.own.mk>
2021.5Sdyoungall:
2031.5Sdyoung	@echo \${MACHINE_CPU}
2041.5SdyoungEOF
2051.1Sdyoung}
2061.1Sdyoung
207