[M3devel] missed the memo? LINUXLIBC6 building WinBase?

Dragiša Durić dragisha at m3w.org
Sat Nov 23 23:32:39 CET 2013


I think some interim release, of “get on with Modula-3 fast” kind, is better idea than to slow progress. And I don’t dislike this current state.

As for sommunity shrinking… Maybe some web facelift would be good idea… Anybody willing?

dd

On 23 Nov 2013, at 21:33, Rodney M. Bates <rodney_bates at lcwb.coop> wrote:

> 
> 
> On 11/23/2013 05:13 AM, Jay K wrote:
>> This is deliberate, and slightly useful, and the warnings shouldn't occur in the head,
>> for several years now. Please upgrade more frequently.
>> 
>> 
> 
> I feel very strongly that the latest release compiler should always build the head.
> We have all too few Modula-3 users anyway.  If we don''t have this ability,
> then we become an exclusive club with unreasonable barriers to outsiders.
> There is hardly a better way to keep the community shrinking.
> 
> I know it can be a pain to maintain compatibility, but we really must do it.
> Until we get a new release with a compiler that won't choke on WINAPI, we
> need to keep different versions of the source.
> 
> Actually, I thought I had removed all occurrences of this problem a few
> months ago.  How did I miss this one?
> 
> 
>> In particular:
>> 
>> 
>>  - It is useful because "much" of the interfaces are describing types,
>>    and types aren't just for function parameters, for functions that
>>    aren't available, but they are used as part of files, and you can,
>>    hypothetically, use them in your own functions (heck, you can
>>    write a Win32-on-Posix compatibility layer and provide the functions..).
>> 
>> 
>>    In particular, mklib uses these types and is fairly portable.
>>    It might have endian/alignment problems though, esp. endian.
>> 
>> 
>>    I do have a plan to get rid of mklib though...i was slow to realize it
>>    because mklib exports too much and I wanted a replacement wthout that flaw,
>>    but just matching it is adequate. The frontend/backends shall output
>>    the .def files instead of mklib. And then the usual lib/ar/link can/should
>>   make the libraries. If anyone wants to use LTCG  on NT with the C backend,
>>   this is the way (or put everything in one source file via the backend, not a bad idea)..
>> 
>> 
>>   - In the past 20 years or so, there is only one widely used
>>    platform that made the mistake of having multiple calling conventions
>>    and that is NT/x86. Not NT in general, but NT/x86 specifically.
>>    I expect nobody will make this mistake again.
>>    I'm not sure MIPSo32/MIPSn32 or ARM-mess count as the same mistake.
>>    On NT/x86, the calling convention does not bifurcate the entire target
>>    and force building everything multiple times, because you can sprinkle it around and
>>    each "type" can call each "type". This is good and bad.
>>    The other OS/processor combinations with multiple calling conventions
>>    define it as multiple ABIs with I believe no offical interop (except at the
>>    kernel level, for some of them).
>> 
>> 
>>    Therefore, callling conventions can be safely ignored on all platforms except NT/x86.
>>    Nobody will have any names to use here, overlapping the NT/x86 names or not.
>>    If the day comes where I am wrong and some target has multiple conventions,
>>   we should change the pragma to accept multiple. If the names overlap with NT/x86,
>>   we would put platform qualifiers on them. Never again should we have the Win32 SQL.i3
>>   and Posix SQL.i3 that are the same, except for calling convention. What a waste -- almost
>>   the same, but for one little difference that could be handled another way, they go duplicated.
>>  That pattern bugs me.
>> 
>> 
>>   - Jay
>> 
>> 
>> 
>> 
>> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> --
>> From: dragisha at m3w.org
>> Date: Fri, 22 Nov 2013 23:55:23 +0100
>> To: m3devel at elegosoft.com
>> Subject: Re: [M3devel] missed the memo? LINUXLIBC6 building WinBase?
>> 
>> Yes, it was in a memo. Sorry for disruption :).
>> 
>> On 22 Nov 2013, at 23:31, Dragiša Durić <dragisha at m3w.org <mailto:dragisha at m3w.org>> wrote:
>> 
>>    + ./scripts/do-pkg.sh buildship m3core libm3 tcp
>>    /root/rpmbuild/BUILD/cm3/scripts/pkgmap.sh -c cm3 -build -DROOT='/root/rpmbuild/BUILD/cm3'   && cm3 -ship  -DROOT='/root/rpmbuild/BUILD/cm3'  m3core libm3 tc
>>    === package m3-libs/m3core ===
>>      +++ cm3 -build -DROOT='/root/rpmbuild/BUILD/cm3' $RARGS  && cm3 -ship $RARGS -DROOT='/root/rpmbuild/BUILD/cm3'  +++
>>    --- building in LINUXLIBC6 ---
>> 
>>    ignoring ../src/m3overrides
>> 
>>    new source -> compiling WinBase.i3
>>    "../src/win32/WinDef.i3", line 131: warning: unrecognized pragma (ignored) (WINAPI)
>>    "../src/win32/WinDef.i3", line 132: warning: unrecognized pragma (ignored) (WINAPI)
>>    "../src/win32/WinDef.i3", line 133: warning: unrecognized pragma (ignored) (WINAPI)
>>    "../src/win32/WinBase.i3", line 198: warning: unrecognized pragma (ignored) (WINAPI)
>>    "../src/win32/WinBase.i3", line 918: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 921: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 924: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 927: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 930: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 933: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 943: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 949: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 952: unsupported language or calling convention (WINAPI)
>>    "../src/win32/WinBase.i3", line 955: unsupported language or calling convention (WINAPI)
>> 
>>    --
>>    Dragiša Durić
>>    dragisha at m3w.org <mailto:dragisha at m3w.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20131123/5a0bd6dd/attachment-0002.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 495 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20131123/5a0bd6dd/attachment-0002.sig>


More information about the M3devel mailing list