Add a feature check that checks that the gcc compiler has stack-protector support and has the bugfix for PR28281 to make this work in kernel mode. The easiest solution I could find was to have a shell script in scripts/ to do the detection; if needed we can make this fancier in the future without making the makefile too complex.
Showing the changes to scripts (1 of 2 files). Show all
Unified · Split
| @@ -0,0 +1,6 @@ | ||
| 1 | +#!/bin/sh | |
| 2 | + | |
| 3 | +echo "int foo(void) { char X[200]; return 3; }" | $1 -S -xc -c -O0 -mcmodel=kernel -fstack-protector - -o - 2> /dev/null | grep -q "%gs" | |
| 4 | +if [ "$?" -eq "0" ] ; then | |
| 5 | + echo $2 | |
| 6 | +fi | |