Performance datapoint - impact of static libs
Before:
real 104m1.135s
user 415m57.560s
sys 61m31.180s
With "--disable-static" being passed to configure (changes below):
real 99m46.645s
user 383m32.390s
sys 60m42.170s
So static libs add an extra ~30mins of processing (7%) and ~5 mins to the overall build time. Not as much of a gain as I'd have liked but interesting none the less.
The changes were effectively:
DISABLESTATIC = "--disable-static"
DISABLESTATIC_pn-sqlite3-native = ""
DISABLESTATIC_pn-openssl = ""
DISABLESTATIC_pn-openssl-native = ""
DISABLESTATIC_pn-qemu-native = ""EXTRA_OECONF_append = " ${DISABLESTATIC}"
in local.conf with a patch to the openjade-native recipe to not install the .a file using oe_libinstall and a patch to apmd to fix a libtool related compiling bug in its makefile.
Cheers,
Richard
Quoted 3 lines
So static libs add an extra ~30mins of processing (7%) and ~5 mins to the overall build time. Not as much of a gain as I'd have liked but interesting none the less.
Do you know how many packages actually respect the --disable-static flag? I don't think (e)glibc does, for example, which is a bit of a shame since it obviously has one of the largest build times.
p.
Quoted 7 lines · Phil Blundell
Quoted 3 lines
So static libs add an extra ~30mins of processing (7%) and ~5 mins to the overall build time. Not as much of a gain as I'd have liked but interesting none the less.
Do you know how many packages actually respect the --disable-static flag? I don't think (e)glibc does, for example, which is a bit of a shame since it obviously has one of the largest build times.
I did a quick search over the resulting build looking for image/*.a files and it seems a lot of the system did respect it. There were some significant exceptions (eglibc, boost, openssl spring to mind) but in general it looked pretty good.
Cheers,
Richard