aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-06-29 14:18:36 +0000
committerfile <file@f38db490-d61c-443f-a65b-d21fe96a405b>2007-06-29 14:18:36 +0000
commitf862ca09c64c398dc12a5ce8d074a82d86076199 (patch)
treeca689963584608b829333c5a2e26f091a153f24e
parentdab1a9e111ccc1b78a0b127bd10cad3262f19f6f (diff)
Backport fix for GCC versions without support for declaration-after-statement.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@72597 f38db490-d61c-443f-a65b-d21fe96a405b
-rw-r--r--Makefile2
-rwxr-xr-xconfigure29
-rw-r--r--configure.ac10
-rw-r--r--makeopts.in2
4 files changed, 33 insertions, 10 deletions
diff --git a/Makefile b/Makefile
index 9e2e15837..1731d5d3d 100644
--- a/Makefile
+++ b/Makefile
@@ -192,7 +192,7 @@ ASTCFLAGS+=-pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declar
ASTCFLAGS+=-include $(ASTTOPDIR)/include/asterisk/autoconfig.h
ifeq ($(AST_DEVMODE),yes)
- ASTCFLAGS+=-Werror -Wunused -Wdeclaration-after-statement
+ ASTCFLAGS+=-Werror -Wunused $(AST_DECLARATION_AFTER_STATEMENT)
endif
ifneq ($(findstring BSD,$(OSARCH)),)
diff --git a/configure b/configure
index 37513f859..b55306b52 100755
--- a/configure
+++ b/configure
@@ -873,6 +873,7 @@ LIBOBJS
POW_LIB
GC_CFLAGS
GC_LDFLAGS
+AST_DECLARATION_AFTER_STATEMENT
GSM_INTERNAL
KDEINIT
KDEDIR
@@ -11848,13 +11849,11 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <sys/types.h> /* for off_t */
- #include <stdio.h>
+#include <stdio.h>
int
main ()
{
-int (*fp) (FILE *, off_t, int) = fseeko;
- return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
+return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
;
return 0;
}
@@ -11894,13 +11893,11 @@ cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
#define _LARGEFILE_SOURCE 1
-#include <sys/types.h> /* for off_t */
- #include <stdio.h>
+#include <stdio.h>
int
main ()
{
-int (*fp) (FILE *, off_t, int) = fseeko;
- return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
+return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
;
return 0;
}
@@ -15265,6 +15262,19 @@ CFLAGS="${saved_CFLAGS}"
+{ echo "$as_me:$LINENO: checking for -Wdeclaration-after-statement support" >&5
+echo $ECHO_N "checking for -Wdeclaration-after-statement support... $ECHO_C" >&6; }
+if $(${CC} -Wdeclaration-after-statement -S -o /dev/null -xc /dev/null > /dev/null 2>&1); then
+ { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+ AST_DECLARATION_AFTER_STATEMENT=-Wdeclaration-after-statement
+else
+ { echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+ AST_DECLARATION_AFTER_STATEMENT=
+fi
+
+
{ echo "$as_me:$LINENO: checking for res_ninit" >&5
echo $ECHO_N "checking for res_ninit... $ECHO_C" >&6; }
cat >conftest.$ac_ext <<_ACEOF
@@ -32082,6 +32092,7 @@ LIBOBJS!$LIBOBJS$ac_delim
POW_LIB!$POW_LIB$ac_delim
GC_CFLAGS!$GC_CFLAGS$ac_delim
GC_LDFLAGS!$GC_LDFLAGS$ac_delim
+AST_DECLARATION_AFTER_STATEMENT!$AST_DECLARATION_AFTER_STATEMENT$ac_delim
GSM_INTERNAL!$GSM_INTERNAL$ac_delim
KDEINIT!$KDEINIT$ac_delim
KDEDIR!$KDEDIR$ac_delim
@@ -32115,7 +32126,7 @@ CURL_CONFIG!$CURL_CONFIG$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 91; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 92; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.ac b/configure.ac
index 770334f64..2cbb48a27 100644
--- a/configure.ac
+++ b/configure.ac
@@ -319,6 +319,16 @@ CFLAGS="${saved_CFLAGS}"
AC_SUBST(GC_CFLAGS)
AC_SUBST(GC_LDFLAGS)
+AC_MSG_CHECKING(for -Wdeclaration-after-statement support)
+if $(${CC} -Wdeclaration-after-statement -S -o /dev/null -xc /dev/null > /dev/null 2>&1); then
+ AC_MSG_RESULT(yes)
+ AST_DECLARATION_AFTER_STATEMENT=-Wdeclaration-after-statement
+else
+ AC_MSG_RESULT(no)
+ AST_DECLARATION_AFTER_STATEMENT=
+fi
+AC_SUBST(AST_DECLARATION_AFTER_STATEMENT)
+
AC_MSG_CHECKING(for res_ninit)
AC_LINK_IFELSE(
AC_LANG_PROGRAM([#include <resolv.h>],
diff --git a/makeopts.in b/makeopts.in
index 52e1e6bdc..4d582c7f7 100644
--- a/makeopts.in
+++ b/makeopts.in
@@ -61,6 +61,8 @@ sysconfdir = @sysconfdir@
AST_DEVMODE=@AST_DEVMODE@
+AST_DECLARATION_AFTER_STATEMENT=@AST_DECLARATION_AFTER_STATEMENT@
+
ASOUND_INCLUDE=@ALSA_INCLUDE@
ASOUND_LIB=@ALSA_LIB@