| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | # This file is part of the OpenADK project. OpenADK is copyrighted# material, please see the LICENCE file in the top-level directory.# Note: this is slow, but it's not the "progress stuff" which cau-# ses the slow-down.TOPDIR=$1(( x_cols = (COLUMNS > 10) ? COLUMNS - 2 : 80 ))typeset -L$x_cols pbargrep -v '^BUSYBOX\|^# BUSYBOX' $TOPDIR/.config > $TOPDIR/.config.splitmkdir -p $TOPDIR/.cfgcd $TOPDIR/.cfgoldfiles=$(print -r -- *)newfiles=:print -nu2 'autosplitting main config...'while read line; do	oline=$line	[[ -n $line ]] && if [[ $line = @(\# [A-Z])* ]]; then		line=${line#? }		if [[ $line = *@( is not set) ]]; then			line=${line% is not set}		else			# some kind of comment			line=		fi	elif [[ $line = @([A-Z])*@(=)* ]]; then		line=${line%%=*}	elif [[ $line = \#* ]]; then		# valid comment		line=	else		# invalid non-comment		print -u2 "\nWarning: line '$oline' invalid!"		line=	fi	# if the line is a valid yes/no/whatever, write it	# unless the file already exists and has same content	if [[ -n $line ]]; then		if [[ $line != ADK_HAVE_DOT_CONFIG && -s $line ]]; then			fline=$(<$line)		else			fline=		fi		[[ $oline = $fline ]] || print -r -- "$oline" >$line		if [[ $newfiles = *:$line:* ]]; then			print -u2 "\nError: duplicate Config.in option '$line'!"			exit 1		fi		newfiles=$newfiles$line:	fidone <$TOPDIR/.config.split# now handle the case of removalsprint -nu2 ' removals...'for oldfile in $oldfiles; do	[[ $newfiles = *:$oldfile:* ]] || rm -f $oldfiledoneprint -nu2 '\r'# now scan for dependencies of packages; the information# should probably be in build_mipsel because it's generated# at build time, but OTOH, soon enough, parts of Makefile# and the entire Config.in will be auto-generated anyway,# so we're better off placing it here#XXX this is too slow @868 configure optionscd $TOPDIR/.cfgrm -f $TOPDIR/package/*/info.mkfor option in *; do	pbar="$option ..."	print -nu2 "$pbar\r"	ao=:	fgrep -l $option $TOPDIR/package/*/{Makefile,Config.*} 2>&- | \	    while read line; do		print -r -- ${line%/*}/info.mk	done | while read fname; do		[[ $ao = *:$fname:* ]] && continue		ao=$ao$fname:		echo "\${_IPKGS_COOKIE}: \${TOPDIR}/.cfg/$option" >>$fname	donedonepbar=doneprint -u2 "$pbar"exit 0
 |