public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags
@ 2022-01-21  4:51 Mike Frysinger
  2022-01-21 11:25 ` Corinna Vinschen
  2023-04-14 21:51 ` Thomas Schwinge
  0 siblings, 2 replies; 4+ messages in thread
From: Mike Frysinger @ 2022-01-21  4:51 UTC (permalink / raw)
  To: newlib

It's unclear why this was added originally, but assuming it was needed
20 years ago, it shouldn't be explicitly required nowadays.  Current
versions of autotools already take care of exporting LDFLAGS to the
Makefile as needed (things are actually getting linked).  That's why
the configure diffs show LDFLAGS still here, but shifted to a diff
place in the output list.  A few dirs stop exporting LDFLAGS, but
that's because they don't do any linking, only compiling, so it's
correct.

As for the use of $ldflags instead of the standard $LDFLAGS, I can't
really explain that at all.  Just use the right name so users don't
have to dig into why their setting isn't respected, and then use a
non-standard name instead.  Adjust the testsuite to match.
---
 newlib/acinclude.m4                                      | 3 ---
 newlib/configure                                         | 9 +++------
 newlib/iconvdata/configure                               | 9 +++------
 newlib/libc/configure                                    | 9 +++------
 newlib/libc/machine/a29k/Makefile.in                     | 1 -
 newlib/libc/machine/a29k/configure                       | 4 ----
 newlib/libc/machine/aarch64/Makefile.in                  | 1 -
 newlib/libc/machine/aarch64/configure                    | 4 ----
 newlib/libc/machine/amdgcn/Makefile.in                   | 1 -
 newlib/libc/machine/amdgcn/configure                     | 4 ----
 newlib/libc/machine/arc/Makefile.in                      | 1 -
 newlib/libc/machine/arc/configure                        | 4 ----
 newlib/libc/machine/arm/Makefile.in                      | 1 -
 newlib/libc/machine/arm/configure                        | 4 ----
 newlib/libc/machine/bfin/Makefile.in                     | 1 -
 newlib/libc/machine/bfin/configure                       | 4 ----
 newlib/libc/machine/configure                            | 9 +++------
 newlib/libc/machine/cr16/Makefile.in                     | 1 -
 newlib/libc/machine/cr16/configure                       | 4 ----
 newlib/libc/machine/cris/Makefile.in                     | 1 -
 newlib/libc/machine/cris/configure                       | 4 ----
 newlib/libc/machine/crx/Makefile.in                      | 1 -
 newlib/libc/machine/crx/configure                        | 4 ----
 newlib/libc/machine/csky/Makefile.in                     | 1 -
 newlib/libc/machine/csky/configure                       | 4 ----
 newlib/libc/machine/d10v/Makefile.in                     | 1 -
 newlib/libc/machine/d10v/configure                       | 4 ----
 newlib/libc/machine/d30v/Makefile.in                     | 1 -
 newlib/libc/machine/d30v/configure                       | 4 ----
 newlib/libc/machine/epiphany/Makefile.in                 | 1 -
 newlib/libc/machine/epiphany/configure                   | 4 ----
 newlib/libc/machine/fr30/Makefile.in                     | 1 -
 newlib/libc/machine/fr30/configure                       | 4 ----
 newlib/libc/machine/frv/Makefile.in                      | 1 -
 newlib/libc/machine/frv/configure                        | 4 ----
 newlib/libc/machine/ft32/Makefile.in                     | 1 -
 newlib/libc/machine/ft32/configure                       | 4 ----
 newlib/libc/machine/h8300/Makefile.in                    | 1 -
 newlib/libc/machine/h8300/configure                      | 4 ----
 newlib/libc/machine/h8500/Makefile.in                    | 1 -
 newlib/libc/machine/h8500/configure                      | 4 ----
 newlib/libc/machine/hppa/Makefile.in                     | 1 -
 newlib/libc/machine/hppa/configure                       | 4 ----
 newlib/libc/machine/i386/configure                       | 9 +++------
 newlib/libc/machine/i960/Makefile.in                     | 1 -
 newlib/libc/machine/i960/configure                       | 4 ----
 newlib/libc/machine/iq2000/Makefile.in                   | 1 -
 newlib/libc/machine/iq2000/configure                     | 4 ----
 newlib/libc/machine/lm32/Makefile.in                     | 1 -
 newlib/libc/machine/lm32/configure                       | 4 ----
 newlib/libc/machine/m32c/Makefile.in                     | 1 -
 newlib/libc/machine/m32c/configure                       | 4 ----
 newlib/libc/machine/m32r/Makefile.in                     | 1 -
 newlib/libc/machine/m32r/configure                       | 4 ----
 newlib/libc/machine/m68hc11/Makefile.in                  | 1 -
 newlib/libc/machine/m68hc11/configure                    | 4 ----
 newlib/libc/machine/m68k/Makefile.in                     | 1 -
 newlib/libc/machine/m68k/configure                       | 4 ----
 newlib/libc/machine/m88k/Makefile.in                     | 1 -
 newlib/libc/machine/m88k/configure                       | 4 ----
 newlib/libc/machine/mep/Makefile.in                      | 1 -
 newlib/libc/machine/mep/configure                        | 4 ----
 newlib/libc/machine/microblaze/Makefile.in               | 1 -
 newlib/libc/machine/microblaze/configure                 | 4 ----
 newlib/libc/machine/mips/Makefile.in                     | 1 -
 newlib/libc/machine/mips/configure                       | 4 ----
 newlib/libc/machine/mn10200/Makefile.in                  | 1 -
 newlib/libc/machine/mn10200/configure                    | 4 ----
 newlib/libc/machine/mn10300/Makefile.in                  | 1 -
 newlib/libc/machine/mn10300/configure                    | 4 ----
 newlib/libc/machine/moxie/Makefile.in                    | 1 -
 newlib/libc/machine/moxie/configure                      | 4 ----
 newlib/libc/machine/msp430/Makefile.in                   | 1 -
 newlib/libc/machine/msp430/configure                     | 4 ----
 newlib/libc/machine/mt/Makefile.in                       | 1 -
 newlib/libc/machine/mt/configure                         | 4 ----
 newlib/libc/machine/nds32/configure                      | 5 +----
 newlib/libc/machine/necv70/Makefile.in                   | 1 -
 newlib/libc/machine/necv70/configure                     | 4 ----
 newlib/libc/machine/nios2/Makefile.in                    | 1 -
 newlib/libc/machine/nios2/configure                      | 4 ----
 newlib/libc/machine/nvptx/Makefile.in                    | 1 -
 newlib/libc/machine/nvptx/configure                      | 4 ----
 newlib/libc/machine/or1k/Makefile.in                     | 1 -
 newlib/libc/machine/or1k/configure                       | 4 ----
 newlib/libc/machine/powerpc/Makefile.in                  | 1 -
 newlib/libc/machine/powerpc/configure                    | 4 ----
 newlib/libc/machine/pru/Makefile.in                      | 1 -
 newlib/libc/machine/pru/configure                        | 4 ----
 newlib/libc/machine/riscv/Makefile.in                    | 1 -
 newlib/libc/machine/riscv/configure                      | 4 ----
 newlib/libc/machine/rl78/Makefile.in                     | 1 -
 newlib/libc/machine/rl78/configure                       | 4 ----
 newlib/libc/machine/rx/Makefile.in                       | 1 -
 newlib/libc/machine/rx/configure                         | 4 ----
 newlib/libc/machine/sh/configure                         | 5 +----
 newlib/libc/machine/sparc/Makefile.in                    | 1 -
 newlib/libc/machine/sparc/configure                      | 4 ----
 newlib/libc/machine/spu/Makefile.in                      | 1 -
 newlib/libc/machine/spu/configure                        | 4 ----
 newlib/libc/machine/tic4x/Makefile.in                    | 1 -
 newlib/libc/machine/tic4x/configure                      | 4 ----
 newlib/libc/machine/tic6x/Makefile.in                    | 1 -
 newlib/libc/machine/tic6x/configure                      | 4 ----
 newlib/libc/machine/tic80/Makefile.in                    | 1 -
 newlib/libc/machine/tic80/configure                      | 4 ----
 newlib/libc/machine/v850/Makefile.in                     | 1 -
 newlib/libc/machine/v850/configure                       | 4 ----
 newlib/libc/machine/visium/Makefile.in                   | 1 -
 newlib/libc/machine/visium/configure                     | 4 ----
 newlib/libc/machine/w65/Makefile.in                      | 1 -
 newlib/libc/machine/w65/configure                        | 4 ----
 newlib/libc/machine/x86_64/Makefile.in                   | 1 -
 newlib/libc/machine/x86_64/configure                     | 4 ----
 newlib/libc/machine/xc16x/Makefile.in                    | 1 -
 newlib/libc/machine/xc16x/configure                      | 4 ----
 newlib/libc/machine/xscale/Makefile.in                   | 1 -
 newlib/libc/machine/xscale/configure                     | 4 ----
 newlib/libc/machine/xstormy16/Makefile.in                | 1 -
 newlib/libc/machine/xstormy16/configure                  | 4 ----
 newlib/libc/machine/z8k/Makefile.in                      | 1 -
 newlib/libc/machine/z8k/configure                        | 4 ----
 newlib/libc/sys/a29khif/Makefile.in                      | 1 -
 newlib/libc/sys/a29khif/configure                        | 4 ----
 newlib/libc/sys/amdgcn/Makefile.in                       | 1 -
 newlib/libc/sys/amdgcn/configure                         | 4 ----
 newlib/libc/sys/arm/Makefile.in                          | 1 -
 newlib/libc/sys/arm/configure                            | 4 ----
 newlib/libc/sys/configure                                | 9 +++------
 newlib/libc/sys/d10v/Makefile.in                         | 1 -
 newlib/libc/sys/d10v/configure                           | 4 ----
 newlib/libc/sys/decstation/Makefile.in                   | 1 -
 newlib/libc/sys/decstation/configure                     | 4 ----
 newlib/libc/sys/epiphany/Makefile.in                     | 1 -
 newlib/libc/sys/epiphany/configure                       | 4 ----
 newlib/libc/sys/h8300hms/Makefile.in                     | 1 -
 newlib/libc/sys/h8300hms/configure                       | 4 ----
 newlib/libc/sys/h8500hms/Makefile.in                     | 1 -
 newlib/libc/sys/h8500hms/configure                       | 4 ----
 newlib/libc/sys/linux/configure                          | 9 +++------
 newlib/libc/sys/linux/linuxthreads/configure             | 9 +++------
 newlib/libc/sys/linux/linuxthreads/machine/configure     | 9 +++------
 .../libc/sys/linux/linuxthreads/machine/i386/configure   | 9 +++------
 newlib/libc/sys/linux/machine/configure                  | 9 +++------
 newlib/libc/sys/linux/machine/i386/configure             | 9 +++------
 newlib/libc/sys/m88kbug/Makefile.in                      | 1 -
 newlib/libc/sys/m88kbug/configure                        | 4 ----
 newlib/libc/sys/mmixware/Makefile.in                     | 1 -
 newlib/libc/sys/mmixware/configure                       | 4 ----
 newlib/libc/sys/netware/Makefile.in                      | 1 -
 newlib/libc/sys/netware/configure                        | 4 ----
 newlib/libc/sys/or1k/Makefile.in                         | 1 -
 newlib/libc/sys/or1k/configure                           | 4 ----
 newlib/libc/sys/phoenix/Makefile.in                      | 1 -
 newlib/libc/sys/phoenix/configure                        | 4 ----
 newlib/libc/sys/phoenix/machine/Makefile.in              | 1 -
 newlib/libc/sys/phoenix/machine/arm/Makefile.in          | 1 -
 newlib/libc/sys/phoenix/machine/arm/configure            | 4 ----
 newlib/libc/sys/phoenix/machine/configure                | 4 ----
 newlib/libc/sys/rdos/Makefile.in                         | 1 -
 newlib/libc/sys/rdos/configure                           | 4 ----
 newlib/libc/sys/rtems/Makefile.in                        | 1 -
 newlib/libc/sys/rtems/configure                          | 4 ----
 newlib/libc/sys/sh/Makefile.in                           | 1 -
 newlib/libc/sys/sh/configure                             | 4 ----
 newlib/libc/sys/sparc64/Makefile.in                      | 1 -
 newlib/libc/sys/sparc64/configure                        | 4 ----
 newlib/libc/sys/sun4/Makefile.in                         | 1 -
 newlib/libc/sys/sun4/configure                           | 4 ----
 newlib/libc/sys/sysmec/Makefile.in                       | 1 -
 newlib/libc/sys/sysmec/configure                         | 4 ----
 newlib/libc/sys/sysnec810/Makefile.in                    | 1 -
 newlib/libc/sys/sysnec810/configure                      | 4 ----
 newlib/libc/sys/sysnecv850/Makefile.in                   | 1 -
 newlib/libc/sys/sysnecv850/configure                     | 4 ----
 newlib/libc/sys/sysvi386/Makefile.in                     | 1 -
 newlib/libc/sys/sysvi386/configure                       | 4 ----
 newlib/libc/sys/sysvnecv70/Makefile.in                   | 1 -
 newlib/libc/sys/sysvnecv70/configure                     | 4 ----
 newlib/libc/sys/tic80/Makefile.in                        | 1 -
 newlib/libc/sys/tic80/configure                          | 4 ----
 newlib/libc/sys/tirtos/Makefile.in                       | 1 -
 newlib/libc/sys/tirtos/configure                         | 4 ----
 newlib/libc/sys/w65/Makefile.in                          | 1 -
 newlib/libc/sys/w65/configure                            | 4 ----
 newlib/libc/sys/z8ksim/Makefile.in                       | 1 -
 newlib/libc/sys/z8ksim/configure                         | 4 ----
 newlib/libm/configure                                    | 9 +++------
 newlib/libm/machine/aarch64/Makefile.in                  | 1 -
 newlib/libm/machine/aarch64/configure                    | 4 ----
 newlib/libm/machine/arm/Makefile.in                      | 1 -
 newlib/libm/machine/arm/configure                        | 4 ----
 newlib/libm/machine/configure                            | 9 +++------
 newlib/libm/machine/i386/configure                       | 9 +++------
 newlib/libm/machine/mips/Makefile.in                     | 1 -
 newlib/libm/machine/mips/configure                       | 4 ----
 newlib/libm/machine/nds32/configure                      | 5 +----
 newlib/libm/machine/powerpc/Makefile.in                  | 1 -
 newlib/libm/machine/powerpc/configure                    | 4 ----
 newlib/libm/machine/pru/Makefile.in                      | 1 -
 newlib/libm/machine/pru/configure                        | 4 ----
 newlib/libm/machine/riscv/Makefile.in                    | 1 -
 newlib/libm/machine/riscv/configure                      | 4 ----
 newlib/libm/machine/sparc/Makefile.in                    | 1 -
 newlib/libm/machine/sparc/configure                      | 4 ----
 newlib/libm/machine/spu/Makefile.in                      | 1 -
 newlib/libm/machine/spu/configure                        | 4 ----
 newlib/libm/machine/x86_64/configure                     | 9 +++------
 newlib/testsuite/lib/newlib.exp                          | 4 ++--
 209 files changed, 53 insertions(+), 583 deletions(-)

diff --git a/newlib/acinclude.m4 b/newlib/acinclude.m4
index 1a5dc60dbbbd..755f6e1165f0 100644
--- a/newlib/acinclude.m4
+++ b/newlib/acinclude.m4
@@ -214,9 +214,6 @@ AC_SUBST(NEWLIB_CFLAGS)
 NO_INCLUDE_LIST=${noinclude}
 AC_SUBST(NO_INCLUDE_LIST)
 
-LDFLAGS=${ldflags}
-AC_SUBST(LDFLAGS)
-
 AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
 AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
 AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
diff --git a/newlib/libc/sys/phoenix/machine/Makefile.in b/newlib/libc/sys/phoenix/machine/Makefile.in
index 76b7a6545db4..8c380bc36498 100644
--- a/newlib/libc/sys/phoenix/machine/Makefile.in
+++ b/newlib/libc/sys/phoenix/machine/Makefile.in
@@ -187,7 +187,6 @@ INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LTLIBOBJS = @LTLIBOBJS@
diff --git a/newlib/libc/sys/phoenix/machine/arm/Makefile.in b/newlib/libc/sys/phoenix/machine/arm/Makefile.in
index d86ce691d312..bc9ae6e26503 100644
--- a/newlib/libc/sys/phoenix/machine/arm/Makefile.in
+++ b/newlib/libc/sys/phoenix/machine/arm/Makefile.in
@@ -202,7 +202,6 @@ INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LDFLAGS = @LDFLAGS@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LTLIBOBJS = @LTLIBOBJS@
diff --git a/newlib/testsuite/lib/newlib.exp b/newlib/testsuite/lib/newlib.exp
index f1df40e52618..8b43d2e5d3a0 100644
--- a/newlib/testsuite/lib/newlib.exp
+++ b/newlib/testsuite/lib/newlib.exp
@@ -66,13 +66,13 @@ proc newlib_target_compile { source dest type options } {
 	    [target_info needs_status_wrapper] != "0" && \
 	    [info exists gluefile] } {
 	lappend options "libs=$gluefile"
-	lappend options "ldflags=$wrap_flags"
+	lappend options "LDFLAGS=$wrap_flags"
     }
 
     if [string match $host_triplet $target_triplet] then {
 	if [string match "i686-pc-linux-gnu" $host_triplet] then {
 	    lappend options "libs=$objdir/crt0.o -lc -lgcc"
-	    lappend options "ldflags=-nostdlib -L$objdir/.libs [newlib_include_flags]"
+	    lappend options "LDFLAGS=-nostdlib -L$objdir/.libs [newlib_include_flags]"
 	}
     }
 
-- 
2.34.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags
  2022-01-21  4:51 [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags Mike Frysinger
@ 2022-01-21 11:25 ` Corinna Vinschen
  2023-04-14 21:51 ` Thomas Schwinge
  1 sibling, 0 replies; 4+ messages in thread
From: Corinna Vinschen @ 2022-01-21 11:25 UTC (permalink / raw)
  To: newlib

On Jan 20 23:51, Mike Frysinger wrote:
> It's unclear why this was added originally, but assuming it was needed
> 20 years ago, it shouldn't be explicitly required nowadays.  Current
> versions of autotools already take care of exporting LDFLAGS to the
> Makefile as needed (things are actually getting linked).  That's why
> the configure diffs show LDFLAGS still here, but shifted to a diff
> place in the output list.  A few dirs stop exporting LDFLAGS, but
> that's because they don't do any linking, only compiling, so it's
> correct.
> 
> As for the use of $ldflags instead of the standard $LDFLAGS, I can't
> really explain that at all.  Just use the right name so users don't
> have to dig into why their setting isn't respected, and then use a
> non-standard name instead.  Adjust the testsuite to match.

LGTM, thanks,
Corinna


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags
  2022-01-21  4:51 [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags Mike Frysinger
  2022-01-21 11:25 ` Corinna Vinschen
@ 2023-04-14 21:51 ` Thomas Schwinge
  2023-10-16  4:55   ` Mike Frysinger
  1 sibling, 1 reply; 4+ messages in thread
From: Thomas Schwinge @ 2023-04-14 21:51 UTC (permalink / raw)
  To: Mike Frysinger; +Cc: newlib

Hi!

On 2022-01-20T23:51:52-0500, Mike Frysinger <vapier@gentoo.org> wrote:
> It's unclear why this was added originally, but assuming it was needed
> 20 years ago, it shouldn't be explicitly required nowadays.  Current
> versions of autotools already take care of exporting LDFLAGS to the
> Makefile as needed (things are actually getting linked).  That's why
> the configure diffs show LDFLAGS still here, but shifted to a diff
> place in the output list.  A few dirs stop exporting LDFLAGS, but
> that's because they don't do any linking, only compiling, so it's
> correct.
>
> As for the use of $ldflags instead of the standard $LDFLAGS, I can't
> really explain that at all.  Just use the right name so users don't
> have to dig into why their setting isn't respected, and then use a
> non-standard name instead.

I can't comment on all that off-hand, but this change here:

> Adjust the testsuite to match.

> --- a/newlib/testsuite/lib/newlib.exp
> +++ b/newlib/testsuite/lib/newlib.exp
> @@ -66,13 +66,13 @@ proc newlib_target_compile { source dest type options } {
>           [target_info needs_status_wrapper] != "0" && \
>           [info exists gluefile] } {
>       lappend options "libs=$gluefile"
> -     lappend options "ldflags=$wrap_flags"
> +     lappend options "LDFLAGS=$wrap_flags"
>      }
>
>      if [string match $host_triplet $target_triplet] then {
>       if [string match "i686-pc-linux-gnu" $host_triplet] then {
>           lappend options "libs=$objdir/crt0.o -lc -lgcc"
> -         lappend options "ldflags=-nostdlib -L$objdir/.libs [newlib_include_flags]"
> +         lappend options "LDFLAGS=-nostdlib -L$objdir/.libs [newlib_include_flags]"
>       }
>      }

..., is that really correct?  As far as I know, DejaGnu only looks for
the lower-case 'ldflags' in 'options', as documented in
'[...]/share/dejagnu/target.exp'.  (I just noticed this while looking for
something else; I don't have any toolchains exercising the code paths
you've changed.)


Grüße
 Thomas


>  newlib/acinclude.m4                                      | 3 ---
>  newlib/configure                                         | 9 +++------
>  newlib/iconvdata/configure                               | 9 +++------
>  newlib/libc/configure                                    | 9 +++------
>  newlib/libc/machine/a29k/Makefile.in                     | 1 -
>  newlib/libc/machine/a29k/configure                       | 4 ----
>  newlib/libc/machine/aarch64/Makefile.in                  | 1 -
>  newlib/libc/machine/aarch64/configure                    | 4 ----
>  newlib/libc/machine/amdgcn/Makefile.in                   | 1 -
>  newlib/libc/machine/amdgcn/configure                     | 4 ----
>  newlib/libc/machine/arc/Makefile.in                      | 1 -
>  newlib/libc/machine/arc/configure                        | 4 ----
>  newlib/libc/machine/arm/Makefile.in                      | 1 -
>  newlib/libc/machine/arm/configure                        | 4 ----
>  newlib/libc/machine/bfin/Makefile.in                     | 1 -
>  newlib/libc/machine/bfin/configure                       | 4 ----
>  newlib/libc/machine/configure                            | 9 +++------
>  newlib/libc/machine/cr16/Makefile.in                     | 1 -
>  newlib/libc/machine/cr16/configure                       | 4 ----
>  newlib/libc/machine/cris/Makefile.in                     | 1 -
>  newlib/libc/machine/cris/configure                       | 4 ----
>  newlib/libc/machine/crx/Makefile.in                      | 1 -
>  newlib/libc/machine/crx/configure                        | 4 ----
>  newlib/libc/machine/csky/Makefile.in                     | 1 -
>  newlib/libc/machine/csky/configure                       | 4 ----
>  newlib/libc/machine/d10v/Makefile.in                     | 1 -
>  newlib/libc/machine/d10v/configure                       | 4 ----
>  newlib/libc/machine/d30v/Makefile.in                     | 1 -
>  newlib/libc/machine/d30v/configure                       | 4 ----
>  newlib/libc/machine/epiphany/Makefile.in                 | 1 -
>  newlib/libc/machine/epiphany/configure                   | 4 ----
>  newlib/libc/machine/fr30/Makefile.in                     | 1 -
>  newlib/libc/machine/fr30/configure                       | 4 ----
>  newlib/libc/machine/frv/Makefile.in                      | 1 -
>  newlib/libc/machine/frv/configure                        | 4 ----
>  newlib/libc/machine/ft32/Makefile.in                     | 1 -
>  newlib/libc/machine/ft32/configure                       | 4 ----
>  newlib/libc/machine/h8300/Makefile.in                    | 1 -
>  newlib/libc/machine/h8300/configure                      | 4 ----
>  newlib/libc/machine/h8500/Makefile.in                    | 1 -
>  newlib/libc/machine/h8500/configure                      | 4 ----
>  newlib/libc/machine/hppa/Makefile.in                     | 1 -
>  newlib/libc/machine/hppa/configure                       | 4 ----
>  newlib/libc/machine/i386/configure                       | 9 +++------
>  newlib/libc/machine/i960/Makefile.in                     | 1 -
>  newlib/libc/machine/i960/configure                       | 4 ----
>  newlib/libc/machine/iq2000/Makefile.in                   | 1 -
>  newlib/libc/machine/iq2000/configure                     | 4 ----
>  newlib/libc/machine/lm32/Makefile.in                     | 1 -
>  newlib/libc/machine/lm32/configure                       | 4 ----
>  newlib/libc/machine/m32c/Makefile.in                     | 1 -
>  newlib/libc/machine/m32c/configure                       | 4 ----
>  newlib/libc/machine/m32r/Makefile.in                     | 1 -
>  newlib/libc/machine/m32r/configure                       | 4 ----
>  newlib/libc/machine/m68hc11/Makefile.in                  | 1 -
>  newlib/libc/machine/m68hc11/configure                    | 4 ----
>  newlib/libc/machine/m68k/Makefile.in                     | 1 -
>  newlib/libc/machine/m68k/configure                       | 4 ----
>  newlib/libc/machine/m88k/Makefile.in                     | 1 -
>  newlib/libc/machine/m88k/configure                       | 4 ----
>  newlib/libc/machine/mep/Makefile.in                      | 1 -
>  newlib/libc/machine/mep/configure                        | 4 ----
>  newlib/libc/machine/microblaze/Makefile.in               | 1 -
>  newlib/libc/machine/microblaze/configure                 | 4 ----
>  newlib/libc/machine/mips/Makefile.in                     | 1 -
>  newlib/libc/machine/mips/configure                       | 4 ----
>  newlib/libc/machine/mn10200/Makefile.in                  | 1 -
>  newlib/libc/machine/mn10200/configure                    | 4 ----
>  newlib/libc/machine/mn10300/Makefile.in                  | 1 -
>  newlib/libc/machine/mn10300/configure                    | 4 ----
>  newlib/libc/machine/moxie/Makefile.in                    | 1 -
>  newlib/libc/machine/moxie/configure                      | 4 ----
>  newlib/libc/machine/msp430/Makefile.in                   | 1 -
>  newlib/libc/machine/msp430/configure                     | 4 ----
>  newlib/libc/machine/mt/Makefile.in                       | 1 -
>  newlib/libc/machine/mt/configure                         | 4 ----
>  newlib/libc/machine/nds32/configure                      | 5 +----
>  newlib/libc/machine/necv70/Makefile.in                   | 1 -
>  newlib/libc/machine/necv70/configure                     | 4 ----
>  newlib/libc/machine/nios2/Makefile.in                    | 1 -
>  newlib/libc/machine/nios2/configure                      | 4 ----
>  newlib/libc/machine/nvptx/Makefile.in                    | 1 -
>  newlib/libc/machine/nvptx/configure                      | 4 ----
>  newlib/libc/machine/or1k/Makefile.in                     | 1 -
>  newlib/libc/machine/or1k/configure                       | 4 ----
>  newlib/libc/machine/powerpc/Makefile.in                  | 1 -
>  newlib/libc/machine/powerpc/configure                    | 4 ----
>  newlib/libc/machine/pru/Makefile.in                      | 1 -
>  newlib/libc/machine/pru/configure                        | 4 ----
>  newlib/libc/machine/riscv/Makefile.in                    | 1 -
>  newlib/libc/machine/riscv/configure                      | 4 ----
>  newlib/libc/machine/rl78/Makefile.in                     | 1 -
>  newlib/libc/machine/rl78/configure                       | 4 ----
>  newlib/libc/machine/rx/Makefile.in                       | 1 -
>  newlib/libc/machine/rx/configure                         | 4 ----
>  newlib/libc/machine/sh/configure                         | 5 +----
>  newlib/libc/machine/sparc/Makefile.in                    | 1 -
>  newlib/libc/machine/sparc/configure                      | 4 ----
>  newlib/libc/machine/spu/Makefile.in                      | 1 -
>  newlib/libc/machine/spu/configure                        | 4 ----
>  newlib/libc/machine/tic4x/Makefile.in                    | 1 -
>  newlib/libc/machine/tic4x/configure                      | 4 ----
>  newlib/libc/machine/tic6x/Makefile.in                    | 1 -
>  newlib/libc/machine/tic6x/configure                      | 4 ----
>  newlib/libc/machine/tic80/Makefile.in                    | 1 -
>  newlib/libc/machine/tic80/configure                      | 4 ----
>  newlib/libc/machine/v850/Makefile.in                     | 1 -
>  newlib/libc/machine/v850/configure                       | 4 ----
>  newlib/libc/machine/visium/Makefile.in                   | 1 -
>  newlib/libc/machine/visium/configure                     | 4 ----
>  newlib/libc/machine/w65/Makefile.in                      | 1 -
>  newlib/libc/machine/w65/configure                        | 4 ----
>  newlib/libc/machine/x86_64/Makefile.in                   | 1 -
>  newlib/libc/machine/x86_64/configure                     | 4 ----
>  newlib/libc/machine/xc16x/Makefile.in                    | 1 -
>  newlib/libc/machine/xc16x/configure                      | 4 ----
>  newlib/libc/machine/xscale/Makefile.in                   | 1 -
>  newlib/libc/machine/xscale/configure                     | 4 ----
>  newlib/libc/machine/xstormy16/Makefile.in                | 1 -
>  newlib/libc/machine/xstormy16/configure                  | 4 ----
>  newlib/libc/machine/z8k/Makefile.in                      | 1 -
>  newlib/libc/machine/z8k/configure                        | 4 ----
>  newlib/libc/sys/a29khif/Makefile.in                      | 1 -
>  newlib/libc/sys/a29khif/configure                        | 4 ----
>  newlib/libc/sys/amdgcn/Makefile.in                       | 1 -
>  newlib/libc/sys/amdgcn/configure                         | 4 ----
>  newlib/libc/sys/arm/Makefile.in                          | 1 -
>  newlib/libc/sys/arm/configure                            | 4 ----
>  newlib/libc/sys/configure                                | 9 +++------
>  newlib/libc/sys/d10v/Makefile.in                         | 1 -
>  newlib/libc/sys/d10v/configure                           | 4 ----
>  newlib/libc/sys/decstation/Makefile.in                   | 1 -
>  newlib/libc/sys/decstation/configure                     | 4 ----
>  newlib/libc/sys/epiphany/Makefile.in                     | 1 -
>  newlib/libc/sys/epiphany/configure                       | 4 ----
>  newlib/libc/sys/h8300hms/Makefile.in                     | 1 -
>  newlib/libc/sys/h8300hms/configure                       | 4 ----
>  newlib/libc/sys/h8500hms/Makefile.in                     | 1 -
>  newlib/libc/sys/h8500hms/configure                       | 4 ----
>  newlib/libc/sys/linux/configure                          | 9 +++------
>  newlib/libc/sys/linux/linuxthreads/configure             | 9 +++------
>  newlib/libc/sys/linux/linuxthreads/machine/configure     | 9 +++------
>  .../libc/sys/linux/linuxthreads/machine/i386/configure   | 9 +++------
>  newlib/libc/sys/linux/machine/configure                  | 9 +++------
>  newlib/libc/sys/linux/machine/i386/configure             | 9 +++------
>  newlib/libc/sys/m88kbug/Makefile.in                      | 1 -
>  newlib/libc/sys/m88kbug/configure                        | 4 ----
>  newlib/libc/sys/mmixware/Makefile.in                     | 1 -
>  newlib/libc/sys/mmixware/configure                       | 4 ----
>  newlib/libc/sys/netware/Makefile.in                      | 1 -
>  newlib/libc/sys/netware/configure                        | 4 ----
>  newlib/libc/sys/or1k/Makefile.in                         | 1 -
>  newlib/libc/sys/or1k/configure                           | 4 ----
>  newlib/libc/sys/phoenix/Makefile.in                      | 1 -
>  newlib/libc/sys/phoenix/configure                        | 4 ----
>  newlib/libc/sys/phoenix/machine/Makefile.in              | 1 -
>  newlib/libc/sys/phoenix/machine/arm/Makefile.in          | 1 -
>  newlib/libc/sys/phoenix/machine/arm/configure            | 4 ----
>  newlib/libc/sys/phoenix/machine/configure                | 4 ----
>  newlib/libc/sys/rdos/Makefile.in                         | 1 -
>  newlib/libc/sys/rdos/configure                           | 4 ----
>  newlib/libc/sys/rtems/Makefile.in                        | 1 -
>  newlib/libc/sys/rtems/configure                          | 4 ----
>  newlib/libc/sys/sh/Makefile.in                           | 1 -
>  newlib/libc/sys/sh/configure                             | 4 ----
>  newlib/libc/sys/sparc64/Makefile.in                      | 1 -
>  newlib/libc/sys/sparc64/configure                        | 4 ----
>  newlib/libc/sys/sun4/Makefile.in                         | 1 -
>  newlib/libc/sys/sun4/configure                           | 4 ----
>  newlib/libc/sys/sysmec/Makefile.in                       | 1 -
>  newlib/libc/sys/sysmec/configure                         | 4 ----
>  newlib/libc/sys/sysnec810/Makefile.in                    | 1 -
>  newlib/libc/sys/sysnec810/configure                      | 4 ----
>  newlib/libc/sys/sysnecv850/Makefile.in                   | 1 -
>  newlib/libc/sys/sysnecv850/configure                     | 4 ----
>  newlib/libc/sys/sysvi386/Makefile.in                     | 1 -
>  newlib/libc/sys/sysvi386/configure                       | 4 ----
>  newlib/libc/sys/sysvnecv70/Makefile.in                   | 1 -
>  newlib/libc/sys/sysvnecv70/configure                     | 4 ----
>  newlib/libc/sys/tic80/Makefile.in                        | 1 -
>  newlib/libc/sys/tic80/configure                          | 4 ----
>  newlib/libc/sys/tirtos/Makefile.in                       | 1 -
>  newlib/libc/sys/tirtos/configure                         | 4 ----
>  newlib/libc/sys/w65/Makefile.in                          | 1 -
>  newlib/libc/sys/w65/configure                            | 4 ----
>  newlib/libc/sys/z8ksim/Makefile.in                       | 1 -
>  newlib/libc/sys/z8ksim/configure                         | 4 ----
>  newlib/libm/configure                                    | 9 +++------
>  newlib/libm/machine/aarch64/Makefile.in                  | 1 -
>  newlib/libm/machine/aarch64/configure                    | 4 ----
>  newlib/libm/machine/arm/Makefile.in                      | 1 -
>  newlib/libm/machine/arm/configure                        | 4 ----
>  newlib/libm/machine/configure                            | 9 +++------
>  newlib/libm/machine/i386/configure                       | 9 +++------
>  newlib/libm/machine/mips/Makefile.in                     | 1 -
>  newlib/libm/machine/mips/configure                       | 4 ----
>  newlib/libm/machine/nds32/configure                      | 5 +----
>  newlib/libm/machine/powerpc/Makefile.in                  | 1 -
>  newlib/libm/machine/powerpc/configure                    | 4 ----
>  newlib/libm/machine/pru/Makefile.in                      | 1 -
>  newlib/libm/machine/pru/configure                        | 4 ----
>  newlib/libm/machine/riscv/Makefile.in                    | 1 -
>  newlib/libm/machine/riscv/configure                      | 4 ----
>  newlib/libm/machine/sparc/Makefile.in                    | 1 -
>  newlib/libm/machine/sparc/configure                      | 4 ----
>  newlib/libm/machine/spu/Makefile.in                      | 1 -
>  newlib/libm/machine/spu/configure                        | 4 ----
>  newlib/libm/machine/x86_64/configure                     | 9 +++------
>  newlib/testsuite/lib/newlib.exp                          | 4 ++--
>  209 files changed, 53 insertions(+), 583 deletions(-)
>
> diff --git a/newlib/acinclude.m4 b/newlib/acinclude.m4
> index 1a5dc60dbbbd..755f6e1165f0 100644
> --- a/newlib/acinclude.m4
> +++ b/newlib/acinclude.m4
> @@ -214,9 +214,6 @@ AC_SUBST(NEWLIB_CFLAGS)
>  NO_INCLUDE_LIST=${noinclude}
>  AC_SUBST(NO_INCLUDE_LIST)
>
> -LDFLAGS=${ldflags}
> -AC_SUBST(LDFLAGS)
> -
>  AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
>  AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
>  AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
> diff --git a/newlib/libc/sys/phoenix/machine/Makefile.in b/newlib/libc/sys/phoenix/machine/Makefile.in
> index 76b7a6545db4..8c380bc36498 100644
> --- a/newlib/libc/sys/phoenix/machine/Makefile.in
> +++ b/newlib/libc/sys/phoenix/machine/Makefile.in
> @@ -187,7 +187,6 @@ INSTALL_DATA = @INSTALL_DATA@
>  INSTALL_PROGRAM = @INSTALL_PROGRAM@
>  INSTALL_SCRIPT = @INSTALL_SCRIPT@
>  INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
> -LDFLAGS = @LDFLAGS@
>  LIBOBJS = @LIBOBJS@
>  LIBS = @LIBS@
>  LTLIBOBJS = @LTLIBOBJS@
> diff --git a/newlib/libc/sys/phoenix/machine/arm/Makefile.in b/newlib/libc/sys/phoenix/machine/arm/Makefile.in
> index d86ce691d312..bc9ae6e26503 100644
> --- a/newlib/libc/sys/phoenix/machine/arm/Makefile.in
> +++ b/newlib/libc/sys/phoenix/machine/arm/Makefile.in
> @@ -202,7 +202,6 @@ INSTALL_DATA = @INSTALL_DATA@
>  INSTALL_PROGRAM = @INSTALL_PROGRAM@
>  INSTALL_SCRIPT = @INSTALL_SCRIPT@
>  INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
> -LDFLAGS = @LDFLAGS@
>  LIBOBJS = @LIBOBJS@
>  LIBS = @LIBS@
>  LTLIBOBJS = @LTLIBOBJS@
> diff --git a/newlib/testsuite/lib/newlib.exp b/newlib/testsuite/lib/newlib.exp
> index f1df40e52618..8b43d2e5d3a0 100644
> --- a/newlib/testsuite/lib/newlib.exp
> +++ b/newlib/testsuite/lib/newlib.exp
> @@ -66,13 +66,13 @@ proc newlib_target_compile { source dest type options } {
>           [target_info needs_status_wrapper] != "0" && \
>           [info exists gluefile] } {
>       lappend options "libs=$gluefile"
> -     lappend options "ldflags=$wrap_flags"
> +     lappend options "LDFLAGS=$wrap_flags"
>      }
>
>      if [string match $host_triplet $target_triplet] then {
>       if [string match "i686-pc-linux-gnu" $host_triplet] then {
>           lappend options "libs=$objdir/crt0.o -lc -lgcc"
> -         lappend options "ldflags=-nostdlib -L$objdir/.libs [newlib_include_flags]"
> +         lappend options "LDFLAGS=-nostdlib -L$objdir/.libs [newlib_include_flags]"
>       }
>      }
>
> --
> 2.34.1
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags
  2023-04-14 21:51 ` Thomas Schwinge
@ 2023-10-16  4:55   ` Mike Frysinger
  0 siblings, 0 replies; 4+ messages in thread
From: Mike Frysinger @ 2023-10-16  4:55 UTC (permalink / raw)
  To: Thomas Schwinge; +Cc: newlib

[-- Attachment #1: Type: text/plain, Size: 1517 bytes --]

On 14 Apr 2023 23:51, Thomas Schwinge wrote:
> On 2022-01-20T23:51:52-0500, Mike Frysinger <vapier@gentoo.org> wrote:
> > Adjust the testsuite to match.
> 
> > --- a/newlib/testsuite/lib/newlib.exp
> > +++ b/newlib/testsuite/lib/newlib.exp
> > @@ -66,13 +66,13 @@ proc newlib_target_compile { source dest type options } {
> >           [target_info needs_status_wrapper] != "0" && \
> >           [info exists gluefile] } {
> >       lappend options "libs=$gluefile"
> > -     lappend options "ldflags=$wrap_flags"
> > +     lappend options "LDFLAGS=$wrap_flags"
> >      }
> >
> >      if [string match $host_triplet $target_triplet] then {
> >       if [string match "i686-pc-linux-gnu" $host_triplet] then {
> >           lappend options "libs=$objdir/crt0.o -lc -lgcc"
> > -         lappend options "ldflags=-nostdlib -L$objdir/.libs [newlib_include_flags]"
> > +         lappend options "LDFLAGS=-nostdlib -L$objdir/.libs [newlib_include_flags]"
> >       }
> >      }
> 
> ..., is that really correct?  As far as I know, DejaGnu only looks for
> the lower-case 'ldflags' in 'options', as documented in
> '[...]/share/dejagnu/target.exp'.  (I just noticed this while looking for
> something else; I don't have any toolchains exercising the code paths
> you've changed.)

tbh, i'm not sure.  i tried running the testsuite a few ways, but doesn't
seem to really work :/.

would be nice if these worked out of the box better.  maybe with the GNU
sim by default or something.
-mike

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-10-16  4:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-21  4:51 [PATCH] newlib: stop clobbering LDFLAGS with non-standard $ldflags Mike Frysinger
2022-01-21 11:25 ` Corinna Vinschen
2023-04-14 21:51 ` Thomas Schwinge
2023-10-16  4:55   ` Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).