--- a/m4/vala.m4
+++ b/m4/vala.m4
@@ -28,7 +28,12 @@
 void main(){}
 _ACEOF
 
-  AS_IF([vala_error=`$VALAC $1 -q -o conftest$ac_exeext conftest.vala 2>&1`],
+  unset vala_cc_args
+  for cflag in $CFLAGS $CPPFLAGS $LDFLAGS; do
+    vala_cc_args="${vala_cc_args:+$vala_cc_args }-X $cflag"
+  done
+
+  AS_IF([vala_error=`$VALAC $1 -q $VALAFLAGS --cc $CC $vala_cc_args -o conftest$ac_exeext conftest.vala 2>&1`],
         [$2], [$3])
 ])