summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2011-01-05 19:10:12 +0000
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2011-01-05 19:10:12 +0000
commitd83d74dc6833d127032dc18b1b1aac27cb974015 (patch)
tree684e8f7725fc3a22816856bd8c72551a220a0c98 /configure.in
parent916620ea96904ac88503f4b4a47e7e38024d64e4 (diff)
downloaddbus-d83d74dc6833d127032dc18b1b1aac27cb974015.tar.gz
dbus-d83d74dc6833d127032dc18b1b1aac27cb974015.tar.bz2
dbus-d83d74dc6833d127032dc18b1b1aac27cb974015.zip
configure.in: use AC_TRY_COMPILE to avoid a symlink attack in /tmp during compilation
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in18
1 files changed, 7 insertions, 11 deletions
diff --git a/configure.in b/configure.in
index 842a359b..aec3419f 100644
--- a/configure.in
+++ b/configure.in
@@ -1085,17 +1085,13 @@ fi
#### gcc warning flags
cc_supports_flag() {
- AC_MSG_CHECKING(whether $CC supports "$@")
- Cfile=/tmp/foo${$}
- touch ${Cfile}.c
- $CC -c "$@" ${Cfile}.c -o ${Cfile}.o >/dev/null 2>&1
- rc=$?
- rm -f ${Cfile}.c ${Cfile}.o
- case $rc in
- 0) AC_MSG_RESULT(yes);;
- *) AC_MSG_RESULT(no);;
- esac
- return $rc
+ AC_MSG_CHECKING(whether $CC supports "$*")
+ save_CFLAGS="$CFLAGS"
+ CFLAGS="$*"
+ AC_TRY_COMPILE([], [], [rc=yes], [rc=no])
+ CFLAGS="$save_CFLAGS"
+ AC_MSG_RESULT([$rc])
+ test "x$rc" = xyes
}
ld_supports_flag() {