[M3devel] link options (was LINUXLIBC6 on 64 bit Hardware) (rambly)

Olaf Wagner wagner at elegosoft.com
Sat Jun 27 12:48:03 CEST 2009


Quoting Jay <jay.krell at cornell.edu>:

> [adding m3devel]
> ----------------------------------------
>> From: jay.krell at cornell.edu
>> To: wagner at elegosoft.com
>> Subject: RE: link options (was LINUXLIBC6 on 64 bit Hardware) (rambly)
>> Date: Sat, 27 Jun 2009 00:43:58 +0000
>>
[...]
>> Actually, now that I think about it...this is stuff that actually   
>> needs to be controllable from each m3makefile, and possibly from   
>> the cm3 command line.
>>
>> I used to think it was a config file thing and I'd try to make a   
>> reasonable choice for everyone, but now I think it's not even a   
>> per-machine thing but more granular. Anyway, the default is   
>> reasonable, just that it should probably be changable.
>>
>> So probably we should have new Quake directives that mimic gcc's   
>> command line options, like:
>> SharedLibGcc();
>> StaticLibGcc();

Well, I'd have preferred some common abstraction, but then (a) making it
more flexible for a certain backend is better than no flexibility at all
and (b) perhaps common abstractions need to evolve gradually over time
(or maybe there aren't any at all). So yes, I'm all for providing
new quake switches, even if they are backend or system dependent.
Of course they need to be documented in the operations guide and the
quake language description, too.

>> and they'd just be ignored on SOLsun, NT386, etc.
>> They'd just be trivially implemented in cm3cfg.common and set a   
>> global that m3_link adds to the link command line, very simple.
>>
>> I guess this is a general exercise: See what switches in gcc/ld   
>> people tend to vary on a project by project basis, see which ones   
>> are relevant to Modula-3 (ie: more linking flags, not compile   
>> flags) and expose them in Quake.
>> AND/OR ensure it is/remains viable for people to use Makefiles,   
>> combine Modula-3 with gcc using Makefiles and gcc, and just using   
>> cm3 to build some pieces of their project. Personally I've never   
>> tried that.
>> That way, you know, they can just form their own link commands in a  
>>  Makefile and Quake doesn' t have to provide full access.
>> Also we could make SYSTEM_LD not readonly and leaf m3makefiles   
>> could just munge it.
>> That is an easy way to add flexibility.

Yes, I wouldn't object to that, too.

Olaf
-- 
Olaf Wagner -- elego Software Solutions GmbH
                Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96  mobile: +49 177 2345 869  fax: +49 30 23 45 86 95
    http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194




More information about the M3devel mailing list