aboutsummaryrefslogtreecommitdiffstats
path: root/lib/odbc
diff options
context:
space:
mode:
authorBjörn-Egil Dahlberg <[email protected]>2013-01-14 15:25:56 +0100
committerBjörn-Egil Dahlberg <[email protected]>2013-01-14 15:25:56 +0100
commitfdd0b38e2c85d897a240e5f8f79e268c6540dbfd (patch)
tree617d9322887f396e186f0c6e6a651a4f46e3d119 /lib/odbc
parent9a19ba3aba7b2a3c7b58cfd02b7e442138ea7685 (diff)
parent37fb3503c4b1467d2b28f407b9c27c1de147869e (diff)
downloadotp-fdd0b38e2c85d897a240e5f8f79e268c6540dbfd.tar.gz
otp-fdd0b38e2c85d897a240e5f8f79e268c6540dbfd.tar.bz2
otp-fdd0b38e2c85d897a240e5f8f79e268c6540dbfd.zip
Merge branch 'ta/werror-return-type/OTP-10683'
* ta/werror-return-type/OTP-10683: If GCC is used, treat -Wreturn-type as error
Diffstat (limited to 'lib/odbc')
-rw-r--r--lib/odbc/aclocal.m426
-rw-r--r--lib/odbc/configure.in5
2 files changed, 31 insertions, 0 deletions
diff --git a/lib/odbc/aclocal.m4 b/lib/odbc/aclocal.m4
index 9578cd35c4..5d555a5123 100644
--- a/lib/odbc/aclocal.m4
+++ b/lib/odbc/aclocal.m4
@@ -1849,6 +1849,32 @@ case $erl_gethrvtime in
esac
])dnl
+dnl ----------------------------------------------------------------------
+dnl
+dnl LM_TRY_ENABLE_CFLAG
+dnl
+dnl
+dnl Tries a CFLAG and sees if it can be enabled without compiler errors
+dnl $1: textual cflag to add
+dnl $2: variable to store the modified CFLAG in
+dnl Usage example LM_TRY_ENABLE_CFLAG([-Werror=return-type], [CFLAGS])
+dnl
+dnl
+AC_DEFUN([LM_TRY_ENABLE_CFLAG], [
+ AC_MSG_CHECKING([if we can add $1 to CFLAGS])
+ saved_CFLAGS=$CFLAGS;
+ CFLAGS="$1 $CFLAGS";
+ AC_TRY_COMPILE([],[return 0;],can_enable_flag=true,can_enable_flag=false)
+ CFLAGS=$saved_CFLAGS;
+ if test "X$can_enable_flag" = "Xtrue"; then
+ AC_MSG_RESULT([yes])
+ AS_VAR_SET($2, "$1 $CFLAGS")
+ else
+ AC_MSG_RESULT([no])
+ AS_VAR_SET($2, "$CFLAGS")
+ fi
+])
+
dnl ERL_TRY_LINK_JAVA(CLASSES, FUNCTION-BODY
dnl [ACTION_IF_FOUND [, ACTION-IF-NOT-FOUND]])
dnl Freely inspired by AC_TRY_LINK. (Maybe better to create a
diff --git a/lib/odbc/configure.in b/lib/odbc/configure.in
index bec65c71bf..e6ba9f57f5 100644
--- a/lib/odbc/configure.in
+++ b/lib/odbc/configure.in
@@ -212,4 +212,9 @@ AC_SUBST(ODBC_INCLUDE)
fi dnl "$with_odbc" != "no"
+if test "x$GCC" = xyes; then
+ # Treat certain GCC warnings as errors
+ LM_TRY_ENABLE_CFLAG([-Werror=return-type], [CFLAGS])
+fi
+
AC_OUTPUT(c_src/$host/Makefile:c_src/Makefile.in)