X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=devtools%2Fcheck-symbol-change.sh;h=ed2178e36e9e02a6db5d7f153459f66a9b3f9f4a;hb=refs%2Fheads%2Fdelay;hp=28f093a9fc0f5767c2aeb3b1939e9c5fa01fe3cf;hpb=d4ef40f3c60e0d8a93a86373f81beaba5731c58b;p=dpdk.git diff --git a/devtools/check-symbol-change.sh b/devtools/check-symbol-change.sh index 28f093a9fc..ed2178e36e 100755 --- a/devtools/check-symbol-change.sh +++ b/devtools/check-symbol-change.sh @@ -17,13 +17,11 @@ build_map_changes() # map files are altered, and all section/symbol names # appearing between a triggering of this rule and the # next trigger of this rule are associated with this file - /[-+] a\/.*\.map/ {map=$2; in_map=1} + /[-+] [ab]\/.*\.map/ {map=$2; in_map=1; next} - # Same pattern as above, only it matches on anything that - # does not end in 'map', indicating we have left the map chunk. - # When we hit this, turn off the in_map variable, which - # supresses the subordonate rules below - /[-+] a\/.*\.[^map]/ {in_map=0} + # The previous rule catches all .map files, anything else + # indicates we left the map chunk. + /[-+] [ab]\// {in_map=0} # Triggering this rule, which starts a line and ends it # with a { identifies a versioned section. The section name is @@ -110,15 +108,24 @@ check_for_rule_violations() # A symbol can not enter a non experimental # section directly - if [ $? -ne 0 ] && [ "$secname" != 'EXPERIMENTAL' ] + if [ -z "$oldsecname" ] then - echo -n "ERROR: symbol $symname " - echo -n "is added in the $secname " - echo -n "section, but is expected to " - echo -n "be added in the EXPERIMENTAL " - echo "section of the version map" - ret=1 - continue + if [ "$secname" = 'EXPERIMENTAL' ] + then + echo -n "INFO: symbol $symname has " + echo -n "been added to the " + echo -n "EXPERIMENTAL section of the " + echo "version map" + continue + else + echo -n "ERROR: symbol $symname " + echo -n "is added in the $secname " + echo -n "section, but is expected to " + echo -n "be added in the EXPERIMENTAL " + echo "section of the version map" + ret=1 + continue + fi fi # This symbol is moving inside a section, nothing to do