Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: How to best build a smalle libcurses for tiny crunched installers?



So I ened up doing both:

 1) add missing tiny wrappers to distrib/utils/libhack untill the main
    locale references to libc disappeared (that is most of the multibyte
    locale code got not pulled in any more)

 2) create a makefile hack to build libcurses and nvi w/o WCHAR support

The resulting "instbin" sizes (the crunched and stripped binary containing
all userland code on the media) was:

			Method 1	Method 2	diff
atari install floppy	1326224		1309808		16416
sun3 miniroot		1878976		1811280		67696

I consider the additional gain worth the hackish makefiles and will commit
both (as part 1 will also help other install media).

For the archives: the method I used to find symbols missing was: start with
uwe's list (some symbols were already covered) and then add

	LDADD+= -Wl,-Map=instbin.map

to the generated instbin.mk file in the object directory. Looking at the
map file it became obvious which symbol references caused inclusion of things
like is_multibyte.o from libc. I then iteratively added those to libhack
and rebuild, untill no linker failures occured and the whole thing was
small enough (i.e. the build did not fail).

Martin


Home | Main Index | Thread Index | Old Index