| #! /usr/bin/python2 |
| import os.path |
| import sys |
| import shlex |
| import re |
| |
| from headerutils import * |
| |
| usage = False |
| src = list () |
| flist = { } |
| process_h = True |
| process_c = True |
| verbose = False |
| all_inc = True |
| level = 0 |
| |
| only_use_list = list () |
| |
| for x in sys.argv[1:]: |
| if x[0:2] == "-h": |
| usage = True |
| else: |
| src.append (x) |
| |
| |
| if not usage and len (src) > 0: |
| incl = { } |
| for fn in src: |
| src = readwholefile (fn) |
| dup = { } |
| for line in src: |
| d = find_pound_include (line, True, True) |
| if d != "" and d[-2:] ==".h": |
| if dup.get (d) == None: |
| if incl.get (d) == None: |
| incl[d] = 1 |
| else: |
| incl[d] = incl[d]+ 1 |
| dup[d] = 1 |
| |
| l = list () |
| for i in incl: |
| l.append ((incl[i], i)) |
| l.sort (key=lambda tup:tup[0], reverse=True) |
| |
| for f in l: |
| print str (f[0]) + " : " + f[1] |
| |
| else: |
| print "count-headers file1 [filen]" |
| print "Count the number of occurrences of all includes across all listed files" |
| |
| |
| |
| |
| |
| |