toolchain: add hidden BR2_TOOLCHAIN_HAS_SSP_STRONG boolean
authorThomas Petazzoni <thomas.petazzoni@bootlin.com>
Thu, 20 Feb 2020 02:01:14 +0000 (03:01 +0100)
committerYann E. MORIN <yann.morin.1998@free.fr>
Thu, 20 Feb 2020 21:58:02 +0000 (22:58 +0100)
This will allow toolchain to indicate if they support
-fstack-protector-strong or not.

Whenever the gcc version is >= 4.9, we always have SSP_STRONG support
if we have SSP support. However, some toolchains older than gcc 4.9
might have backported SSP_STRONG support, which is why we cannot rely
just on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9.

Having this "default" value allows to avoid adding a "select
BR2_TOOLCHAIN_HAS_SSP_STRONG" in the internal toolchain logic plus in
almost external toolchains. But it allows custom external toolchains
that are pre-4.9 to potentially declare that they support strong SSP.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
toolchain/Config.in

index 973c03254fb55c03f18f8fd6fb73c4e51e95252f..87509f3d644b43b10bc5cff6d4ffef1f18cf930f 100644 (file)
@@ -189,6 +189,10 @@ config BR2_TOOLCHAIN_HAS_THREADS_NPTL
 config BR2_TOOLCHAIN_HAS_SSP
        bool
 
+config BR2_TOOLCHAIN_HAS_SSP_STRONG
+       bool
+       default y if BR2_TOOLCHAIN_HAS_SSP && BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+
 config BR2_TOOLCHAIN_HAS_UCONTEXT
        bool