diff mbox series

build: unbreak bootstrap on uclinux targets [PR112762]

Message ID 20231205184929.76195-1-polacek@redhat.com
State New
Headers show
Series build: unbreak bootstrap on uclinux targets [PR112762] | expand

Commit Message

Marek Polacek Dec. 5, 2023, 6:49 p.m. UTC
Tested with .../configure --target=c6x-uclinux [...] && make all-gcc,
ok for trunk?

-- >8 --
Currently, cross-compiling with --target=c6x-uclinux (and several other)
fails due to:

../../src/gcc/config/linux.h:221:45: error: 'linux_fortify_source_default_level' was not declared in this scope
 #define TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL linux_fortify_source_default_level

In the PR Andrew mentions that another fix would be in config.gcc,
but really, here I meant to use the target hook for glibc only, not
uclibc.  This trivial patch fixes the build problem.  It means that
-fhardened with uclibc will use -D_FORTIFY_SOURCE=2 and not =3.

	PR target/112762

gcc/ChangeLog:

	* config/linux.h: Redefine TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL for
	glibc only.
---
 gcc/config/linux.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


base-commit: 9c3a880feecf81c310b4ade210fbd7004c9aece7

Comments

Richard Biener Dec. 6, 2023, 8:01 a.m. UTC | #1
On Tue, Dec 5, 2023 at 7:50 PM Marek Polacek <polacek@redhat.com> wrote:
>
> Tested with .../configure --target=c6x-uclinux [...] && make all-gcc,
> ok for trunk?

OK

> -- >8 --
> Currently, cross-compiling with --target=c6x-uclinux (and several other)
> fails due to:
>
> ../../src/gcc/config/linux.h:221:45: error: 'linux_fortify_source_default_level' was not declared in this scope
>  #define TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL linux_fortify_source_default_level
>
> In the PR Andrew mentions that another fix would be in config.gcc,
> but really, here I meant to use the target hook for glibc only, not
> uclibc.  This trivial patch fixes the build problem.  It means that
> -fhardened with uclibc will use -D_FORTIFY_SOURCE=2 and not =3.
>
>         PR target/112762
>
> gcc/ChangeLog:
>
>         * config/linux.h: Redefine TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL for
>         glibc only.
> ---
>  gcc/config/linux.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/config/linux.h b/gcc/config/linux.h
> index 79b6537dcf1..73f39d3c603 100644
> --- a/gcc/config/linux.h
> +++ b/gcc/config/linux.h
> @@ -215,7 +215,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
>  # undef TARGET_LIBM_FUNCTION_MAX_ERROR
>  # define TARGET_LIBM_FUNCTION_MAX_ERROR linux_libm_function_max_error
>
> -#endif
> -
>  #undef TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL
>  #define TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL linux_fortify_source_default_level
> +
> +#endif
>
> base-commit: 9c3a880feecf81c310b4ade210fbd7004c9aece7
> --
> 2.43.0
>
diff mbox series

Patch

diff --git a/gcc/config/linux.h b/gcc/config/linux.h
index 79b6537dcf1..73f39d3c603 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
@@ -215,7 +215,7 @@  see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 # undef TARGET_LIBM_FUNCTION_MAX_ERROR
 # define TARGET_LIBM_FUNCTION_MAX_ERROR linux_libm_function_max_error
 
-#endif
-
 #undef TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL
 #define TARGET_FORTIFY_SOURCE_DEFAULT_LEVEL linux_fortify_source_default_level
+
+#endif