Re: becoming embebbed




Tim Janik <timj@gtk.org> writes:

> On 30 Mar 2000, Havoc Pennington wrote:
> 
> > 
> > "Chang Woo Lee(Ultracat)" <ultracat@gmate.co.kr> writes: 
> > > how can we reduce GTK's size?
> > > 
> > 
> > It should be a configure-time option:
> >   ./configure --core-widgets-only
> > 
> > This would compile a smaller GTK+ if you want it.
> 
> there's never going to be *the* standard set of "core gtk widgets"
> for more than one application.
> introducing --core-widgets-only means that you have 50% users
> complain that it doesn't include their favourite pet core widget,
> and 50% users complain that its still to huge and GtkFooInCore
> could not be considered a core widget.
> the right thing to do is to move _seldomly_ used widgets (and with
> those i mean stuff that isn't used in every-day applications, and
> is unlikely to be found in other toolkit distributions as well,
> like GtkRuler and GtkGamma) along with widgets that don't belong
> into gnome-libs into a seperate library, which also may come with
> more dependancies than gtk, and be done with it.
> any vendor that's really going to setup gtk-based embedded devices,
> will do his own trimming of the toolkit and other components anyways.

This has the exact same problem. (OK, I agree that GtkRuler and GtkGamma should
get moved out of the GTK+ distro, but that is only a small saving)

But with either solution, if we split GTK+ into core widgets and non-core
widgets, then if you want a single non-core widget, you have to pull in
all the rest of the non-core widgets. Same problem.

What you probably want to do is something like let the user specify:

 - Which widgets get linked into libgtk.so
 - Which widgets get their own (per-widget)libraries

The default would be everything in libgtk - fastest and simplest. But
when space was tight, then each app could pull in exactly the 
non-essential widgets it needed.

Actually, I suspect that bumping non-essential widgets won't make a
huge difference, except maybe for gtkpacker. 

If you do 'size *.o | sort -nr | head' in the GTK+ distribution, you'll
see that the number one thing we can do to reduce the size of GTK+
is to provide less sprawling replacements for GtkCList and GtkCTree.
These widgets are huge. 

Regards,
                                        Owen



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]