This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


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

3.0 PATCH: Fix multilibbed libstdc++ v3 testsuite


As reported before in PR libstdc++/2841

	http://gcc.gnu.org/ml/gcc-prs/2001-05/msg00817.html

the libstdc++ v3 testsuite doesn't currently support multilibbed targets.
The problem is twofold:

* If I run e.g.

	make RUNTESTFLAGS='--target_board "unix{-mabi=64}"' check

  on IRIX 6.2, make check is still run in mips-sgi-irix6.2/libstdc++-v3,
  but with -mabi=64 to create N64 binaries.  Still the linker is pointed to
  the mips-sgi-irix6.2/libstdc++-v3/src/.libs directory, which only
  contains libstdc++.so for the default (i.e. N32 in this case) multilib.

  I haven't attacked this yet, since I don't know for sure how make check
  for multilibs is really supposed to work.

* Instead I've done the following: simply run make RUNTESTFLAGS=... check
  in the appropriate multilib directory,
  i.e. mips-sgi-irix6.2/mabi=64/libstdc++-v3.  This allowed me to
  sucessfully compile the tests, but they failed to run since
  libgcc_s_mabi=64.so couldn't be found since LD_LIBRARY_PATH pointed to
  ${blddir}/../../gcc, missing one ../ (i.e. $MULTIBUILDTOP).  I fixed this
  as follows, inspired by gcc/testsuite/lib/g++.exp (e.g. g++_link_flags).
  With this patch, I'm finally able to sucessfully run the testsuite in
  multilib subdirectories.

	Rainer

-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University

Email: ro@TechFak.Uni-Bielefeld.DE


Wed May 30 18:33:24 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* testsuite/lib/libstdc++-v3-dg.exp (libstdc++-v3-init): Use
	get_multilibs to find gcc.

Index: libstdc++-v3/testsuite/lib/libstdc++-v3-dg.exp
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/testsuite/lib/libstdc++-v3-dg.exp,v
retrieving revision 1.2.2.4
diff -u -p -r1.2.2.4 libstdc++-v3-dg.exp
--- libstdc++-v3-dg.exp	2001/05/23 07:07:41	1.2.2.4
+++ libstdc++-v3-dg.exp	2001/05/30 19:00:51
@@ -44,9 +44,11 @@ proc libstdc++-v3-init { args } {
 	file copy -force $txt $outdir
     }
 
+    set gccpath [get_multilibs]
+
     # set LD_LIBRARY_PATH so that libgcc_s, libstdc++ binaries can be found.
     set ld_library_path "."
-    append ld_library_path ":${blddir}/../../gcc"
+    append ld_library_path ":${gccpath}../gcc"
     append ld_library_path ":${blddir}/src/.libs"
 
     # Do a bunch of handstands and backflips for cross compiling and


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