[11/16] Enable -fstack-protector=* when requested by configure.
Commit Message
From: Nick Alcock <nick.alcock@oracle.com>
This finally turns on all the machinery added in previous commits.
v3: Wrap long lines.
---
Makeconfig | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
Comments
Nix <nix@esperi.org.uk> writes:
> +# We might want to compile with some stack-protection flag.
> +ifneq ($(stack-protector),)
> ++stack-protector=$(stack-protector)
> +endif
Why do you need that indirection?
Andreas.
On 28 Feb 2016, Andreas Schwab outgrape:
> Nix <nix@esperi.org.uk> writes:
>
>> +# We might want to compile with some stack-protection flag.
>> +ifneq ($(stack-protector),)
>> ++stack-protector=$(stack-protector)
>> +endif
>
> Why do you need that indirection?
For consistency: almost everything else added to +cflags has a
similarly-prepended name (even when it's always set to a literal
constant: e.g +merge-constants and +math-flags).
I'm happy to drop it if people think it's redundant: it's not like
$(+stack-protector) is used anywhere else.
@@ -762,6 +762,11 @@ endif
# disable any optimization that assume default rounding mode.
+math-flags = -frounding-math
+# We might want to compile with some stack-protection flag.
+ifneq ($(stack-protector),)
++stack-protector=$(stack-protector)
+endif
+
# This is the program that generates makefile dependencies from C source files.
# The -MP flag tells GCC >= 3.2 (which we now require) to produce dummy
# targets for headers so that removed headers don't break the build.
@@ -821,7 +826,8 @@ ifeq "$(strip $(+cflags))" ""
+cflags := $(default_cflags)
endif # $(+cflags) == ""
-+cflags += $(cflags-cpu) $(+gccwarn) $(+merge-constants) $(+math-flags)
++cflags += $(cflags-cpu) $(+gccwarn) $(+merge-constants) $(+math-flags) \
+ $(+stack-protector)
+gcc-nowarn := -w
# Don't duplicate options if we inherited variables from the parent.