I've been working on a project that requires building stripped-down libraries, and was frustrated to discover the bug in mklibs.sh from the current boot-floppies didn't work with the new glibc. Not wanting to use potato for this task, I figured out and fixed the bug. (I realize that glibc has moved on since then; I'm sure it should be obvious what I did, though, and updating it to reflect the current situation should be a cinch.) I wasn't sure who to send the patch to, so I'm sending it here, in hopes that it will make its way wherever it needs to go.
--- boot-floppies-2.2.16/scripts/rootdisk/mklibs.sh Wed Jun 14 15:45:46 2000 +++ ./mklibs.sh Wed Nov 8 12:39:14 2000 @@ -520,12 +520,12 @@ echo `find-files $src_path libc_pic/soinit.so libc_pic.a libc_pic/sofini.so` return 0 fi - if [ "x$1" = "xlibc-2.1.2.so" -o "x$1" = "xlibc-2.1.3.so" ] ; then + if [ "x$1" = "xlibc-2.1.2.so" -o "x$1" = "xlibc-2.1.3.so" -o "x$1" = +"xlibc-2.1.94.so" ] ; then # Order does matter! First init, then lib, then fini! echo `find-files $src_path libc_pic/soinit.o libc_pic.a libc_pic/sofini.o libc_pic/interp.o` return 0 fi - if [ "x$1" = "xlibm-2.1.2.so" -o "x$1" = "xlibm-2.1.3.so" ] ; then + if [ "x$1" = "xlibm-2.1.2.so" -o "x$1" = "xlibm-2.1.3.so" -o "x$1" = +"xlibc-2.1.94.so" ] ; then echo `find-file "$src_path" libm_pic.a` return 0 fi @@ -557,6 +557,10 @@ fi if [ "x$1" = "xlibc-2.1.3.so" ] ; then echo "`find-file $src_path ld-2.1.3.so` -lgcc -Wl,--version-script=`find-file $src_path libc_pic.map`" + return 0 + fi + if [ "x$1" = "xlibc-2.1.94.so" ] ; then + echo "`find-file $src_path ld-2.1.94.so` -lgcc -Wl,--version-script=`find-file +$src_path libc_pic.map`" return 0 fi return 0