[uClibc]get-needed-libgcc-objects.sh
michaels at jungo.com
michaels at jungo.com
Thu Mar 22 16:06:39 UTC 2001
I have solved several cross-compilation problems for the mentioned
sript.
See the attached patch.
Do you guys cross-compile it ever? :-)?
--
Sincerely yours,
Michael Shmulevich
______________________________________
Software Developer
Jungo - R&D
email: michaels at jungo.com
web: http://www.jungo.com
Phone: 1-877-514-0537(USA) +972-9-8859365(Worldwide) ext. 233
Fax: 1-877-514-0538(USA) +972-9-8859366(Worldwide)
-------------- next part --------------
Index: extra/scripts/get-needed-libgcc-objects.sh
===================================================================
RCS file: /arch/cvs/rg/pkg/ulibc/extra/scripts/get-needed-libgcc-objects.sh,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 get-needed-libgcc-objects.sh
--- extra/scripts/get-needed-libgcc-objects.sh 2001/03/15 12:25:25 1.1.1.1
+++ extra/scripts/get-needed-libgcc-objects.sh 2001/03/22 16:04:36
@@ -12,19 +12,19 @@
# Possible problems (paranioa mode): Are any of the objects in libgcc.a
# needed to actually load the shared library on any archs?
-LIBGCC=`$CC -print-libgcc-file-name`
+LIBGCC=`${CROSS}gcc -print-libgcc-file-name`
echo Finding missing symbols in libc.a ...
echo " partial linking..."
rm -f libc.ldr
-ld -r -o libc.ldr ../crt0.o *.o
+$LD -r -o libc.ldr ../crt0.o *.o
-if nm -s libc.ldr | grep -v " main$" | grep " U " > sym.need ; then
+if $NM -s libc.ldr | grep -v " main$" | grep " U " > sym.need ; then
rm -f obj.need
touch obj.need
for SYM in `cat sym.need | sed -e 's/ U //g'` ; do
- if nm -s $LIBGCC | grep -q $SYM" in " ; then
- nm -s $LIBGCC | grep $SYM" in " | cut -d' ' -f3 >> obj.need
+ if $NM -s $LIBGCC | grep -q $SYM" in " ; then
+ $NM -s $LIBGCC | grep $SYM" in " | cut -d' ' -f3 >> obj.need
else
echo Symbol $SYM needed by libc.a but not found in libgcc.a
fi
@@ -36,7 +36,7 @@
rm -rf tmp-gcc
mkdir tmp-gcc
-(cd tmp-gcc ; ar -x $LIBGCC)
+(cd tmp-gcc ; $AR x $LIBGCC)
rm libgcc.ldr
echo Extracting referenced libgcc.a objects ...
@@ -46,10 +46,10 @@
while [ -s obj.need ] && ! cmp -s obj.need obj.need.0 ; do
(cd tmp-gcc ; cat ../obj.need | xargs ld -r -o ../libgcc.ldr)
cp obj.need obj.need.0
- if nm -s libgcc.ldr | grep " U " > sym.need ; then
+ if $NM -s libgcc.ldr | grep " U " > sym.need ; then
for SYM in `cat sym.need | sed -e 's/ U //g'` ; do
- if nm -s $LIBGCC | grep -q $SYM" in " ; then
- nm -s $LIBGCC | grep $SYM" in " | cut -d' ' -f3 >> obj.need
+ if $NM -s $LIBGCC | grep -q $SYM" in " ; then
+ $NM -s $LIBGCC | grep $SYM" in " | cut -d' ' -f3 >> obj.need
fi
done
fi
More information about the uClibc
mailing list