Merged revisions 309808 via svnmerge from
authorTilghman Lesher <tilghman@meg.abyt.es>
Mon, 7 Mar 2011 01:01:08 +0000 (01:01 +0000)
committerTilghman Lesher <tilghman@meg.abyt.es>
Mon, 7 Mar 2011 01:01:08 +0000 (01:01 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r309808 | tilghman | 2011-03-06 18:54:42 -0600 (Sun, 06 Mar 2011) | 14 lines

  Merged revisions 309251 via svnmerge from
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2

  ........
    r309251 | tilghman | 2011-03-01 19:06:02 -0600 (Tue, 01 Mar 2011) | 7 lines

    Revert previous 2 commits, and instead conditionally redefine the same macro used in flex 2.5.35 that clashed with our workaround.

    Not surprisingly, the workaround was exactly the same code as was provided by
    the Flex maintainers, albeit in two different places, in different macros.

    This should fix the FreeBSD builds, which have an older version of Flex.
  ........
................

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@309809 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_dahdi.c
configure
configure.ac
include/asterisk/autoconfig.h.in
main/ast_expr2.fl
main/ast_expr2f.c

index 5a36328..b59e157 100644 (file)
@@ -2144,6 +2144,7 @@ static void dahdi_ami_channel_event(struct dahdi_pvt *p, struct ast_channel *cha
                ch_name);
 }
 
+#ifdef HAVE_PRI
 /*!
  * \internal
  * \brief Post an AMI DAHDI channel association event.
@@ -2160,6 +2161,7 @@ static void my_ami_channel_event(void *pvt, struct ast_channel *chan)
 
        dahdi_ami_channel_event(p, chan);
 }
+#endif
 
 /* linear_mode = 0 - turn linear mode off, >0 - turn linear mode on
 *      returns the last value of the linear setting 
index 167cd44..691bbbf 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.ac Revision: 306396 .
+# From configure.ac Revision: 309036 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.65 for asterisk trunk.
 #
@@ -7400,57 +7400,6 @@ __EOL__
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_BISON2" >&5
 $as_echo "$ac_cv_path_BISON2" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for flex that ignores fwrite return value" >&5
-$as_echo_n "checking for flex that ignores fwrite return value... " >&6; }
-if test "${ac_cv_FLEX_WORKAROUND+set}" = set; then :
-  $as_echo_n "(cached) " >&6
-else
-
-       if test "x$FLEX" != "x:" ; then
-               # Create a temporary directory $tmp in $TMPDIR (default /tmp).
-               # Use mktemp if possible; otherwise fall back on mkdir,
-               # with $RANDOM to make collisions less likely.
-               : ${TMPDIR=/tmp}
-               {
-                 tmp=`
-                   (umask 077 && mktemp -d "$TMPDIR/fooXXXXXX") 2>/dev/null
-                 ` &&
-                 test -n "$tmp" && test -d "$tmp"
-               } || {
-                 tmp=$TMPDIR/foo$$-$RANDOM
-                 (umask 077 && mkdir "$tmp")
-               } || exit $?
-               cat >$tmp/test.fl <<__EOL__
-%{
-#include <unistd.h>
-#include <stdio.h>
-static void yyunput (int c,char *buf_ptr  ) __attribute__((unused));
-static int input(void) __attribute__((unused));
-%}
-
-%%
-username    printf( "%s", getlogin() );
-__EOL__
-               ${FLEX} -o ${tmp}/test.c ${tmp}/test.fl
-               ${CC} -o ${tmp}/test.o -c ${tmp}/test.c -Wall -Werror >/dev/null 2>&1
-               if test -e "${tmp}/test.o"; then
-                       ac_cv_FLEX_WORKAROUND=no
-               else
-                       ac_cv_FLEX_WORKAROUND=yes
-               fi
-               rm -rf ${tmp}
-       fi
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_FLEX_WORKAROUND" >&5
-$as_echo "$ac_cv_FLEX_WORKAROUND" >&6; }
-
-if test "x${ac_cv_FLEX_WORKAROUND}" = "xyes"; then
-
-$as_echo "#define NEED_FLEX_FWRITE_WORKAROUND 1" >>confdefs.h
-
-fi
-
 if test "x${ac_cv_path_BISON2}" = "x" ; then
        BISON=:
        PBX_BISON=0
index 763cd1a..9e8a2df 100644 (file)
@@ -301,47 +301,6 @@ __EOL__
                rm -rf ${tmp}
        fi
        ])
-AC_CACHE_CHECK([for flex that ignores fwrite return value], [ac_cv_FLEX_WORKAROUND], [
-       if test "x$FLEX" != "x:" ; then
-               # Create a temporary directory $tmp in $TMPDIR (default /tmp).
-               # Use mktemp if possible; otherwise fall back on mkdir,
-               # with $RANDOM to make collisions less likely.
-               : ${TMPDIR=/tmp}
-               {
-                 tmp=`
-                   (umask 077 && mktemp -d "$TMPDIR/fooXXXXXX") 2>/dev/null
-                 ` &&
-                 test -n "$tmp" && test -d "$tmp"
-               } || {
-                 tmp=$TMPDIR/foo$$-$RANDOM
-                 (umask 077 && mkdir "$tmp")
-               } || exit $?
-               cat >$tmp/test.fl <<__EOL__
-%{
-#include <unistd.h>
-#include <stdio.h>
-static void yyunput (int c,char *buf_ptr  ) __attribute__((unused));
-static int input(void) __attribute__((unused));
-%}
-
-%%
-username    printf( "%s", getlogin() );
-__EOL__
-               ${FLEX} -o ${tmp}/test.c ${tmp}/test.fl
-               ${CC} -o ${tmp}/test.o -c ${tmp}/test.c -Wall -Werror >/dev/null 2>&1
-               if test -e "${tmp}/test.o"; then
-                       ac_cv_FLEX_WORKAROUND=no
-               else
-                       ac_cv_FLEX_WORKAROUND=yes
-               fi
-               rm -rf ${tmp}
-       fi
-       ])
-
-if test "x${ac_cv_FLEX_WORKAROUND}" = "xyes"; then
-       AC_DEFINE([NEED_FLEX_FWRITE_WORKAROUND], 1, [Define to 1 if your system has a version of flex that does not check the return value of fwrite.])
-fi
-
 if test "x${ac_cv_path_BISON2}" = "x" ; then
        BISON=:
        PBX_BISON=0
index 1b64234..ac63fda 100644 (file)
 /* Build chan_misdn for mISDN 1.2 or later. */
 #undef MISDN_1_2
 
-/* Define to 1 if your system has a version of flex that does not check the
-   return value of fwrite. */
-#undef NEED_FLEX_FWRITE_WORKAROUND
-
 /* Define to the address where bug reports for this package should be sent. */
 #undef PACKAGE_BUGREPORT
 
index 75b3e76..624618e 100644 (file)
@@ -65,11 +65,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 #include "asterisk/channel.h"
 #endif
 
-#ifdef NEED_FLEX_FWRITE_WORKAROUND
-/*!\note Some versions of Flex use fwrite without checking its return value, which
- * is a warning on some compilers.  Therefore, we use this workaround, to trick
- * the compiler into suppressing this warning. */
-#define fwrite(a,b,c,d)        do { int __res = fwrite(a,b,c,d); (__res); } while (0)
+/* Conditionally redefine the macro from flex 2.5.35, in case someone uses flex <2.5.35 to regenerate this file. */
+#ifndef ECHO
+#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
 #endif
 
 enum valtype {
index bfa5a6e..cc0f0f1 100644 (file)
@@ -559,11 +559,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 #include "asterisk/channel.h"
 #endif
 
-#ifdef NEED_FLEX_FWRITE_WORKAROUND
-/*!\note Some versions of Flex use fwrite without checking its return value, which
- * is a warning on some compilers.  Therefore, we use this workaround, to trick
- * the compiler into suppressing this warning. */
-#define fwrite(a,b,c,d)        do { int __res = fwrite(a,b,c,d); (__res); } while (0)
+/* Conditionally redefine the macro from flex 2.5.35, in case someone uses flex <2.5.35 to regenerate this file. */
+#ifndef ECHO
+#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
 #endif
 
 enum valtype {
@@ -611,7 +609,7 @@ int ast_yyget_column(yyscan_t yyscanner);
 static int curlycount = 0;
 static char *expr2_token_subst(const char *mess);
 
-#line 613 "ast_expr2f.c"
+#line 611 "ast_expr2f.c"
 
 #define INITIAL 0
 #define var 1
@@ -859,10 +857,10 @@ YY_DECL
        register int yy_act;
     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
 
-#line 132 "ast_expr2.fl"
+#line 130 "ast_expr2.fl"
 
 
-#line 864 "ast_expr2f.c"
+#line 862 "ast_expr2f.c"
 
     yylval = yylval_param;
 
@@ -953,132 +951,132 @@ do_action:      /* This label is used only to access EOF actions. */
 
 case 1:
 YY_RULE_SETUP
-#line 134 "ast_expr2.fl"
+#line 132 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_OR;}
        YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 135 "ast_expr2.fl"
+#line 133 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_AND;}
        YY_BREAK
 case 3:
 YY_RULE_SETUP
-#line 136 "ast_expr2.fl"
+#line 134 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_EQ;}
        YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 137 "ast_expr2.fl"
+#line 135 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_OR;}
        YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 138 "ast_expr2.fl"
+#line 136 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_AND;}
        YY_BREAK
 case 6:
 YY_RULE_SETUP
-#line 139 "ast_expr2.fl"
+#line 137 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_EQ;}
        YY_BREAK
 case 7:
 YY_RULE_SETUP
-#line 140 "ast_expr2.fl"
+#line 138 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_EQTILDE;}
        YY_BREAK
 case 8:
 YY_RULE_SETUP
-#line 141 "ast_expr2.fl"
+#line 139 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_TILDETILDE;}
        YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 142 "ast_expr2.fl"
+#line 140 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_GT;}
        YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 143 "ast_expr2.fl"
+#line 141 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_LT;}
        YY_BREAK
 case 11:
 YY_RULE_SETUP
-#line 144 "ast_expr2.fl"
+#line 142 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_GE;}
        YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 145 "ast_expr2.fl"
+#line 143 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_LE;}
        YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 146 "ast_expr2.fl"
+#line 144 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_NE;}
        YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 147 "ast_expr2.fl"
+#line 145 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_PLUS;}
        YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 148 "ast_expr2.fl"
+#line 146 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_COMMA;}
        YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 149 "ast_expr2.fl"
+#line 147 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_MINUS;}
        YY_BREAK
 case 17:
 YY_RULE_SETUP
-#line 150 "ast_expr2.fl"
+#line 148 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_MULT;}
        YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 151 "ast_expr2.fl"
+#line 149 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_DIV;}
        YY_BREAK
 case 19:
 YY_RULE_SETUP
-#line 152 "ast_expr2.fl"
+#line 150 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_MOD;}
        YY_BREAK
 case 20:
 YY_RULE_SETUP
-#line 153 "ast_expr2.fl"
+#line 151 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_COND;}
        YY_BREAK
 case 21:
 YY_RULE_SETUP
-#line 154 "ast_expr2.fl"
+#line 152 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_COMPL;}
        YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 155 "ast_expr2.fl"
+#line 153 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_COLON;}
        YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 156 "ast_expr2.fl"
+#line 154 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;}
        YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 157 "ast_expr2.fl"
+#line 155 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_LP;}
        YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 158 "ast_expr2.fl"
+#line 156 "ast_expr2.fl"
 { SET_COLUMNS; SET_STRING; return TOK_RP;}
        YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 159 "ast_expr2.fl"
+#line 157 "ast_expr2.fl"
 {
                /* gather the contents of ${} expressions, with trailing stuff,
                 * into a single TOKEN.
@@ -1091,24 +1089,24 @@ YY_RULE_SETUP
        YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 169 "ast_expr2.fl"
+#line 167 "ast_expr2.fl"
 {}
        YY_BREAK
 case 28:
 /* rule 28 can match eol */
 YY_RULE_SETUP
-#line 170 "ast_expr2.fl"
+#line 168 "ast_expr2.fl"
 {SET_COLUMNS; SET_STRING; return TOKEN;}
        YY_BREAK
 case 29:
 /* rule 29 can match eol */
 YY_RULE_SETUP
-#line 172 "ast_expr2.fl"
+#line 170 "ast_expr2.fl"
 {/* what to do with eol */}
        YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 173 "ast_expr2.fl"
+#line 171 "ast_expr2.fl"
 {
                SET_COLUMNS;
                /* the original behavior of the expression parser was
@@ -1121,7 +1119,7 @@ YY_RULE_SETUP
 case 31:
 /* rule 31 can match eol */
 YY_RULE_SETUP
-#line 182 "ast_expr2.fl"
+#line 180 "ast_expr2.fl"
 {
                SET_COLUMNS;
                SET_STRING;
@@ -1131,7 +1129,7 @@ YY_RULE_SETUP
 case 32:
 /* rule 32 can match eol */
 YY_RULE_SETUP
-#line 188 "ast_expr2.fl"
+#line 186 "ast_expr2.fl"
 {
                curlycount = 0;
                BEGIN(var);
@@ -1141,7 +1139,7 @@ YY_RULE_SETUP
 case 33:
 /* rule 33 can match eol */
 YY_RULE_SETUP
-#line 194 "ast_expr2.fl"
+#line 192 "ast_expr2.fl"
 {
                curlycount--;
                if (curlycount < 0) {
@@ -1155,7 +1153,7 @@ YY_RULE_SETUP
 case 34:
 /* rule 34 can match eol */
 YY_RULE_SETUP
-#line 204 "ast_expr2.fl"
+#line 202 "ast_expr2.fl"
 {
                curlycount++;
                yymore();
@@ -1163,7 +1161,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 210 "ast_expr2.fl"
+#line 208 "ast_expr2.fl"
 {
                BEGIN(0);
                SET_COLUMNS;
@@ -1173,7 +1171,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 217 "ast_expr2.fl"
+#line 215 "ast_expr2.fl"
 {
                curlycount = 0;
                BEGIN(var);
@@ -1183,7 +1181,7 @@ YY_RULE_SETUP
 case 37:
 /* rule 37 can match eol */
 YY_RULE_SETUP
-#line 223 "ast_expr2.fl"
+#line 221 "ast_expr2.fl"
 {
                char c = yytext[yyleng-1];
                BEGIN(0);
@@ -1194,7 +1192,7 @@ YY_RULE_SETUP
        }
        YY_BREAK
 case YY_STATE_EOF(trail):
-#line 232 "ast_expr2.fl"
+#line 230 "ast_expr2.fl"
 {
                BEGIN(0);
                SET_COLUMNS;
@@ -1205,10 +1203,10 @@ case YY_STATE_EOF(trail):
        YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 240 "ast_expr2.fl"
+#line 238 "ast_expr2.fl"
 ECHO;
        YY_BREAK
-#line 1210 "ast_expr2f.c"
+#line 1208 "ast_expr2f.c"
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(var):
        yyterminate();
@@ -2384,7 +2382,7 @@ void *ast_yyrealloc  (void * ptr, yy_size_t  size , yyscan_t yyscanner)
 
 #define YYTABLES_NAME "yytables"
 
-#line 240 "ast_expr2.fl"
+#line 238 "ast_expr2.fl"