Minimizing X.org 6.8.1 (not KDrive) to meet specs
ftigeot at wolfpond.org
Thu Sep 23 12:13:28 PDT 2004
On Thu, Sep 23, 2004 at 01:48:33PM -0400, Sergei Mutovkin wrote:
> On Thu, 23 Sep 2004 18:57:31 +0200, Francois Tigeot
> <ftigeot at wolfpond.org> wrote:
> > -O3 and such doesn't imply better performance in all cases. You should do
> > some benchmarking to be sure.
> Can you give any hint on how I can measure a performance?
time(1) is often good enough.
> > To reduce /usr/X11R6 size I use mainly special options in host.def.
> > Most fonts can be disabled like this:
> > echo "#define BuildSpeedoFonts NO" >> $LOCALDEF
> > echo "#define BuildType1Fonts NO" >> $LOCALDEF
> > echo "#define BuildCIDFonts NO" >> $LOCALDEF
> > echo "#define BuildTrueTypeFonts NO" >> $LOCALDEF
> > echo "#define Build75DpiFonts NO" >> $LOCALDEF
> I wonder if 100DPI fonts can be used instead of 75dpi at all times?
Certainly. It will probably look ugly though.
For ThinBSD I keeped only the two fonts necessary to start the X server:
'fixed' and 'cursor'.
Others are provided by a remote font server if needed.
> > I have patches to apply to Imakefiles where it is not practical to
> > disable the build and installation of components in an other way, but
> > they only contribute to a minor part of the size reduction.
> Well, the only real goal I have in mind is to fit whole distribution
> with a lot of other software on 256Mb flash which will be bottable and
> if needed reset hdd to "initial" state.
You mean 256 megabytes, right ? With such a size you shouldn't have any
problem. I only ressorted to the extremes I used because I had to fit
everything in 16MB.
> > For example, xc/programs/xkbcomp/geometry/Imakefile contains a list of
> > many keyboards description files. I only need 'pc' so I patch all the
> > others away before build time.
> I will look into this file, very interesting.. I never even though of
> this yet...
There are many unneeded files in a typical XFree or Xorg binary
distribution. I started with a standard tree and removed all I could by hand.
> > There should be an option somewhere in Imakefile hell.
> > grep(1) is your friend.
> Hm... I know :) grepping helps, but not always :)
With the Imake mess you don't often have a choice :-)
> > ldd can be used to see which libraries your app uses.
> Kylix applications can not be ldded for some reason, they use some
> other method of linking againt libraries without linux ld..... :(
Maybe this is also one of the reasons your applications have a long startup
time. Finding library references can be quite time consuming :-/
> > I'm not sure for this one. Applications have no problem to display Truetype
> > fonts, but they run from machines with full-featured X11 installations.
> I don't know X11 protocol, to figure out how fonts are handled... but
> I know that at times when my school machine didn't have anti-aliasing
> and I had it enabled on my home server I could connect via SSH from
> schoold with X forwarding enabled and view anti-aliased fonts... which
> was super strange to see, as I thought only instructions were sent on
> how to draw, etc...
I believe that X font handling was so broken for modern requirements it
was decided to manage fonts on the client side...
More information about the xorg