AC_DEFUN([gl_WARN_ADD],
[AS_VAR_PUSHDEF([gl_Warn], [gl_cv_warn_$1])dnl
AC_CACHE_CHECK([whether compiler handles $1], [gl_Warn], [
- save_CFLAGS="$CFLAGS"
- CFLAGS="${CFLAGS} $1"
+ save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="${CPPFLAGS} $1"
AC_PREPROC_IFELSE([AC_LANG_PROGRAM([])],
[AS_VAR_SET([gl_Warn], [yes])],
[AS_VAR_SET([gl_Warn], [no])])
- CFLAGS="$save_CFLAGS"
+ CPPFLAGS="$save_CPPFLAGS"
])
AS_VAR_PUSHDEF([gl_Flags], m4_if([$2], [], [[WARN_CFLAGS]], [[$2]]))dnl
gl_AS_VAR_IF([gl_Warn], [yes], [gl_AS_VAR_APPEND([gl_Flags], [" $1"])])
# gl_WARN_SUPPORTED(VARIABLE)
# ----------------------
-# Add all supported warning parameters to variable VARIABLE
-# using gl_WARN_ADD.
+# Add all supported warning parameters to variable VARIABLE.
AC_DEFUN([gl_WARN_SUPPORTED],
[
+ FOO=
# List of all supported warning parameters according to GCC 4.3.2 manual.
for w in \
-Wall \
-Wstack-protector \
-Woverlength-strings \
; do
- gl_WARN_ADD($w, $1)
+ FOO="$FOO $w"
done
+ $1=$FOO
])
# gl_WARN_COMPLEMENT(OUTVAR, LISTVAR, REMOVEVAR)
# does OUTVAR = LISTVAR \ REMOVEVAR.
AC_DEFUN([gl_WARN_COMPLEMENT],
[
- FOO=
- set -- "$2"
- for w in $_; do
- case "$3" in
- *" $w "* | *" $w" | "$w "*)
+ gl_warn_set=
+ set x $2; shift
+ for gl_warn_item
+ do
+ case " $3 " in
+ *" $gl_warn_item "*)
;;
*)
- FOO="$FOO $w"
+ gl_warn_set="$gl_warn_set $gl_warn_item"
;;
esac
done
- $1=$FOO
+ $1=$gl_warn_set
])