diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2010-10-22 16:18:15 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2010-10-22 16:18:15 +0200 |
commit | 56b3019b14f894df6de55bc29a9953b664960609 (patch) | |
tree | 9e8624eff85b2296a38f088a5e0b6545338f421b /scripts/split-cfg.sh | |
parent | 7f0b64747736e1e8441b95e2f77cecf9dc2cb7a3 (diff) | |
parent | 5e582bad71187a003062d9174793fa5055a4de61 (diff) |
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Diffstat (limited to 'scripts/split-cfg.sh')
-rw-r--r-- | scripts/split-cfg.sh | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/scripts/split-cfg.sh b/scripts/split-cfg.sh deleted file mode 100644 index 816bdfc02..000000000 --- a/scripts/split-cfg.sh +++ /dev/null @@ -1,84 +0,0 @@ -# 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. -set -x - -TOPDIR=$1 -TARGET=$2 -LIBC=$3 -(( x_cols = (COLUMNS > 10) ? COLUMNS - 2 : 80 )) -typeset -L$x_cols pbar - -grep -v '^BUSYBOX\|^# BUSYBOX' $TOPDIR/.config > $TOPDIR/.config.split - -mkdir -p $TOPDIR/.cfg_${TARGET}_${LIBC} -cd $TOPDIR/.cfg_${TARGET}_${LIBC} - -oldfiles=$(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: - fi -done <$TOPDIR/.config.split - -# now handle the case of removals -print -nu2 ' removals...' -for oldfile in $oldfiles; do - [[ $newfiles = *:$oldfile:* ]] || rm -f $oldfile -done -print -nu2 '\r' - -# now handle package dependencies -cd $TOPDIR/.cfg_${TARGET}_${LIBC} -rm -f $TOPDIR/package/*/info.mk -for option in *; do - pbar="$option ..." - print -nu2 "$pbar\r" - ao=: - fgrep -l $option $TOPDIR/package/*/Config.* 2>&- | \ - while read line; do - print -r -- ${line%/*}/info.mk - done | while read fname; do - [[ $ao = *:$fname:* ]] && continue - ao=$ao$fname: - if [ "$option" != "ADK_HAVE_DOT_CONFIG" ];then - echo "\${_IPKGS_COOKIE}: \${TOPDIR}/.cfg_${TARGET}_${LIBC}/$option" >>$fname - fi - done -done -exit 0 |