|
Lines 126-132
int main(void){char b[10]; memset(b, 0,
Link Here
|
| 126 |
|
126 |
|
| 127 |
# -fstack-protector-all doesn't always work for some GCC versions |
127 |
# -fstack-protector-all doesn't always work for some GCC versions |
| 128 |
# and/or platforms, so we test if we can. If it's not supported |
128 |
# and/or platforms, so we test if we can. If it's not supported |
| 129 |
# on a give platform gcc will emit a warning so we use -Werror. |
129 |
# on a given platform gcc will emit a warning so we use -Werror. |
| 130 |
if test "x$use_stack_protector" = "x1"; then |
130 |
if test "x$use_stack_protector" = "x1"; then |
| 131 |
for t in -fstack-protector-all -fstack-protector; do |
131 |
for t in -fstack-protector-all -fstack-protector; do |
| 132 |
AC_MSG_CHECKING(if $CC supports $t) |
132 |
AC_MSG_CHECKING(if $CC supports $t) |
|
Lines 136-143
int main(void){char b[10]; memset(b, 0,
Link Here
|
| 136 |
LDFLAGS="$LDFLAGS $t -Werror" |
136 |
LDFLAGS="$LDFLAGS $t -Werror" |
| 137 |
AC_LINK_IFELSE( |
137 |
AC_LINK_IFELSE( |
| 138 |
[AC_LANG_SOURCE([ |
138 |
[AC_LANG_SOURCE([ |
| 139 |
#include <stdlib.h> |
139 |
#include <stdio.h> |
| 140 |
int main(void){return 0;} |
140 |
int main(void){char x[[256]]; snprintf(x, sizeof(x), "XXX"); return 0;} |
| 141 |
])], |
141 |
])], |
| 142 |
[ AC_MSG_RESULT(yes) |
142 |
[ AC_MSG_RESULT(yes) |
| 143 |
CFLAGS="$saved_CFLAGS $t" |
143 |
CFLAGS="$saved_CFLAGS $t" |
|
Lines 145-152
int main(void){return 0;}
Link Here
|
| 145 |
AC_MSG_CHECKING(if $t works) |
145 |
AC_MSG_CHECKING(if $t works) |
| 146 |
AC_RUN_IFELSE( |
146 |
AC_RUN_IFELSE( |
| 147 |
[AC_LANG_SOURCE([ |
147 |
[AC_LANG_SOURCE([ |
| 148 |
#include <stdlib.h> |
148 |
#include <stdio.h> |
| 149 |
int main(void){exit(0);} |
149 |
int main(void){char x[[256]]; snprintf(x, sizeof(x), "XXX"); return 0;} |
| 150 |
])], |
150 |
])], |
| 151 |
[ AC_MSG_RESULT(yes) |
151 |
[ AC_MSG_RESULT(yes) |
| 152 |
break ], |
152 |
break ], |