[Wisp-cvs] wisp/users/dig elf.py,1.64,1.65
Status: Alpha
Brought to you by:
digg
From: <di...@us...> - 2003-05-22 19:48:30
|
Update of /cvsroot/wisp/wisp/users/dig In directory sc8-pr-cvs1:/tmp/cvs-serv21938 Modified Files: elf.py Log Message: avoid usage of interpret_single Index: elf.py =================================================================== RCS file: /cvsroot/wisp/wisp/users/dig/elf.py,v retrieving revision 1.64 retrieving revision 1.65 diff -u -d -r1.64 -r1.65 --- elf.py 22 May 2003 19:30:03 -0000 1.64 +++ elf.py 22 May 2003 19:48:27 -0000 1.65 @@ -322,7 +322,7 @@ NUM = 11 from linkie import Linkie -from tran import interpret_single, Integer_Literal, Interpreter +from tran import Integer_Literal, Interpreter def make_ELF32_header (byte_order, reloc = 0): h = Linkie(byte_order) @@ -507,14 +507,18 @@ shentnames.append('.shstrtab') sections['.shstrtab'] = ELF32_strtab('<') + do = Interpreter(binary).do + do('needs elf') if not want_relocatable: phentnames = [] for name in shentnames: if guess_ELF32_pflags(name) <> 0: phentnames.append(name) - input = [Integer_Literal(len(phentnames)), 'make-elf32-phtable'] - for name in phentnames: input = ["'", name] + input # reversed - interpret_single(input, binary, include = 'elf') + input = '' + for name in phentnames: input = "' " + name + ' ' + input # reversed + do(input) + do(`len(phentnames)`) + do('make-elf32-phtable') for name in shentnames: sections['.shstrtab'].emit_entry(name, '#.shstrtab/strings/' + name) |