This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
binutils-2.11 ld testsuite problems + PATCH
- To: binutils at sources dot redhat dot com
- Subject: binutils-2.11 ld testsuite problems + PATCH
- From: Matthew Schalit <mschalit at pacbell dot net>
- Date: Thu, 03 May 2001 18:23:11 -0700
Hi folks,
Trying to compile binutils-2.11 on an i586-sco-sysv5uw7.1.1,
otherwise known as UnixWare 7.
Using gnu-make-3.79.1.
Native everything else (cc, ar, sed, ld, etc...)
No SCO UDK installed. Building in the source tree.
I used ./configure --enable-shared <--- nice and simple.
I used gmake <--- no problems.
Using gmake check, I get the following results.
binutils - passed 22, skipped 4
gas - passed all 72
ld - passed 10, skipped 9, FAILED 7
I'd like to help fix the 7 failures, if I can. More on
that later.
I found three bugs in ld/configure.host that stopped me from
being able to run the ld testsuite at all.
They're all in ld/configure.host. I've included a patch.
Here's what was wrong for my platform:
/lib/crt1.o <=== wrong path (/usr/ccs/lib/crt1.o)
/lib/crtn.o <=== wrong path (/usr/ccs/lib/crtn.o)
cc -print-libgcc-filename <=== not an option to SCO's cc.
First the ld/configure.host patch where I add a test case for Uw7
and do a kludgy to look for gcc:
---------------------------------------------------------------------------------------
--- ld/configure.host.orig Thu May 3 18:05:01 2001
+++ ld/configure.host Thu May 3 18:02:55 2001
@@ -55,6 +55,11 @@
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -lc `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi`'
;;
+i[3456]86-sco-sysv5uw7*)
+ HOSTING_CRT0='/usr/ccs/lib/crt1.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; fi`'
+ HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; elif [ "${CC}" = gcc ]; then ${CC} -print-libgcc-file-name; fi;` -lc `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; fi` /usr/ccs/lib/crtn.o'
+ ;;
+
i[3456]86-*-sysv*)
HOSTING_CRT0='/lib/crt1.o `if [ -f ../gcc/crtbegin.o ]; then echo ../gcc/crtbegin.o; fi`'
HOSTING_LIBS='`if [ -f ../gcc/libgcc.a ] ; then echo ../gcc/libgcc.a ; else ${CC} -print-libgcc-file-name; fi` -lc `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; fi` /lib/crtn.o'
----------------------------------------------------------------------------------------
So that let me run gmake check-ld without crashing. Then I was able
to get the results that had the 10 passes and 7 FAILS.
Here's the output from check-ld (truncated at 80 cols)...
=====================================================
=== ld tests ===
Schedule of variations:
unix
Running target unix
Using /usr/local/share/dejagnu/baseboards/unix.exp as board description file for
Using /usr/local/share/dejagnu/config/unix.exp as generic interface file for tar
Using /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/config/default.exp as to
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-bootstrap/bootstrap
FAIL: bootstrap
FAIL: bootstrap with strip
FAIL: bootstrap with --static
FAIL: bootstrap with --traditional-format
FAIL: bootstrap with --no-keep-memory
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-cdtest/cdtest.exp .
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-checks/checks.exp .
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-elfvers/vers.exp ..
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-elfvsb/elfvsb.exp .
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-empic/empic.exp ...
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-scripts/crossref.ex
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-scripts/defined.exp
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-scripts/phdrs.exp .
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-scripts/script.exp
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-scripts/sizeof.exp
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-scripts/weak.exp ..
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-selective/selective
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-sh/sh.exp ...
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-shared/shared.exp .
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-srec/srec.exp ...
FAIL: S-records
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-undefined/undefined
FAIL: undefined line
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-undefined/weak-unde
Running /home/matthew/Uber/Dev/binutils-2.11/ld/testsuite/ld-versados/versados.e
=== ld Summary ===
# of expected passes 10
# of unexpected failures 7
# of untested testcases 9
/home/matthew/Uber/Dev/binutils-2.11/ld/ld-new 2.11
================================================================================
At this point, I'm so new that I can't debug these FAILs without
some pointers. What should I do, and where should I start?
Thanks,
Matthew