1*4882a593Smuzhiyun#!/bin/bash 2*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0+ 3*4882a593Smuzhiyun# 4*4882a593Smuzhiyun# Usage: configcheck.sh .config .config-template 5*4882a593Smuzhiyun# 6*4882a593Smuzhiyun# Copyright (C) IBM Corporation, 2011 7*4882a593Smuzhiyun# 8*4882a593Smuzhiyun# Authors: Paul E. McKenney <paulmck@linux.ibm.com> 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunT=${TMPDIR-/tmp}/abat-chk-config.sh.$$ 11*4882a593Smuzhiyuntrap 'rm -rf $T' 0 12*4882a593Smuzhiyunmkdir $T 13*4882a593Smuzhiyun 14*4882a593Smuzhiyuncat $1 > $T/.config 15*4882a593Smuzhiyun 16*4882a593Smuzhiyuncat $2 | sed -e 's/\(.*\)=n/# \1 is not set/' -e 's/^#CHECK#//' | 17*4882a593Smuzhiyungrep -v '^CONFIG_INITRAMFS_SOURCE' | 18*4882a593Smuzhiyunawk ' 19*4882a593Smuzhiyun{ 20*4882a593Smuzhiyun print "if grep -q \"" $0 "\" < '"$T/.config"'"; 21*4882a593Smuzhiyun print "then"; 22*4882a593Smuzhiyun print "\t:"; 23*4882a593Smuzhiyun print "else"; 24*4882a593Smuzhiyun if ($1 == "#") { 25*4882a593Smuzhiyun print "\tif grep -q \"" $2 "\" < '"$T/.config"'"; 26*4882a593Smuzhiyun print "\tthen"; 27*4882a593Smuzhiyun print "\t\tif test \"$firsttime\" = \"\"" 28*4882a593Smuzhiyun print "\t\tthen" 29*4882a593Smuzhiyun print "\t\t\tfirsttime=1" 30*4882a593Smuzhiyun print "\t\tfi" 31*4882a593Smuzhiyun print "\t\techo \":" $2 ": improperly set\""; 32*4882a593Smuzhiyun print "\telse"; 33*4882a593Smuzhiyun print "\t\t:"; 34*4882a593Smuzhiyun print "\tfi"; 35*4882a593Smuzhiyun } else { 36*4882a593Smuzhiyun print "\tif test \"$firsttime\" = \"\"" 37*4882a593Smuzhiyun print "\tthen" 38*4882a593Smuzhiyun print "\t\tfirsttime=1" 39*4882a593Smuzhiyun print "\tfi" 40*4882a593Smuzhiyun print "\techo \":" $0 ": improperly set\""; 41*4882a593Smuzhiyun } 42*4882a593Smuzhiyun print "fi"; 43*4882a593Smuzhiyun }' | sh 44