winebuild & (name, heap, init)

Dimitrie O. Paun dpaun at
Wed Sep 11 00:44:15 CDT 2002

On September 10, 2002 02:15 pm, Alexandre Julliard wrote:

> Well, the problem is that the __declspec stuff is usually inside
> macros, so you have to run the code through the C preprocessor to find
> them. It can be done, but it's not that trivial. Also one thing you
> need to extract is the relay debugging information (and for 16-bit
> code information for the relay routines), and this requires a C parser
> (or some of Patrik's magic Perl stuff).

I'm sure if we have the political will at the top, we'll find a
solution... :) Patrik, care to help us extract the required stuff
directly out of the source file?

> A related idea I had is to store the relay debugging independently
> from the .spec file; you could then use it in other cases, notably
> with snoop debugging of native dlls. And then you no longer need a
> .spec, you can use a .def or directly extract the __declspecs, at
> least for Win32. This would also potentially allow more intelligent
> relay routines, maybe even per-dll relay code that knows about the dll
> internal data structures; and hopefully also relay debugging of COM
> interfaces.

Exactly! That's where I was driving at. But this depends on getting
stuff automatically out of .c file, because this way we can retain
the type information, which we now lose (except for strings). Once
we have the type information, the sky's the limit... But most imprtantly,
we eliminate (1) a potential source of mistakes, (2) a barrier for
new commers (which are likely to be from the Windows world), and
(3) avoid maintenaning the 700KB of .specs!!!

> > BTW, what does it take to default 'init' to DllMain?
> Some linker magic, but mostly it requires dll separation so that all
> dlls can be linked the same way. This will simplify many things.

But now with the hack you've put in, aren't we there already?
I know, kernel is the one exception, do we need to get rid of it
as well?


More information about the wine-devel mailing list