Re: New Package Available: perl-libwin32-0.191-1
Yitzchak Scott-Thoennes <[email protected]> Fri, 20 Feb 2004 09:35:42 -0800
| Newsgroups | gmane.os.cygwin.perl |
|---|---|
| Organization | bs"d |
| Message-ID | <[email protected]> |
On Fri, Feb 20, 2004 at 01:36:46AM -0800, Rafael Kitover <[email protected]> wrote: > Cool! I'll definitely include your patch in a maintenance release I'll try to > put together sometime over the next couple of weeks... > > If you peek into the win32/ directory in the perl sources the core Win32 > functions are interspersed along with everything else in win32.c, and loaded > with newXS at init time. Win32CORE.c could technically be another object under > the cygwin/ directory that gets compiled in, and the boot function called at > some appropriate point. > > The reason I didn't want to do that is because I don't really like the idea of > standard perl functions not really being standard and only working on one > architecture, and being commonly used at that. So my plan was to make Win32CORE > be used by win32, Cygwin and wince. It wouldn't change the characteristics of > the native win32 perl much, it would be just another .c file linked into > libperl. I had a patch I made last year against bleadperl (at that time) that > did exactly that, alas it got lost in the ether, I still have a copy if you > want to look at it. How stable do you think what you have is? Are you anticipating bug reports on the Win32CORE stuff or is it pretty much exactly what is in win32.c? I was thinking of waiting to try to get it in with perl until it seemed stable, but you're in a better position to judge that. IIRC, cutoff for patches for 5.8.4 is in a month (and ideally patches should have been applied to bleadperl for a while before being integrated into the maintenance branch.) Unless you are fairly confident of not breaking the existing win32.c stuff, I'd say you should aim at just putting Win32CORE.c under cygwin/ for perl5.8.x and your more ambitious change for 5.9.x. In the interim, I was working on a way to have perl automatically load Win32CORE if it was there; see: http://groups.google.com/[email protected] > This approach gives a common, upgradeable module that can be used by platforms > that have access to the Win32 API. That would be Win32, WinCE, CE.NET, Win64, > Cygwin...and unix. This would also make it possible to link Win32CORE, and > other win32 modules like Win32::GUI, against Winelib. The utility of this I > won't even attempt to argue, such things are not made to be necessarily useful. > > BTW, do you think Cygwin should set $^E like win32 perl does? This wouldn't be > too hard to add, or even make configurable. Yes; the only question is should it do so right away or only when Win32CORE is integrated into the perl core. > While on the subject, this is a good place to share some of what I'll be > working on wrt to this project, in no particular order or priority: > > * Generalize perl module related stuff in the build script into patches for the > generic build script, so that other people can package perl modules easily for > Cygwin. Or at least put up a "generic perl module build script" somewhere. > * Try to bundle some recalcitrant, CPAN shell unfriendly win32 modules in the > package (as I added GUI). Surprisingly, many of them build just fine on Cygwin > now :) I'd rather see people just be able to use CPAN. I guess it depends how responsive the Win32:: module authors are to cygwin patches. > * Dust of the Win32CORE patch I have and try to get it into Perl itself. See above. > * There are some workarounds that need to be sent off as patches against > w32api. You mean the cygwin package? I noticed some errors using a newer w32api with your stuff from sourceforge several months ago...should I try to recreate the problem? > * Sort out the Win32::AdminMisc mess. It's a popular module that's not in the > module index, has no MakeMaker support, is distributed under the GPL linked to > a proprietary .lib file (which violates the GPL, which makes it illegal to > distribute...) uses structured exception handling, etc. How much stuff is out there with no MakeMaker support? I saw the reference to lanman recently; people putting out that kind of stuff is disturbing, and if I understand correctly even keeps ActiveState from automatically trying to build ppms. Seems awfully bad for everyone. ------------------------ Yahoo! Groups Sponsor ---------------------~--> Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada. http://www.c1tracking.com/l.asp?cid=5511 http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/ndFolB/TM