[Lunar-commits] <moonbase> enchant: no statics

wookietreiber kizkizzbangbang at googlemail.com
Wed Jun 22 06:39:50 CEST 2011


On Tue, Jun 21, 2011 at 08:47:11PM -0700, Auke Kok wrote:
> On 06/21/2011 10:03 AM, wookietreiber wrote:
> >hi
> >
> >I usually figure out about statics after I lin'ed new modules with
> >lvu install mod, I don't actively search for them
> >
> >
> >suggestion:
> >
> >make default configure use --disable-static and, for build important 
> >modules,
> >like gcc or binutils, use a var in DETAILS, like STATIC=on.
> >
> >This would let us easily stay
> >- static-free for all non-essential stuff, i.e. no rebuilds needed to make
> >changes visible
> >- and static-save, i.e. modules required for the build process won't break
> >instantly with a broken dependency
> 
> well, frankly, the energy you're putting into making modules non-static 
> is a waste of time. You've got 3000 more modules to do, why not think 
> about it in a creative way?
> 
> We already have "bad_flags" which removes stuff from CFLAGS and the 
> like, why not extend it to remove things from OPTS too? then we can just
> do:
> 
> 	bad_flags --disable-static
> 
> in gcc/BUILD
> 
> and you, personally, can just run:
> 
> 	lunar set OPTS --disable-static
> 
> hint: I'll take a patch against optimize.lunar....
> 
> Auke

my #1 solution would be that everyone could decide for themselves whether or
not to build a static/shared only or mixed system. This would be configured
with a small menu:


title: C/C++ modules

[ ] static (tooltip: faster app startup, rebuilds to make changes visible)
[ ] shared (tooltip: slower app startup, no rebuilds to make changes visible)


no selection (default): no modification: modules lin as they normally would
static only: add --enable-static AND --disable-shared to OPTS
shared only: add --disable-static AND --enable-shared to OPTS
both static and shared: add --enable-static AND --enable-shared to OPTS


we also have to make the settings easily accessible since still a lot of
modules do not have configure scripts and require Makefile hacking to enforce
the kind of build.

what do you think about this solution?

best regards
wookietreiber



More information about the Lunar-dev mailing list