Subject: Re: cygwin/Perl and Win32:: package(s)
From: "Gerrit P. Haase" <[email-masked]>
To: Clive Nicolson <[email-masked]>
Cc: [email-masked]
Date: Thu, 23 May 2002 23:01:53 +0200

Hallo Clive,

Am Donnerstag, 23. Mai 2002 um 19:02 schriebst du:

>> Yes, that would be a great contribution.  I think it should live at CPAN
>> as a separate category similar to the Win32:: hierarchy named Cygwin::
>> 

> I think it should remain named Win32::, it will be largely functionally
> identical, having two differently named packages will lead to all sorts of 
> problems! I'll have a go at getting the libwin32 maintainer to accept my
> changes when I'm done, otherwise it will have to be a separate package.

Hmm, I don't think it is a good idea.  Cygwin Perl is completely
different from the Win32 version.  It is another OS!  And all the OS's
have their own Perl version with all the specials, VMS Perl, MacPerl,
Win32, why not Cygwin too?

It would be more effective to use all the Posix features we have thanks
to Cygwin and kick out all the workarounds in the Win32 parts.  Just take
the main parts.

Also it will be a lot of work to convince the libwin32 maintainers to
include all the special stuff for Cygwin.  I would like to have it
separated from the Win32 hierarchy.

>> I would like to test it with bleadperl because perl-5.6 is stable and
>> hopefully soon we'll have a new perl, perl-5.8;)

> I have managed to get Win32:: and Win32::Registry going under cygwin, and 
> have had a go at Win32::ODBC.

There is also an ODBC module which works besides the Win32 hierarchy.
I don't know if it works with recent versions too, haven't tried, but it
worked with some previous verion, see here:
http://testers.cpan.org/search?request=dist&dist=DBD-ODBC&macid=130

> For Win32::, I took per-5.6.1/win32/win32.[ch] and split them into 2,
> Win32.[ch] and Win32core.[ch] . Win32core.[ch] contains the code to
> implement Win32:: functionality. I copied Win32core.[ch] to the top level
> dir of libwin32 and built the Makefile. After much fiddling I managed to
> get Win32core compiled and linked with the original libwin32 "boot" code.

> I installed the resulting dll in the appropriate perl dir and moved on to
> Win32::Registry . I hacked this till it compiled and linked. I installed 
> this and invoked the test script which reported no errors.

> I added Win32::Registry code to my original perl script and have managed
> to extract values from the Registry.

E.g. we will have /dev/registry soon and we can use the Cygwin API to
access the registry.

> To get this hack to build "out of the box" requires some fiddles using
> Makemaker which I have yet to sort out. I'll ask some questions about 
> this (like how do I set LDLOADLIBS in the Makefile) after I've got some 
> sleep!

The Makemaker stuff is improved since perl-5.6.1 very much!

Gerrit
-- 
=^..^=

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/