Re: libm on root-filesystem?

2001-08-05 Thread Goswin Brederlow

Hmm, Falk says the attachment is garbled, try this:

ftp://rut.informatik.uni-tuebingen.de/boot-floppies/

MfG
Goswin


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: libm on root-filesystem?

2001-08-05 Thread Daniel Jacobowitz

On Sat, Aug 04, 2001 at 04:12:41AM +0200, Falk Hueffner wrote:
 Adam Di Carlo [EMAIL PROTECTED] writes:
 
  Adam Di Carlo [EMAIL PROTECTED] writes:
  
   Thimo Neubauer [EMAIL PROTECTED] writes:
   
On Wed, Jul 25, 2001 at 09:42:28PM -0400, Adam Di Carlo wrote:
 Thimo Neubauer [EMAIL PROTECTED] writes:
 Ouch.  So its that libslang itself should be reduced, and based on
 that, the usage in libnewt should be reduced?

Almost :) First libnewt needs to be reduced, then libslang and after
that libm, so that only the really needed math-symbols get in :(
   
   I'll take a swipe at it.  
  
  Ok, this is done in CVS. 
  
  Can some people test this?
 
 Hm, I've not tested it, but in any case mklibs.sh seems to be getting
 more and more ugly. I've considered rewriting it in Python, using an
 iterative method where I simply add symbols until everything is
 satisfied. Shell is just not the language for such stuff. Does that
 look like a good idea? Would add another build dependency, but we have
 a gazillion already ;)

Rather than writing Yet Another library optimizer, which I see you and
Goswin have done, I think we should investigate some of the existing
ones.  I know Lineo has one (is it free?), and MontaVista has one too
(which is, I believe, supposed to be free but not released yet - I'll
see if I can make headway on this on Monday).

-- 
Daniel Jacobowitz   Carnegie Mellon University
MontaVista Software Debian GNU/Linux Developer


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: libm on root-filesystem?

2001-08-05 Thread Erik Andersen

On Sun Aug 05, 2001 at 02:23:15PM -0700, Daniel Jacobowitz wrote:
 
 Rather than writing Yet Another library optimizer, which I see you and
 Goswin have done, I think we should investigate some of the existing
 ones.  I know Lineo has one (is it free?), and MontaVista has one too
 (which is, I believe, supposed to be free but not released yet - I'll
 see if I can make headway on this on Monday).

Lineo's one, lipo, was not free last I checked.  It is written 
in perl.  I'll double check if it has been made open yet or not,

 -Erik

--
Erik B. Andersen   email:  [EMAIL PROTECTED], [EMAIL PROTECTED]
--This message was written using 73% post-consumer electrons--


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: libm on root-filesystem?

2001-08-05 Thread Falk Hueffner

Goswin Brederlow [EMAIL PROTECTED] writes:

 ls -l lib
 total 2137
 -rwxr-xr-x1 root root   124160 Aug  6 06:22 ld-2.2.3.so*
 
 mklibs.py:
 ls -l lib
 total 1542
 -rw-r--r--1 root root   124160 Aug  6 06:03 ld-2.2.3.so

Hmm, needs to be made executable IIRC, but I'm too tired now and will
go to bed.

Falk


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: libm on root-filesystem?

2001-08-05 Thread Erik Andersen

On Mon Aug 06, 2001 at 05:56:01AM +0200, Falk Hueffner wrote:
 Goswin Brederlow [EMAIL PROTECTED] writes:
 
  ls -l lib
  total 2137
  -rwxr-xr-x1 root root   124160 Aug  6 06:22 ld-2.2.3.so*
  
  mklibs.py:
  ls -l lib
  total 1542
  -rw-r--r--1 root root   124160 Aug  6 06:03 ld-2.2.3.so
 
 Hmm, needs to be made executable IIRC, but I'm too tired now and will
 go to bed.

ld indeed needs to be executable,

 -Erik

--
Erik B. Andersen   email:  [EMAIL PROTECTED], [EMAIL PROTECTED]
--This message was written using 73% post-consumer electrons--


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]




Re: libm on root-filesystem?

2001-08-04 Thread Goswin Brederlow

Falk Hueffner [EMAIL PROTECTED] writes:

 Adam Di Carlo [EMAIL PROTECTED] writes:
 
  Adam Di Carlo [EMAIL PROTECTED] writes:
  
   Thimo Neubauer [EMAIL PROTECTED] writes:
   
On Wed, Jul 25, 2001 at 09:42:28PM -0400, Adam Di Carlo wrote:
 Thimo Neubauer [EMAIL PROTECTED] writes:
 Ouch.  So its that libslang itself should be reduced, and based on
 that, the usage in libnewt should be reduced?

Almost :) First libnewt needs to be reduced, then libslang and after
that libm, so that only the really needed math-symbols get in :(
   
   I'll take a swipe at it.  
  
  Ok, this is done in CVS. 
  
  Can some people test this?
 
 Hm, I've not tested it, but in any case mklibs.sh seems to be getting
 more and more ugly. I've considered rewriting it in Python, using an
 iterative method where I simply add symbols until everything is
 satisfied. Shell is just not the language for such stuff. Does that
 look like a good idea? Would add another build dependency, but we have
 a gazillion already ;)

I (nesarly) finished the python script Falk started tonight.

The good news is that it sort of works, the size is a bit smaller and
libm is reduced to 0 Symbols and 3K.

The bad news is that even though I can chroot with those libs and run
programs and all, they all segfault when done. I dunno why. I will
compare the symbols included with both scripts, maybe theres something
missing. I'm suspecting that its one of those special cases done for
libc or some other extra case I overlooked in the mklibs.sh and thus
didn't translate.


Last thing to mention is the speedup. the mklibs.sh needs 6 minutes,
the python variant about 30 seconds including debug output.


So, who is an elf expert? What could be wrong? Anyone intrested in the
code? The mklibs.py can be used instead of the mklibs.sh as it is,
same arguments used. It then creates lib-so-stripped files that have
to be moved to lib (or rather that what the lib link points to)
manually.

MfG
Goswin

--[[application/octet-stream; type=gzip
Content-Disposition: attachment; filename=mklibs.py.gz][base64]]
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

Re: libm on root-filesystem?

2001-07-26 Thread Thimo Neubauer

On Wed, Jul 25, 2001 at 09:42:28PM -0400, Adam Di Carlo wrote:
 Thimo Neubauer [EMAIL PROTECTED] writes:
 Ouch.  So its that libslang itself should be reduced, and based on
 that, the usage in libnewt should be reduced?

Almost :) First libnewt needs to be reduced, then libslang and after
that libm, so that only the really needed math-symbols get in :(
 
 How many bytes are needed for alpha, exactly?

Right now the size of root.bin is 1717580 bytes :( I put all my hope
in getting libm to shrink because its size is 577440 bytes
(uncompressed)[1] and 303227 bytes in compressed form (gzip --best on
the file). Now if we just substract that from the above we would have
a compressed root of 1414353 bytes :) Ok, this is a very coarse
estimation but it could work out...

I'd very much like to proove this by manually getting a
very-much-reduced libm on the disks but haven't figured out the right
commandline to build a reduced lib (spying in mklibs.sh isn't very
enlighting ...). Could anyone tell me how to do this? Maybe this could
at least help to get out manually-prepared-Alpha-bootdisks to get some
testing on them going.

CU
   Thimo


[1] the unreduced libm is 665710 bytes big which made me wonder in the
first place :)

-- 
Thimo Neubauer [EMAIL PROTECTED]
Debian GNU/Linux 3.0 semi-frozen! See http://www.debian.org/ for details

 PGP signature


Re: libm on root-filesystem?

2001-07-26 Thread Glenn

On Thu, 26 Jul 2001 10:45:54 +0200
Thimo Neubauer [EMAIL PROTECTED] wrote:
 
 Right now the size of root.bin is 1717580 bytes :( I put all my hope
 in getting libm to shrink because its size is 577440 bytes
 (uncompressed)[1] and 303227 bytes in compressed form (gzip --best on
 the file). Now if we just substract that from the above we would have
 a compressed root of 1414353 bytes :) Ok, this is a very coarse
 estimation but it could work out...
 
 [1] the unreduced libm is 665710 bytes big which made me wonder in the
 first place :)
 
What about compiling some stuff against uclibc, i started looking into as
shown below, downside is i dont know if uclibc can be reduced with
mklib.sh, and uclibc is still a work in progress.

I guess it would have to be an all or nothing situation, uclibc or
glibc...

slang compiles cleanly against uclibc, didnt test its functionality
though.

397169 libslang.so.1.4.4 (glibc)
337944 libslang.so.1.4.4 (uclibc)

So as a shared object it is smaller, this is its dependencies.

(glibc)
ldd /lib/libslang.so.1.4.4 
libm.so.6 = /lib/libm.so.6
/lib/ld-linux.so.2 = /lib/ld-linux.so.2

(uclibc)
ldd ./libslang.so.1.4.4 
libdl.so.0 = /usr/i386-linux-uclibc/usr/lib/libdl.so.0
ld-uClibc.so.0 = /usr/i386-linux-uclibc/usr/lib/ld-uClibc.so.0
ldd /usr/i386-linux-uclibc/usr/lib/libdl.so.0
libc.so.0 = /usr/i386-linux-uclibc/usr/lib/libc.so.0
ld-uClibc.so.0 = /usr/i386-linux-uclibc/usr/lib/ld-uClibc.so.0

uclibc has its own libm, but when compiled against uclibc it doesnt seem
to be linking to it. (im no expert on libraries, what did i miss?)

here is the size of unstriped uclibc libraries, in gziped and normal state
100627 ld-uClibc-0.9.5.so
 33443 ld-uClibc-0.9.5.so.gz
 30321 libdl-0.9.5.so
 10763 libdl-0.9.5.so.gz
841837 libuClibc-0.9.5.so
186411 libuClibc-0.9.5.so.gz
502033 libm-0.9.5.so
169196 libm-0.9.5.so.gz

the striped glibc libraries from the i386 boot disks are
654380 libc-2.2.3.so
278492 libc-2.2.3.so.gz
129252 libm.so.6
 55092 libm.so.6.gz

So it may not matter if uclibc isnt striped

If its worth consideration i could look into it further,
perhaps try and put together a handmade i386 root disk using uclibc.


Glenn
 PGP signature


Re: libm on root-filesystem?

2001-07-25 Thread Thimo Neubauer

I hate do do a self-reply but I tracked down the problem further:

libslang needs all mathmatical functions on earth, because it provides
wrappers for all of them. libnewt instead just needs a few of slangs
functions, not including a math-function at all. Unfortunately the
library reduction seems to only to see that there are unresolved
symbols in libslang and includes all the math-stuff which is wrong
because thos routines needing the math will be kicked out anyway (I
checked this with objdump on the reduced libslang).

Anyone able to teach the library reduction about this case? I do not
dare after I read parts of the script...

CU
   Thimo

-- 
Thimo Neubauer [EMAIL PROTECTED]
Debian GNU/Linux 3.0 semi-frozen! See http://www.debian.org/ for details

 PGP signature