diff options
-rw-r--r-- | scripts/configcommon.pl | 82 | ||||
-rw-r--r-- | scripts/configdiff.pl | 76 | ||||
-rwxr-xr-x | scripts/sort-config | 226 |
3 files changed, 0 insertions, 384 deletions
diff --git a/scripts/configcommon.pl b/scripts/configcommon.pl deleted file mode 100644 index 38bbe80dc..000000000 --- a/scripts/configcommon.pl +++ /dev/null @@ -1,82 +0,0 @@ -#! /usr/bin/perl - -my @args=@ARGV; -my @configoptions; -my @configvalues; -my @common; -my $configcounter = 0; - -# first, read the 1st file - -open (FILE,"$args[0]") || die "Could not open $args[0]"; -while (<FILE>) { - my $str = $_; - if (/\# ([\w]+) is not set/) { - $configoptions[$configcounter] = $1; - $configvalues[$configcounter] = $str; - $common[$configcounter] = 1; - $configcounter ++; - } else { - if (/([\w]+)=/) { - $configoptions[$configcounter] = $1; - $configvalues[$configcounter] = $str; - $common[$configcounter] = 1; - $configcounter ++; - } else { - $configoptions[$configcounter] = "foobarbar"; - $configvalues[$configcounter] = $str; - $common[$configcounter] = 1; - $configcounter ++; - } - } -}; - -# now, read all configfiles and see of the options match the initial one. -# if not, mark it not common -my $cntr=1; - - -while ($cntr < @ARGV) { - open (FILE,$args[$cntr]) || die "Could not open $args[$cntr]"; - while (<FILE>) { - my $nooutput; - my $counter; - my $configname; - - if (/\# ([\w]+) is not set/) { - $configname = $1; - } else { - if (/([\w]+)=/) { - $configname = $1; - } - } - - $counter = 0; - $nooutput = 0; - while ($counter < $configcounter) { - if ("$configname" eq "$configoptions[$counter]") { - if ("$_" eq "$configvalues[$counter]") { - 1; - } else { - $common[$counter] = 0; - } - } - $counter++; - } - } - - $cntr++; -} - -# now print the common values -my $counter = 0; - -while ($counter < $configcounter) { - if ($common[$counter]!=0) { - print "$configvalues[$counter]"; - } - $counter++; -} - -1; - diff --git a/scripts/configdiff.pl b/scripts/configdiff.pl deleted file mode 100644 index 848d8df0f..000000000 --- a/scripts/configdiff.pl +++ /dev/null @@ -1,76 +0,0 @@ -#! /usr/bin/perl - -my @args=@ARGV; -my @configoptions; -my @configvalues; -my @alreadyprinted; -my $configcounter = 0; - -# first, read the override file - -open (FILE,"$args[0]") || die "Could not open $args[0]"; -while (<FILE>) { - my $str = $_; - if (/\# ([\w]+) is not set/) { - $configoptions[$configcounter] = $1; - $configvalues[$configcounter] = $str; - $alreadprinted[$configcounter] = 0; - $configcounter ++; - } else { - if (/([\w]+)=/) { - $configoptions[$configcounter] = $1; - $configvalues[$configcounter] = $str; - $alreadprinted[$configcounter] = 0; - $configcounter ++; - } else { - $configoptions[$configcounter] = "$_"; - $configvalues[$configcounter] = $str; - $alreadprinted[$configcounter] = 0; - $configcounter ++; - } - } -}; - -# now, read and output the entire configfile, except for the overridden -# parts... for those the new value is printed. -# O(N^2) algorithm so if this is slow I need to look at it later - -open (FILE2,"$args[1]") || die "Could not open $args[1]"; -while (<FILE2>) { - my $nooutput; - my $counter; - my $configname="$_"; - my $match; - - if (/\# ([\w]+) is not set/) { - $configname = $1; - } else { - if (/([\w]+)=/) { - $configname = $1; - } - } - - $counter = 0; - $nooutput = 0; - $match = 0; -# print "C : $configname"; - while ($counter < $configcounter) { - if ("$configname" eq "$configoptions[$counter]") { - if ( ("$_" eq "$configvalues[$counter]") || ("$configname" eq "") ) { - $match = 1; - } else { - $alreadyprinted[$configcounter] = 1; - print "$_"; - $match = 1; - } - } - $counter++; - } - if ($match == 0) { - print "$_"; - } - -} - - -1; diff --git a/scripts/sort-config b/scripts/sort-config deleted file mode 100755 index 399709f18..000000000 --- a/scripts/sort-config +++ /dev/null @@ -1,226 +0,0 @@ -#!/bin/bash - -FC=($(fedpkg verrel | awk -F. '{print $NF}')) - -SRC=($(ls config-* 2>/dev/null)) - -TGT=($(ls kernel-*.$FC/linux-*.$2/configs/kernel-*-*.config \ - kernel-*.$FC/linux-*.$2/configs/kernel-*-*-debug.config 2>/dev/null)) -TGT1=(${TGT[*]#kernel-*.$FC/linux-*.$2/configs/kernel-*-}) - -ALL_OPTS="cdfimn" - -if [ $# -lt 2 ] ; then - echo -e "Usage:\n $(basename $0) [-$ALL_OPTS] input target\n" - echo -e " Sort input config file into the same order as the target\n" - echo -e " -c: insert comments about non-matching/impossible items" - echo -e " -d: show raw unsorted output with extra debug text" - echo -e " -f: force output to match what is in the target config," - echo -e " and/or remove impossible config items" - echo -e " -i: find impossible config items" - echo -e " -m: find changed config items" - echo -e " -n: do not sort output\n" - echo -e " input: source config file" ' [' "${SRC[*]#config-}" ']\n' - echo -e " target: output arch name" ' [' "${TGT1[*]%.config}" ']\n' - exit 1 -fi - -while getopts "$ALL_OPTS" OPTION ; do -case $OPTION in -c) - ADDCOMMENT=1 ;; -d) - DEBUG=1 ;; -f) - FORCE=1 ;; -i) - FIND_IMPOSS=1 ;; -m) - FIND_CHANGED=1 ;; -n) - NOSORT=1 ;; -\?) - exit 2 ;; -esac -done - -if [ "$FORCE" -a "$ADDCOMMENT" ] ; then - echo "-f and -c options cannot be used together" - exit 2 -fi - -shift $((OPTIND-1)) - -TEMPFILES="xx00 xx01 xx98 xx99" -TEMPLEFT= -for FILE in $TEMPFILES ; do - [ -f "$FILE" ] && TEMPLEFT="Y" -done -if [ "$TEMPLEFT" ] ; then - echo "WARNING! Output files named xx?? already exist." >&2 - read -p "Press <Enter> to erase files, or Ctrl-C to exit..." - echo >&2 -fi -rm -f $TEMPFILES - -SRCFILE=config-$1 -[ ! -f $SRCFILE ] && echo "Input file" $SRCFILE "missing" && exit 2 - -TGTFILE=kernel-*.$FC/linux-*.$2/configs/kernel-*-$2.config -[ ! -f $TGTFILE ] && echo "No target file matching" $TGTFILE "exists" && exit 2 - -[ "$FIND_IMPOSS" ] && \ - find kernel-*.$FC/*.$2 -name Kconfig\* -type f \ - | xargs egrep -s -h '^[[:space:]]*(menu)?config[[:space:]]+' \ - | sed -r 's/^[[:space:]]*(menu)?config[[:space:]]+/CONFIG_/' \ - | sort | uniq >xx98 - -extract_optname() { - # extract the option name from $TEXT, setting $OPTNAME - OPTNAME= - if [ "${TEXT:0:7}" = "CONFIG_" ] ; then - OPTNAME=${TEXT%%=*} - elif [ "${TEXT:0:9}" = "# CONFIG_" ] ; then - OPTNAME=${TEXT%" is not set"} - OPTNAME=${OPTNAME#\# } - fi -} - -print_saved_comments() { - if [ $IX -gt 0 ] ; then - [ "$DEBUG" ] && echo " ->" $IX "comments were saved" - (( IX-- )) - for IX in $(seq 0 $IX) ; do - echo "$LINE":"${SAVECOMMENT[$IX]}" - done - unset SAVECOMMENT - IX=0 - fi -} - -assign_line_number() { - # use input line numbers if not sorting - [ "$NOSORT" ] && LINE=$IN - # make sure it has a line number - [ -z "$LINE" ] && LINE=999999 -} - -IX=0 -IN=0 -declare -a SAVECOMMENT - -cat ${SRCFILE} | { -while read TEXT ; do - - LINE= - COMMENT= - - # replace empty lines - [ -z "$TEXT" ] && TEXT='//' - - if [ "${TEXT:0:7}" = "CONFIG_" -o "${TEXT:0:9}" = "# CONFIG_" ] ; then - - LINE=$(grep -n "^$TEXT" $TGTFILE | head -1 | cut -f 1 -d ':') - if [ -z "$LINE" ] ; then - [ "$DEBUG" ] && echo "nofind ->" "$TEXT" - - extract_optname - if [ "$OPTNAME" ] ; then - - if [ "$FIND_CHANGED" ] ; then - for FINDTEXT in "^${OPTNAME}=" "^# ${OPTNAME} is not set" ; do - if [ -z "$LINE" ] ; then - [ "$DEBUG" ] && echo "looking for ->" "$FINDTEXT" - LINE=$(grep -n "$FINDTEXT" $TGTFILE | head -1 | cut -f 1 -d ':') - if [ "$LINE" ] ; then - CHANGED=$(grep "$FINDTEXT" $TGTFILE | head -1) - if [ "$FORCE" ] ; then - TEXT=$CHANGED - [ "$DEBUG" ] && echo 'forced ->' "$TEXT" - else - if [ "$ADDCOMMENT" ] ; then - if [ ${CHANGED:0:1} = '#' ] ; then - NEWOPT="not set" - else - NEWOPT=${CHANGED#$OPTNAME} - fi - COMMENT="# -- Next option changed to \"${NEWOPT}\" at target line $LINE --" - fi - fi - fi - fi - done - fi - - if [ "$FIND_IMPOSS" -a -z "$LINE" -a -z "$COMMENT" ] ; then - POSSIBLE=$(grep -n "^$OPTNAME" xx98) - if [ -z "$POSSIBLE" ] ; then - if [ "$ADDCOMMENT" ] ; then - COMMENT="# -- Next option is impossible --" - elif [ "$FORCE" ] ; then - [ "$DEBUG" ] && echo 'impossible ->' "$TEXT" - TEXT="" - fi - fi - fi - - fi - - fi - - else - # not a config variable - COMMENT="$TEXT" - TEXT= - fi - - [ "$DEBUG" -a "$COMMENT" ] && echo "comment ->" "$LINE" "$COMMENT" - [ "$DEBUG" -a "$TEXT" ] && echo "text ->" "$LINE" "$TEXT" - - if [ "$TEXT" ] ; then - - assign_line_number - - # print the saved comments first - print_saved_comments - # now print the latest comment and text - [ "$COMMENT" ] && echo "$LINE":"$COMMENT" - echo "$LINE":"$TEXT" - - elif [ "$COMMENT" ] ; then - - # no output yet, save the comment - SAVECOMMENT[$IX]="$COMMENT" - let IX++ - [ "$DEBUG" ] && echo 'savecomment (#'${IX}')' - - fi - - let IN++ - -done -# flush the buffers -assign_line_number -print_saved_comments -[ "$DEBUG" ] && echo "$IN lines read from input" -} >xx99 - -if [ "$DEBUG" ] ; then - # just show the raw output with debug info, then exit - cat xx99 -else - - # split output into two files, for matched and unmatched items - cat xx99 | sort -s -t ":" -k 1g | csplit -k -s - /^999999/ 2>/dev/null - - cat xx00 | cut -f 2- -d ':' | sed 's/^\/\/$//' - if [ -s xx01 ] ; then - echo - echo '# ------------ UNMATCHED OPTIONS ------------' - echo - cat xx01 | cut -f 2- -d ':' | sed 's/^\/\/$//' - fi - -fi - -rm -f $TEMPFILES |