21-Avoid-false-positive-matches-from-comment-lines.patch 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. Index: kconfig/merge_config.sh
  2. ===================================================================
  3. --- kconfig.orig/merge_config.sh
  4. +++ kconfig/merge_config.sh
  5. @@ -109,7 +109,8 @@ if [ ! -r "$INITFILE" ]; then
  6. fi
  7. MERGE_LIST=$*
  8. -SED_CONFIG_EXP="s/^\(# \)\{0,1\}\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)[= ].*/\2/p"
  9. +SED_CONFIG_EXP1="s/^\(${CONFIG_PREFIX}[a-zA-Z0-9_]*\)=.*/\1/p"
  10. +SED_CONFIG_EXP2="s/^# \(${CONFIG_PREFIX}[a-zA-Z0-9_]*\) is not set$/\1/p"
  11. TMP_FILE=$(mktemp -t .tmp.config.XXXXXXXXXX)
  12. @@ -123,7 +124,7 @@ for MERGE_FILE in $MERGE_LIST ; do
  13. echo "The merge file '$MERGE_FILE' does not exist. Exit." >&2
  14. exit 1
  15. fi
  16. - CFG_LIST=$(sed -n "$SED_CONFIG_EXP" $MERGE_FILE)
  17. + CFG_LIST=$(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $MERGE_FILE)
  18. for CFG in $CFG_LIST ; do
  19. grep -q -w $CFG $TMP_FILE || continue
  20. @@ -166,7 +167,7 @@ make KCONFIG_ALLCONFIG=$TMP_FILE $EXTERN
  21. # Check all specified config values took (might have missed-dependency issues)
  22. -for CFG in $(sed -n "$SED_CONFIG_EXP" $TMP_FILE); do
  23. +for CFG in $(sed -n -e "$SED_CONFIG_EXP1" -e "$SED_CONFIG_EXP2" $TMP_FILE); do
  24. REQUESTED_VAL=$(grep -w -e "$CFG" $TMP_FILE)
  25. ACTUAL_VAL=$(grep -w -e "$CFG" "$KCONFIG_CONFIG")