1 |
On Wed, 2009-07-22 at 10:22 +0200, Fabian Groffen wrote: |
2 |
> On 22-07-2009 10:10:32 +0200, Markus Duft wrote: |
3 |
[snip] |
4 |
> |
5 |
> I think the following will get us up to speed quickly: |
6 |
> - rename the current script to "readpecoff" or something |
7 |
> - ship it with portage for the time being |
8 |
|
9 |
ok. i updated the patch -> attached. |
10 |
|
11 |
> |
12 |
> Then I'd like it when we could get a scanpecoff (like scanmacho and |
13 |
> scanelf, the C-programs from pax-utils) that does the job, replacing |
14 |
> your huge bash-script. |
15 |
|
16 |
puh. i could try to implement such a thing, but to be correct i would |
17 |
need one for interix, and one for windows - that the "readpecoff" script |
18 |
can handle both is more a hack than a solution ;) |
19 |
|
20 |
OTOH - why not..? it feels like a good idea to have such a utility. it |
21 |
could detect wether the file is interix/winnt and handle it correctly - |
22 |
maybe i could also lookup the interix shared library section format from |
23 |
the binutils patch, and implement it there - so that scanpecoff is |
24 |
faster than parsing objdump output all the time... |
25 |
|
26 |
> |
27 |
> > > At the moment I'm trying to open a docx file from Microsoft that should |
28 |
> > > be the specification of PECOFF. |
29 |
> > |
30 |
> > uh... you won't have fun with that document - i know it by rote ;) it |
31 |
> > does _not_ specify how both interix and winnt handle runpaths, needed |
32 |
> > shared libs, etc. |
33 |
> |
34 |
> I can't even open it. OpenOffice die hard aborts on it (Signal 6). |
35 |
|
36 |
hahaha ... |
37 |
|
38 |
> |
39 |
> > how interix handles those things is completely hidden somewhere in the |
40 |
> > interix loader/binary format/binutils patches at M$. (However the |
41 |
> > current binutils 2.17 patches are open, so i could have a look at it - |
42 |
> > the patch is about 300.000 lines long ;*( ...) |
43 |
> |
44 |
> I once split that patch into our binutils ebuild for 2.17, maybe it's |
45 |
> useful? |
46 |
|
47 |
ah, you did that - i was wondering why the hell the binutils have such a |
48 |
big patch - i could not remember doing it ;) however objdump from our |
49 |
binutils is still unable to dump the "Dynamic (.so) Section" along with |
50 |
the other private PE headers :(. |
51 |
|
52 |
i will not investigate on this further if i'm able to extract the |
53 |
information in the future shiny new scanpecoff from pax-utils. if i'm |
54 |
unable to get scanpecoff to read interix binaries by itself, i will try |
55 |
to fix this, so that we can at least use our own objdump instead of the |
56 |
system one... |
57 |
|
58 |
Cheers, Markus |
59 |
|
60 |
> |
61 |
> > The format used by winnt to model shared library features (rpath, |
62 |
> > needed, etc.) is defined by parity (native win32 does not support those |
63 |
> > out of the box...) - it builds upon the PE/COFF specs, but of course it |
64 |
> > does it's own things :) if you want to know what it does exactly -> ask |
65 |
> > me, as i wrote it ;) |
66 |
> |
67 |
> |