This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Patch: 3.4 bib config/pa/pa.c for bootstrap/8886 - g++ FAILs


> /usr/lib/dld.sl: Unresolved symbol: pthread_once (code)  from /usr/local/lib/libgcc_s.sl
> FAIL: g++.dg/bprob/g++-bprob-1.C execution,    -O0  -fprofile-arcs

Looks like somebody has been mucking with config.gcc to try enable
posix threads.  This is currently disabled on the main because exactly
how to do this hasn't been worked out.  I am going to make a new attempt
in the new year to see if weak symbols can be supported using sdef
symbols and hiding the primary.  If that works out, then I don't
think a multilib implementation will be needed to support threads.

> Though I haven't yet confirmed that that's most of them. I'm using the
> porting centre's gcc 3.2 - should the testsuite be setting LD_LIBRARY_PATH
> or SHLIB_PATH? Looking at it though, the libgcc_s.sl built by 3.4 bib don't
> have the pthread_once symbol either.

It's not normally necessary on the 32-bit som port because the full
paths of dependent libraries are encoded in libraries and executables.
It something to consider for the 64-bit hpux port or hpux-linux.  I
have been defining LD_LIBRARY_PATH in the hppa-linux testing that I
do because I have been working occasionally on glibc.  However,
problems with version incompatibilities can occur.

The testsuite doesn't currently use any preexisting LD_LIBRARY_PATH
in the envirnoment.  The following patch and a similar one for
libstdc++-v3-dg.exp appends LD_LIBRARY_PATH from the environment to
the one used for running test programs.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6605)

2002-12-13  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* lib/g++.exp (ld_library_path): Append LD_LIBRARY_PATH from
	environment.
	* lib/g77.exp, lib/objc.exp (ld_library_path): likewise.

Index: lib/g++.exp
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/testsuite/lib/g++.exp,v
retrieving revision 1.27
diff -u -3 -p -r1.27 g++.exp
--- lib/g++.exp	26 Sep 2002 09:51:44 -0000	1.27
+++ lib/g++.exp	10 Dec 2002 17:22:32 -0000
@@ -176,6 +176,10 @@ proc g++_link_flags { paths } {
       }
     }
 
+    if { [getenv LD_LIBRARY_PATH] != "" } {
+      append ld_library_path ":[getenv LD_LIBRARY_PATH]"
+    }
+
     # On IRIX 6, we have to set variables akin to LD_LIBRARY_PATH, but
     # called LD_LIBRARYN32_PATH (for the N32 ABI) and LD_LIBRARY64_PATH
     # (for the 64-bit ABI).  The right way to do this would be to modify
Index: lib/g77.exp
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/testsuite/lib/g77.exp,v
retrieving revision 1.15
diff -u -3 -p -r1.15 g77.exp
--- lib/g77.exp	26 Sep 2002 09:51:44 -0000	1.15
+++ lib/g77.exp	10 Dec 2002 17:22:32 -0000
@@ -110,6 +110,10 @@ proc g77_link_flags { paths } {
       }
     }
 
+    if { [getenv LD_LIBRARY_PATH] != "" } {
+      append ld_library_path ":[getenv LD_LIBRARY_PATH]"
+    }
+
     # On IRIX 6, we have to set variables akin to LD_LIBRARY_PATH, but
     # called LD_LIBRARYN32_PATH (for the N32 ABI) and LD_LIBRARY64_PATH
     # (for the 64-bit ABI).  The right way to do this would be to modify
Index: lib/objc.exp
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/testsuite/lib/objc.exp,v
retrieving revision 1.16
diff -u -3 -p -r1.16 objc.exp
--- lib/objc.exp	26 Sep 2002 09:51:45 -0000	1.16
+++ lib/objc.exp	10 Dec 2002 17:22:32 -0000
@@ -180,6 +180,10 @@ proc objc_target_compile { source dest t
     }
     lappend options "compiler=$OBJC_UNDER_TEST"
 
+    if { [getenv LD_LIBRARY_PATH] != "" } {
+	append ld_library_path ":[getenv LD_LIBRARY_PATH]"
+    }
+
     # On IRIX 6, we have to set variables akin to LD_LIBRARY_PATH, but
     # called LD_LIBRARYN32_PATH (for the N32 ABI) and LD_LIBRARY64_PATH
     # (for the 64-bit ABI).  The right way to do this would be to modify


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]