|
@@ -0,0 +1,50 @@
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+if [ $# -ne 1 ] || [ ! -f "$1" ]; then
|
|
|
+ echo "Usage: miniconfig.sh configfile"
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
+
|
|
|
+if [ "$1" == ".config" ]; then
|
|
|
+ echo "It overwrites .config, rename it and try again."
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
+
|
|
|
+cp $1 mini.config
|
|
|
+echo "Calculating mini.config..."
|
|
|
+
|
|
|
+LENGTH=`cat $1 | wc -l`
|
|
|
+
|
|
|
+
|
|
|
+I=1
|
|
|
+while true; do
|
|
|
+ if [ $I -gt $LENGTH ]; then
|
|
|
+ exit
|
|
|
+ fi
|
|
|
+ sed -n "${I}!p" mini.config > .config.test
|
|
|
+
|
|
|
+ make allnoconfig KCONFIG_ALLCONFIG=.config.test > /dev/null
|
|
|
+
|
|
|
+
|
|
|
+ D=`diff .config $1 | wc -l`
|
|
|
+ if [ $D -eq 4 ]; then
|
|
|
+ mv .config.test mini.config
|
|
|
+ LENGTH=$[$LENGTH-1]
|
|
|
+ else
|
|
|
+ I=$[$I + 1]
|
|
|
+ fi
|
|
|
+ echo -n -e $I/$LENGTH lines `cat mini.config | wc -c` bytes "\r"
|
|
|
+done
|
|
|
+echo
|