toolchain/toolchain-external/toolchain-external-custom: add option to indicate SSP_ST...
authorThomas Petazzoni <thomas.petazzoni@bootlin.com>
Thu, 20 Feb 2020 02:01:15 +0000 (03:01 +0100)
committerYann E. MORIN <yann.morin.1998@free.fr>
Thu, 20 Feb 2020 21:58:03 +0000 (22:58 +0100)
This commit adds a user-visible option
BR2_TOOLCHAIN_EXTERNAL_HAS_SSP_STRONG, which will allow the user to
indicate if the custom external toolchain does or does not have
SSP_STRONG support. Depending on this, the user will be able to use
(or not) the BR2_SSP_STRONG option.

Checking if what the user said is true or not about this is already
done in toolchain/toolchain-external/pkg-toolchain-external.mk:

        $$(Q)$$(call check_toolchain_ssp,$$(TOOLCHAIN_EXTERNAL_CC),$(BR2_SSP_OPTION))

If the user selects BR2_SSP_STRONG, this will check if
-fstack-protector-strong is really supported.

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

index 302f6babac6d0560e5a208a73459a1548dde7602..c8cd2c03ccf8b42504eae51035e3806e665be9db 100644 (file)
@@ -410,6 +410,18 @@ config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
          leave the default value, Buildroot will tell you if it's
          correct or not.
 
+config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP_STRONG
+       bool "Toolchain has SSP strong support?"
+       default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 && BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       default y if BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 && BR2_TOOLCHAIN_EXTERNAL_MUSL
+       depends on BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
+       select BR2_TOOLCHAIN_HAS_SSP_STRONG
+       help
+         Selection this option if your external toolchain has strong
+         Stack Smashing Protection support enabled. If you don't
+         know, leave the default value, Buildroot will tell you if
+         it's correct or not.
+
 config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
        bool "Toolchain has RPC support?"
        default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC