-def ossplit(p):
- i = p.rfind('/') + 1
- head, tail = p[:i], p[i:]
- if head and head != '/'*len(head):
- head = head.rstrip('/')
- return head, tail
-
-def split(p):
- i = p.rfind('/') + 1
- head, tail = p[:i], p[i:]
- head = head.rstrip('/')
- if not head:
- head = '/'
- return head, tail
-
-def generateModDep_split():
- moddep = {}
- moddepfile = open(sys.argv[1], 'r')
- for i in moddepfile:
- tmplist = i.split()
- mainmod = tmplist.pop(0)
- mainmod = mainmod.rstrip(':')
- rawmod = mainmod.rstrip('.ko')
- (a, rawmod) = ossplit(rawmod)
- newlist = []
- newlist.append((rawmod, mainmod))
- for i in tmplist:
- a = i.rstrip('.ko')
- (x, a) = ossplit(a)
- newlist.append((a, i))
- moddep[rawmod] = newlist
- moddepfile.close()
- return moddep
-
-def generateModDep_mysplit():
- moddep = {}
- moddepfile = open(sys.argv[1], 'r')
- for i in moddepfile:
- tmplist = i.split()
- mainmod = tmplist.pop(0)
- mainmod = mainmod.rstrip(':')
- rawmod = mainmod.rstrip('.ko')
- (a, rawmod) = split(rawmod)
- newlist = []
- newlist.append((rawmod, mainmod))
- for i in tmplist:
- a = i.rstrip('.ko')
- (x, a) = split(a)
- newlist.append((a, i))
- moddep[rawmod] = newlist
- moddepfile.close()
- return moddep
-