sets.subr revision 1.5
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.3Sdyoung# 	lintlibs
131.3Sdyoung# 	lkm
141.1Sdyoung# 	machine
151.1Sdyoung# 	machine_arch
161.1Sdyoung# 	machine_cpu
171.3Sdyoung# 	setd
181.1Sdyoung# 	shlib
191.1Sdyoung# 	stlib
201.1Sdyoung# 	toolchain_missing
211.2Smrg#	use_tools_toolchain
221.1Sdyoung#
231.1Sdyounglist_set_files () {
241.1Sdyoung	for setname; do
251.1Sdyoung		list_set_lists $setname
261.1Sdyoung	done | xargs cat | grep -v '^#'
271.1Sdyoung}
281.1Sdyoung
291.1Sdyoung#
301.1Sdyoung# list_set_lists setname
311.1Sdyoung# 
321.1Sdyoung# Print to stdout a list of files, one filename per line, which
331.1Sdyoung# concatenate to create the packing list for setname. E.g.,
341.1Sdyoung#
351.1Sdyoung# 	.../lists/base/mi
361.1Sdyoung# 	.../lists/base/rescue.mi
371.1Sdyoung# 	.../lists/base/md.i386
381.1Sdyoung# 	.
391.1Sdyoung# 	.
401.1Sdyoung# 	.
411.1Sdyoung#
421.1Sdyoung# In each file, a record consists of a path and a System Package name,
431.1Sdyoung# separated by whitespace. E.g.,
441.1Sdyoung#
451.5Sdyoung# 	# $NetBSD: sets.subr,v 1.5 2003/11/25 07:19:46 dyoung Exp $
461.1Sdyoung# 	.			base-sys-root
471.1Sdyoung# 	./altroot		base-sys-root
481.1Sdyoung# 	./bin			base-sys-root
491.1Sdyoung# 	./bin/[			base-util-root
501.1Sdyoung# 	./bin/cat		base-util-root
511.1Sdyoung# 	.
521.1Sdyoung# 	.
531.1Sdyoung# 	.
541.1Sdyoung#
551.1Sdyoung# A # in the first column marks a comment.
561.1Sdyoung#
571.1Sdyoung# Environment
581.1Sdyoung#
591.4Sdyoung# 	lintlibs
601.4Sdyoung# 	lkm
611.1Sdyoung# 	machine
621.1Sdyoung# 	machine_arch
631.1Sdyoung# 	machine_cpu
641.4Sdyoung# 	setd
651.1Sdyoung# 	shlib
661.1Sdyoung# 	stlib
671.1Sdyoung# 	toolchain_missing
681.2Smrg#	use_tools_toolchain
691.1Sdyoung#
701.1Sdyounglist_set_lists () {
711.1Sdyoung	setname=$1
721.1Sdyoung
731.1Sdyoung	echo $setd/lists/$setname/mi
741.1Sdyoung	if [ "$machine" != "$machine_arch" ]; then
751.1Sdyoung		# Prefer an ad.${machine_arch} over an ad.${machine_cpu},
761.1Sdyoung		# since the arch-specific one will be more specific than
771.1Sdyoung		# the cpu-specific one.
781.1Sdyoung		if [ -f $setd/lists/$setname/ad.${machine_arch} ]; then
791.1Sdyoung			echo $setd/lists/$setname/ad.${machine_arch}
801.1Sdyoung		elif [ -f $setd/lists/$setname/ad.${machine_cpu} ]; then
811.1Sdyoung			echo $setd/lists/$setname/ad.${machine_cpu}
821.1Sdyoung		fi
831.1Sdyoung		if [ "$shlib" != "no" -a \
841.1Sdyoung		     -f $setd/lists/$setname/ad.${machine_cpu}.shl ]; then
851.1Sdyoung			echo $setd/lists/$setname/ad.${machine_cpu}.shl
861.1Sdyoung		fi
871.1Sdyoung	fi
881.1Sdyoung	if [ -f $setd/lists/$setname/md.${machine}.${machine_arch} ]; then
891.1Sdyoung		echo $setd/lists/$setname/md.${machine}.${machine_arch}
901.1Sdyoung	elif [ -f $setd/lists/$setname/md.${machine} ]; then
911.1Sdyoung		echo $setd/lists/$setname/md.${machine}
921.1Sdyoung	fi
931.1Sdyoung	if [ -f $setd/lists/$setname/stl.mi ]; then
941.1Sdyoung		echo $setd/lists/$setname/stl.mi
951.1Sdyoung	fi
961.1Sdyoung	if [ -f $setd/lists/$setname/stl.${stlib} ]; then
971.1Sdyoung		echo $setd/lists/$setname/stl.${stlib}
981.1Sdyoung	fi
991.1Sdyoung	if [ "$shlib" != "no" ]; then
1001.1Sdyoung		if [ -f $setd/lists/$setname/shl.mi ]; then
1011.1Sdyoung			echo $setd/lists/$setname/shl.mi
1021.1Sdyoung		fi
1031.1Sdyoung		if [ -f $setd/lists/$setname/shl.${shlib} ]; then
1041.1Sdyoung			echo $setd/lists/$setname/shl.${shlib}
1051.1Sdyoung		fi
1061.1Sdyoung	fi
1071.1Sdyoung	if [ "$lkm" != "no" ]; then
1081.1Sdyoung		if [ -f $setd/lists/$setname/lkm.mi ]; then
1091.1Sdyoung			echo $setd/lists/$setname/lkm.mi
1101.1Sdyoung		fi
1111.1Sdyoung	fi
1121.1Sdyoung	if [ "$lintlibs" != no ]; then
1131.1Sdyoung		if [ -f $setd/lists/$setname/lint.mi ]; then
1141.1Sdyoung			echo $setd/lists/$setname/lint.mi
1151.1Sdyoung		fi
1161.1Sdyoung	fi
1171.1Sdyoung	if [ "$toolchain_missing" != "yes" ]; then
1181.2Smrg		if [ "$use_tools_toolchain" != "yes" ]; then
1191.2Smrg			if [ -f $setd/lists/$setname/gcc.mi ]; then
1201.2Smrg				echo $setd/lists/$setname/gcc.mi
1211.2Smrg			fi
1221.2Smrg			if [ "$shlib" != "no" ]; then
1231.2Smrg				if [ -f $setd/lists/$setname/gcc.shl ]; then
1241.2Smrg					echo $setd/lists/$setname/gcc.shl
1251.2Smrg				fi
1261.2Smrg			fi
1271.2Smrg		else
1281.2Smrg			if [ -f $setd/lists/$setname/tc.mi ]; then
1291.2Smrg				echo $setd/lists/$setname/tc.mi
1301.2Smrg			fi
1311.2Smrg			if [ "$shlib" != "no" ]; then
1321.2Smrg				if [ -f $setd/lists/$setname/tc.shl ]; then
1331.2Smrg					echo $setd/lists/$setname/tc.shl
1341.2Smrg				fi
1351.1Sdyoung			fi
1361.1Sdyoung		fi
1371.1Sdyoung	fi
1381.1Sdyoung
1391.1Sdyoung	if [ -f $setd/lists/$setname/rescue.mi ]; then
1401.1Sdyoung		echo $setd/lists/$setname/rescue.mi
1411.1Sdyoung	fi
1421.1Sdyoung	if [ -f $setd/lists/$setname/rescue.${machine} ]; then
1431.1Sdyoung		echo $setd/lists/$setname/rescue.${machine}
1441.1Sdyoung	fi
1451.1Sdyoung	if [ "$machine" != "$machine_arch" ]; then
1461.1Sdyoung		# Prefer a rescue.ad.${machine_arch} over a
1471.1Sdyoung		# rescue.ad.${machine_cpu}, since the arch-
1481.1Sdyoung		# specific one will be more specific than the
1491.1Sdyoung		# cpu-specific one.
1501.1Sdyoung		if [ -f $setd/lists/$setname/rescue.ad.${machine_arch} ]; then
1511.1Sdyoung			echo $setd/lists/$setname/rescue.ad.${machine_arch}
1521.1Sdyoung		elif [ -f $setd/lists/$setname/rescue.ad.${machine_cpu} ]; then
1531.1Sdyoung			echo $setd/lists/$setname/rescue.ad.${machine_cpu}
1541.1Sdyoung		fi
1551.1Sdyoung		if [ "$shlib" != "no" -a -f \
1561.1Sdyoung		     $setd/lists/$setname/rescue.ad.${machine_cpu}.shl ]; then
1571.1Sdyoung			echo $setd/lists/$setname/rescue.ad.${machine_cpu}.shl
1581.1Sdyoung		fi
1591.1Sdyoung	fi
1601.5Sdyoung}
1611.5Sdyoung
1621.5Sdyoungarch_to_cpu () {
1631.5SdyoungMACHINE_ARCH=${1} ${MAKE:-make} -f- all <<EOF
1641.5Sdyoung.include <bsd.own.mk>
1651.5Sdyoungall:
1661.5Sdyoung	@echo \${MACHINE_CPU}
1671.5SdyoungEOF
1681.1Sdyoung}
1691.1Sdyoung
170