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"
}