Here's a first tentative test result on win32, with VC 7.1 and
nmake, ICU 2.8 (win32 binary build). Is any of this unexpected?
i386 JIT CPU
.dll SO extension
# Failed test (t\pmc\perlnum.t at line 690)
# got: '0
# 0.000000
# '
# expected: '0
# -0.000000
# '
# Looks like you failed 1 tests of 36.
# Failed test (t\pmc\sys.t at line 26)
# got: '0
# '
# expected: 'Hello, World!
# 0
# '
# Looks like you failed 1 tests of 1.
Failed 2/102 test scripts, 98.04% okay. 2/1507 subtests failed, 99.87%
okay.
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t\pmc\perlnum.t 1 256 36 1 2.78% 36
t\pmc\sys.t 1 256 1 1 100.00% 1
2 tests and 87 subtests skipped.
NMAKE : fatal error U1077: 'C:\Perl\bin\perl.exe' : return code '0xff'
Regards,
Ron
I am fairly new to this list, but would like to help to get Parrot flying
well on win32. I'd be happy to submit patches, but would rather like to
discuss the issues with an "official" win32 maintainer first, just to make
sure I'm not breaking more than fixing (in particual, I know a simple fix
for the sys.t failure).
I'd appreciate it if someone could help me getting started.
Ron
There is no 'official' Win32 maintainer. I'd be glad if I could add a
line to RESPONSIBLE_PARTIES.
And just send a patch. See docs/submissions.pod.
> Ron
Thanks,
leo
> There is no 'official' Win32 maintainer. I'd be glad if I could add a
> line to RESPONSIBLE_PARTIES.
Though I don't consider myself a Win32 maintainer (porter?), as I'm way too
inexperienced with Parrot, I'd sure like to work on it.
Is there anything specific that is known to be broken/not yet implemented
on Win32? Anything else I can help with?
Ron
> Is there anything specific that is known to be broken/not yet implemented
> on Win32? Anything else I can help with?
Almost all implemented except: threads, events, signals, sockets :)
Seriously, I think, we first need an event model for Win32.
Parrot on unixish systems is running two threads: the event thread
handles all kind of events (timers, notifications, signals). The IO
thread converts signals to events and is intended to run async I/O
(which would arrive as signals too). This scheme isn't carved in stone,
but it will look somehow like that.
Win32 is internally already event based and a lot of these events like a
SIGINT (program termination signal) are messages in Win32. So I think
that Win32 needs a message loop that handles this kind of stuff. WRT
threading there are emulation layers for POSIX threads, but I doubt that
these are as efficient as Win32 functions. (Disclaimer: I really don't
know much about Win32).
Any help is very welcome.
> Ron
leo
> Is there anything specific that is known to be broken/not yet implemented
> on Win32? Anything else I can help with?
One more thing comes to my mind. That's dynamic loading of classes and
bytecode (dynclasses/ and dynoplibs/). Win32 needs AFAIK much more
symbols in libparrot.def. We should AFAIK denote the program source with
some typedefs like
PARROT_API Parrot_some_func
so that a .def file can be created automatically.
> Ron
leo
> I have attached a proposal for a TODO.win32 for your consideration.
Thanks, applied.
leo