[M3devel] archive bloat

Jay jay.krell at cornell.edu
Fri Jun 26 15:21:06 CEST 2009


I guess even m3quake is maybe reusable, for anyone who wants to implement that scripting language.
 
 
And I like the notion contrary to your point that all the Modula-3 source is together. It makes for easier/better testing, and more flexibility to change things.

 
I was really just looking around for why the new archives are so large.
The new core archive is twice the size of the old std.
It includes source, probably even three copies of gcc.
There is /some/ reason for that, and two of the copies are minimized, though still fairly unnecessary -- I386_INTERIX and ARM_DARWIN each have their own fork of gcc, a decision I remain comfortable with, but not clearly worth making so many more copies of.
 
Compare 
http://modula3.elegosoft.com/cm3/uploaded-archives/index.html
to
http://www.opencm3.net/releng/
 
core in releng is twice the size or more of std in uploaded.
 
I realize it is somewhat apples to oranges, but the uploaded archives I think (I'm checking..) do actually have source, for debugging, in the package store, and even these not very useful static libs.
 
 
I guess the gcc stuff is the real difference.
 
 
There is an option to have ship not ship the source actually, for further size savings, but then debugging suffers -- it'd be cool if the binaries contained CVS paths and versions and gdb could just get the source on-demand, as long as you are on the network..
 
 
 
Both sets also have symbols.
There is a practise of stripping out the symbols into separate packages, at least on GNU systems (gcc/ld/gdb), but I haven't looked into it and the convenience for debugging of keeping the symbols in the binary seems significant. So far I've chosen to keep that.
 

 - Jay



----------------------------------------
> To: jay.krell at cornell.edu
> Date: Fri, 26 Jun 2009 05:53:15 -0700
> From: mika at async.caltech.edu
> CC: m3devel at elegosoft.com
> Subject: Re: [M3devel] archive bloat
>
>
> I'm just saying, what you're proposing is an exception to how Modula-3
> works. When you make a package and ship it, you always ship it with
> both interface and library files. Is it really warranted making a special
> exception for m3back, m3front, m3quake?
>
> Besides, how are you going to re-use the m3back package unless you
> add "cm4" to the main compiler distribution? I want to be able to
> maintain my own software separately from the CM3 distribution...and
> then you have to keep the sources around, too? Hrmph....
>
> Mika
>
> Jay writes:
>>
>>Is it really meant to be reusable by anything other than cm3?
>>Even still, the workspace includes all the source. You can just build it if yo
>>u really need it.
>>
>> - Jay
>>
>>
>>----------------------------------------
>>> To: jay.krell at cornell.edu
>>> Date: Fri, 26 Jun 2009 05:38:28 -0700
>>> From: mika at async.caltech.edu
>>> CC: m3devel at elegosoft.com
>>> Subject: Re: [M3devel] archive bloat
>>>
>>> Woudln't not including libm3back.a (e.g.) be a special case?
>>>
>>> What if I write another program, call it "cm4", that imports the
>>> m3back package... what does it link against?
>>>
>>> Mika


More information about the M3devel mailing list