On Wed, May 05, 2010 at 11:07:33PM -0400, Charles Wilson wrote: >On 5/5/2010 3:13 PM, Christopher Faylor wrote: > >> That's basically it and I have it more-or-less coded but I haven't >> finished thinking about DLLs. Maybe that's more complication than is >> warranted. I have to do more research there. We could, and I think >> should, put most of the code in pseudo_reloc.c in cygwin1.dll, though, >> rather than duplicate it in every source file. > >I disagree with this statement. > >I spent a lot of effort trying to synchronize our version of >pseudo_reloc.c with the mingw and mingw64 versions -- specifically so >that we could leverage Kai's v2 efforts. > >If we -- meaning cygwin -- move most of the guts into the cygwin DLL, >then ... we either > (1) fork our version from the mingw[32|64] version permanently, and >lose the possibility of "easy" code sharing between the three projects, or > (2) this portion of the code lives in both places (pseudo_reloc.c and >some-other-cygwin-dll-source-file), but is #ifdef'ed in pseudo_reloc.c >when compiled on cygwin, because there's this other identical copy over >in some-other-cygwin-dll-source-file.
I kept the ifdef __CYGWIN__ stuff. Moving the code into the DLL actually simplifies the Cygwin part quite a bit since you can use things like "winsup.h" and "small_printf". And, my changes don't permute things as much as Dave's. Dave's changes were not really MinGW friendly. >Yuck. (I don't mind "losing" the effort I put in, because whatever >happens we now have v2 support. But...why make it harder if somebody >in mingw-land invents v3? Or make it harder on them, if WE do?) And, why not make it so that potentially all that is required for v3 support is a DLL upgrade rather than a rebuild? cgf
