c5866be0ad
This commit refactors how Stack Smashing Protection support is handled in Buildroot: *) It turns the BR2_TOOLCHAIN_BUILDROOT_USE_SSP option into an option that only enables the SSP support in uClibc, when using the internal toolchain backend. *) It adds an hidden BR2_TOOLCHAIN_HAS_SSP option that gets enabled when the toolchain has SSP support. Here we have the usual dance: glibc/eglibc in internal/external backend always select this option, in the case of uClibc/internal, it gets selected when BR2_TOOLCHAIN_BUILDROOT_USE_SSP is enabled, in the case of uClibc/external, there is a new configuration option that the user must select (or not) depending on whether the toolchain has SSP support. *) It adds a new options BR2_ENABLE_SSP in the "Build options" menu, to enable the usage of SSP support, by adding -fstack-protector-all to the CFLAGS. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
24 lines
713 B
Makefile
24 lines
713 B
Makefile
################################################################################
|
|
#
|
|
# psmisc
|
|
#
|
|
################################################################################
|
|
|
|
PSMISC_VERSION = 22.20
|
|
PSMISC_SITE = http://downloads.sourceforge.net/project/psmisc/psmisc
|
|
PSMISC_LICENSE = GPLv2
|
|
PSMISC_LICENSE_FILES = COPYING
|
|
PSMISC_DEPENDENCIES = ncurses $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),gettext)
|
|
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_SSP),)
|
|
# Don't force -fstack-protector when SSP is not available in toolchain
|
|
PSMISC_CONF_OPT = --disable-harden-flags
|
|
endif
|
|
|
|
# build after busybox, we prefer fat versions while we're at it
|
|
ifeq ($(BR2_PACKAGE_BUSYBOX),y)
|
|
PSMISC_DEPENDENCIES += busybox
|
|
endif
|
|
|
|
$(eval $(autotools-package))
|