[M3devel] [M3commit] CVS Update: cm3

Tony Hosking hosking at cs.purdue.edu
Wed Dec 17 23:24:38 CET 2008


Yeah, I would have thought of M3 on Cygwin as presenting a POSIX API  
(even if some system services like threads are implemented under the  
covers using Cygwin).  To that extent, everything other than m3core,  
where threads live, should compile as a POSIX library.

On 18 Dec 2008, at 09:07, Randy Coleburn wrote:

> Jay,
>
> I agree with Tony.
>
> From my point of view, you are "breaking" the normal Windows install  
> in order to rectify a problem for Cygwin.  I put "breaking" in  
> quotes because the install will appear to work, but the serial  
> package will be silently omitted.
>
> It may not be a "big deal" to you, but it presents another hurdle  
> for those who want to install on Windows, and this hurdle is  
> probably not documented yet.
>
> Regards,
> Randy
>
> >>> Tony Hosking <hosking at cs.purdue.edu> 12/17/2008 3:23 PM >>>
> I would have thought of CygWin as a POSIX platform that just happens  
> to have Windows underneath.  Did we go round this roundabout before?
>
> On 18 Dec 2008, at 03:29, Jay wrote:
>
>> Eh, not a big deal, you can cd to it and it just fine.
>>
>> I removed it from my distribution building and regular building.
>> It fails to build on I386_CYGWIN (aka NT386GNU), AND my filtering  
>> wasn't working.
>> I "merely" need to fix one or the other or just comment it out when  
>> building Cygwin, which is rare.
>>
>> See...I figured..that the Cygwin serial package should still use  
>> the Win32 source.
>> However, that has a dependency on FileWin32.m3, which is only built  
>> in "full Win32" platforms.
>> If you do try to compile FileWin32.m3, it errors, because it  
>> exports File, and I guess maybe FileWin32.
>> Possibly I just need to have Quake do a bit of munging such that  
>> the first line of FileWin32.m3 is altered.
>> The NT386 version would be:
>> MODULE FileWin32 EXPORTS File.
>>
>> The NT386GNU version would be:
>> MODULE FileWin32;
>>
>> something like that.
>>
>> Or push the contents into another module, and then have a thin  
>> NT386 module export it as File.
>>
>> Anyway, it's not a huge deal.
>> The main downfall is I "temporarily" no longer build it, on any  
>> platform.
>>
>> Fixing the filtering is a better "temporary" solution, since that'd  
>> restore me to building it for all but NT386GNU.
>>
>> Another avenue is to see if the Posix version works on Cygwin.
>> I think the Cygwin serial users however are a "multiple small  
>> intersection" -- people who use Modula-3 (small) intersected with  
>> people who use Cygwin (medium) (probably at zero here) intersected  
>> with people who use serial (very small) => very very very small, so  
>> that's not worth getting it to work.
>>
>>  - Jay
>>
>>
>> Date: Wed, 17 Dec 2008 10:12:09 -0500
>> From: rcoleburn at scires.com
>> To: jkrell at elego.de
>> CC: m3devel at elegosoft.com
>> Subject: Re: [M3devel] [M3commit] CVS Update: cm3
>>
>>
>> Jay:
>>
>> Why are we skipping serial package?  I use serial I/O on Windows.   
>> If you need my sources, let me know and I'll supply.
>>
>> Regards,
>> Randy
>>
>> >>> Jay Krell <jkrell at elego.de> 12/17/2008 3:47 PM >>>
>> CVSROOT:/usr/cvs
>> Changes by:jkrell at birch.08/12/17 15:47:34
>>
>> Modified files:
>> cm3/scripts/python/: pylib.py make-dist.py
>>
>> Log message:
>> fix line endings and 'temporarily' skip serial package -- there's a  
>> problem here on I386_CYGWIN I forgot about where essentially you  
>> want to provide both FilePosix and FileWin32; FilePosix will export  
>> File, FileWin32 will export FileWin32, so that portable Modula-3  
>> can use File/FilePosix and Win32 specific serial code can use  
>> FileWin32; maybe some day we should try out this serial stuff, and / 
>> maybe/ the Posix paths work on Cygwin? For now, just skip it. And  
>> fix line endings. And try out the alternate 'clean' path in make-dist
>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20081218/94c09393/attachment-0002.html>


More information about the M3devel mailing list