Disable smash stacking support by default, but allow to enable it as an experimental...
authorFlorian Fainelli <florian@openwrt.org>
Wed, 30 Jul 2008 12:54:28 +0000 (12:54 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Wed, 30 Jul 2008 12:54:28 +0000 (12:54 +0000)
SVN-Revision: 12010

package/base-files/Makefile
toolchain/gcc/Config.in
toolchain/gcc/Makefile

index 5ab776d..f4ef55d 100644 (file)
@@ -78,6 +78,7 @@ endef
 
 define Package/libssp
 $(call Package/gcc/Default)
+  DEPENDS:=@SSP_SUPPORT
   TITLE:=GCC support library
 endef
 
index e712d59..24b8608 100644 (file)
@@ -53,6 +53,13 @@ config EXTRA_GCC_CONFIG_OPTIONS
        help
            Any additional gcc options you may want to include....
 
+config SSP_SUPPORT
+       bool
+       prompt "Enable Smash Stacking Protection support" if TOOLCHAINOPTS
+       default n
+       help
+           Enable Smash Stacking Protection support
+
 config INSTALL_LIBSTDCPP
        bool
        prompt "Build/install c++ compiler and libstdc++?" if TOOLCHAINOPTS
index 3169798..700463c 100644 (file)
@@ -40,6 +40,12 @@ BUILD_DIR2:=$(BUILD_DIR_HOST)/gcc-$(PKG_VERSION)-final
 SEP:=,
 TARGET_LANGUAGES:="c$(if $(CONFIG_INSTALL_LIBSTDCPP),$(SEP)c++)$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)"
 
+ifeq ($(CONFIG_SSP_SUPPORT),y)
+  SSP:=--enable-ssp
+else
+  SSP:=--disable-ssp
+endif
+
 EXTRA_TARGET=$(if $(CONFIG_EXTRA_TARGET_ARCH),--enable-biarch --enable-targets=$(call qstrip,$(CONFIG_EXTRA_TARGET_ARCH_NAME))-linux-uclibc)
 
 define Stage1/Configure
@@ -62,6 +68,7 @@ define Stage1/Configure
                --disable-nls \
                --disable-libmudflap \
                --disable-multilib \
+               $(SSP) \
                $(EXTRA_TARGET) \
                $(SOFT_FLOAT_CONFIG_OPTION) \
                $(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \
@@ -96,6 +103,7 @@ define Stage2/Configure
                --disable-nls \
                --disable-libmudflap \
                --disable-multilib \
+               $(SSP) \
                $(EXTRA_TARGET) \
                $(SOFT_FLOAT_CONFIG_OPTION) \
                $(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \