On Fri, Mar 21, 2025 at 5:02 PM Iain Sandoe <iains....@gmail.com> wrote: > > Tested on x86_64 linux, darwin and aarch64 linux, OK for trunk?
OK. Richard. > thanks > Iain > > --- 8< --- > > This fixes a typo where libraries were not added for targets without > HAVE_LD_STATIC_DYNAMIC. > > It also adds the libraries in this case; > typically, a target without HAVE_LD_STATIC_DYNAMIC can take the > -static-libgcobol and use that to drive a spec substitution viz: > %{static-libgcobol:%:replace-outfile(-lgcobol libgcobol.a%s)} > which needs both the library and -static-libgcobol to be present > in the driver output. > > gcc/cobol/ChangeLog: > > * gcobolspec.cc (add_arg_lib): Fix typo. > (lang_specific_driver): Arrange to append both -lgcobol > and -static-libgcobol for targets without > HAVE_LD_STATIC_DYNAMIC. > > Signed-off-by: Iain Sandoe <i...@sandoe.co.uk> > --- > gcc/cobol/gcobolspec.cc | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) > > diff --git a/gcc/cobol/gcobolspec.cc b/gcc/cobol/gcobolspec.cc > index 4ae8e2cfd9e..7de41fd037a 100644 > --- a/gcc/cobol/gcobolspec.cc > +++ b/gcc/cobol/gcobolspec.cc > @@ -116,8 +116,8 @@ add_arg_lib(const char *library, bool force_static > ATTRIBUTE_UNUSED) > { > append_option (OPT_Wl_, LD_STATIC_OPTION, 1); > } > - append_option (OPT_l, library, 1); > #endif > + append_option (OPT_l, library, 1); > #ifdef HAVE_LD_STATIC_DYNAMIC > if( force_static ) > { > @@ -339,10 +339,8 @@ lang_specific_driver (struct cl_decoded_option > **in_decoded_options, > break; > > case OPT_static_libgcobol: > -#ifdef HAVE_LD_STATIC_DYNAMIC > static_libgcobol = true; > need_libgcobol = true; > -#endif > break; > > case OPT_l: > @@ -548,7 +546,11 @@ lang_specific_driver (struct cl_decoded_option > **in_decoded_options, > break; > > case OPT_static_libgcobol: > - // Don't pass this one on to cobol1 > +#if !defined (HAVE_LD_STATIC_DYNAMIC) > + // Allow the target to use spec substitution. > + append_arg(decoded_options[i]); > +#endif > + // Else don't pass this one on to cobol1 > break; > > ////#ifdef __x86_64__ > -- > 2.39.2 (Apple Git-143) >