On Tue, 11 Mar 2025, Jakub Jelinek wrote:

> On Tue, Mar 11, 2025 at 02:45:33PM +0000, Iain Sandoe wrote:
> > > The following incremental patch does this.  The result has everything
> > > needed but also some weird entries:
> > > 
> > > Setting LD_LIBRARY_PATH to 
> > > .:/tmp/obj/x86_64-pc-linux-gnu/./libgcobol/.libs:/tmp/obj/x86_64-pc-linux-gnu/./libstdc++-v3/src/.libs:/tmp/obj/gcc/testsuite/cobol/../..:/tmp/obj/gcc/testsuite/cobol/../../32:.:/tmp/obj/x86_64-pc-linux-gnu/./libgcobol/.libs:/tmp/obj/x86_64-pc-linux-gnu/./libstdc++-v3/src/.libs:/tmp/obj/gcc/testsuite/cobol/../..:/tmp/obj/gcc/testsuite/cobol/../../32
> > > 
> > > Richard.
> > > 
> > > 
> > > diff --git a/gcc/testsuite/lib/cobol.exp b/gcc/testsuite/lib/cobol.exp
> > > index 65687bc64ae..73dfeab5ba8 100644
> > > --- a/gcc/testsuite/lib/cobol.exp
> > > +++ b/gcc/testsuite/lib/cobol.exp
> > > @@ -119,6 +119,9 @@ proc cobol_link_flags { paths } {
> > >        }
> > >        append ld_library_path ":${gccpath}/libgcobol/.libs"
> > >       }
> > > +      if { [file exists 
> > > "${gccpath}/libstdc++-v3/src/.libs/libstdc++.${shlib_ext}"] } {
> > 
> > I think Darwin at least, will need a -B for the libstdc++-v3/src/.libs path 
> > adding to
> > the flags; this is used to set the embedded runpaths and the OS is getting 
> > picky about
> > not falling back to alternate shared libs.
> > (not any way urgent since we cannot build the FE yet)
> 
> Yeah, I'd just add -B with libstdc++-src-v3/src/.libs on all targets too,
> not just the ld_library_path part.

Fair enough, then additionally the following

diff --git a/gcc/testsuite/lib/cobol.exp b/gcc/testsuite/lib/cobol.exp
index 73dfeab5ba8..cd88bcb66d1 100644
--- a/gcc/testsuite/lib/cobol.exp
+++ b/gcc/testsuite/lib/cobol.exp
@@ -119,7 +119,13 @@ proc cobol_link_flags { paths } {
        }
        append ld_library_path ":${gccpath}/libgcobol/.libs"
       }
-      if { [file exists 
"${gccpath}/libstdc++-v3/src/.libs/libstdc++.${shlib_ext}"] } {
+      if { [file exists "${gccpath}/libstdc++-v3/src/.libs/libstdc++.a"] 
||
+          [file exists 
"${gccpath}/libstdc++-v3/src/.libs/libstdc++.${shlib_ext}"] } {
+       if { $target_wants_B_option } {
+          append flags "-B${gccpath}/libstdc++-v3/src/.libs "
+       } else {
+          append flags "-L${gccpath}/libstdc++-v3/src/.libs "
+       }
        append ld_library_path ":${gccpath}/libstdc++-v3/src/.libs"
       }
 

Reply via email to