Merged revisions 309808 via svnmerge from

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
10-digiumphones
Tilghman Lesher 15 years ago
parent 0a96892b04
commit 6de1332214

@ -2144,6 +2144,7 @@ static void dahdi_ami_channel_event(struct dahdi_pvt *p, struct ast_channel *cha
ch_name); ch_name);
} }
#ifdef HAVE_PRI
/*! /*!
* \internal * \internal
* \brief Post an AMI DAHDI channel association event. * \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); dahdi_ami_channel_event(p, chan);
} }
#endif
/* linear_mode = 0 - turn linear mode off, >0 - turn linear mode on /* linear_mode = 0 - turn linear mode off, >0 - turn linear mode on
* returns the last value of the linear setting * returns the last value of the linear setting

53
configure vendored

@ -1,5 +1,5 @@
#! /bin/sh #! /bin/sh
# From configure.ac Revision: 306396 . # From configure.ac Revision: 309036 .
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.65 for asterisk trunk. # Generated by GNU Autoconf 2.65 for asterisk trunk.
# #
@ -7400,57 +7400,6 @@ __EOL__
fi fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_BISON2" >&5 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_BISON2" >&5
$as_echo "$ac_cv_path_BISON2" >&6; } $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 if test "x${ac_cv_path_BISON2}" = "x" ; then
BISON=: BISON=:
PBX_BISON=0 PBX_BISON=0

@ -301,47 +301,6 @@ __EOL__
rm -rf ${tmp} rm -rf ${tmp}
fi 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 if test "x${ac_cv_path_BISON2}" = "x" ; then
BISON=: BISON=:
PBX_BISON=0 PBX_BISON=0

@ -1098,10 +1098,6 @@
/* Build chan_misdn for mISDN 1.2 or later. */ /* Build chan_misdn for mISDN 1.2 or later. */
#undef MISDN_1_2 #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. */ /* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT #undef PACKAGE_BUGREPORT

@ -65,11 +65,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/channel.h" #include "asterisk/channel.h"
#endif #endif
#ifdef NEED_FLEX_FWRITE_WORKAROUND /* Conditionally redefine the macro from flex 2.5.35, in case someone uses flex <2.5.35 to regenerate this file. */
/*!\note Some versions of Flex use fwrite without checking its return value, which #ifndef ECHO
* is a warning on some compilers. Therefore, we use this workaround, to trick #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
* the compiler into suppressing this warning. */
#define fwrite(a,b,c,d) do { int __res = fwrite(a,b,c,d); (__res); } while (0)
#endif #endif
enum valtype { enum valtype {

@ -559,11 +559,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/channel.h" #include "asterisk/channel.h"
#endif #endif
#ifdef NEED_FLEX_FWRITE_WORKAROUND /* Conditionally redefine the macro from flex 2.5.35, in case someone uses flex <2.5.35 to regenerate this file. */
/*!\note Some versions of Flex use fwrite without checking its return value, which #ifndef ECHO
* is a warning on some compilers. Therefore, we use this workaround, to trick #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
* the compiler into suppressing this warning. */
#define fwrite(a,b,c,d) do { int __res = fwrite(a,b,c,d); (__res); } while (0)
#endif #endif
enum valtype { enum valtype {
@ -611,7 +609,7 @@ int ast_yyget_column(yyscan_t yyscanner);
static int curlycount = 0; static int curlycount = 0;
static char *expr2_token_subst(const char *mess); static char *expr2_token_subst(const char *mess);
#line 613 "ast_expr2f.c" #line 611 "ast_expr2f.c"
#define INITIAL 0 #define INITIAL 0
#define var 1 #define var 1
@ -859,10 +857,10 @@ YY_DECL
register int yy_act; register int yy_act;
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; 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; yylval = yylval_param;
@ -953,132 +951,132 @@ do_action: /* This label is used only to access EOF actions. */
case 1: case 1:
YY_RULE_SETUP YY_RULE_SETUP
#line 134 "ast_expr2.fl" #line 132 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_OR;} { SET_COLUMNS; SET_STRING; return TOK_OR;}
YY_BREAK YY_BREAK
case 2: case 2:
YY_RULE_SETUP YY_RULE_SETUP
#line 135 "ast_expr2.fl" #line 133 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_AND;} { SET_COLUMNS; SET_STRING; return TOK_AND;}
YY_BREAK YY_BREAK
case 3: case 3:
YY_RULE_SETUP YY_RULE_SETUP
#line 136 "ast_expr2.fl" #line 134 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_EQ;} { SET_COLUMNS; SET_STRING; return TOK_EQ;}
YY_BREAK YY_BREAK
case 4: case 4:
YY_RULE_SETUP YY_RULE_SETUP
#line 137 "ast_expr2.fl" #line 135 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_OR;} { SET_COLUMNS; SET_STRING; return TOK_OR;}
YY_BREAK YY_BREAK
case 5: case 5:
YY_RULE_SETUP YY_RULE_SETUP
#line 138 "ast_expr2.fl" #line 136 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_AND;} { SET_COLUMNS; SET_STRING; return TOK_AND;}
YY_BREAK YY_BREAK
case 6: case 6:
YY_RULE_SETUP YY_RULE_SETUP
#line 139 "ast_expr2.fl" #line 137 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_EQ;} { SET_COLUMNS; SET_STRING; return TOK_EQ;}
YY_BREAK YY_BREAK
case 7: case 7:
YY_RULE_SETUP YY_RULE_SETUP
#line 140 "ast_expr2.fl" #line 138 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_EQTILDE;} { SET_COLUMNS; SET_STRING; return TOK_EQTILDE;}
YY_BREAK YY_BREAK
case 8: case 8:
YY_RULE_SETUP YY_RULE_SETUP
#line 141 "ast_expr2.fl" #line 139 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_TILDETILDE;} { SET_COLUMNS; SET_STRING; return TOK_TILDETILDE;}
YY_BREAK YY_BREAK
case 9: case 9:
YY_RULE_SETUP YY_RULE_SETUP
#line 142 "ast_expr2.fl" #line 140 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_GT;} { SET_COLUMNS; SET_STRING; return TOK_GT;}
YY_BREAK YY_BREAK
case 10: case 10:
YY_RULE_SETUP YY_RULE_SETUP
#line 143 "ast_expr2.fl" #line 141 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_LT;} { SET_COLUMNS; SET_STRING; return TOK_LT;}
YY_BREAK YY_BREAK
case 11: case 11:
YY_RULE_SETUP YY_RULE_SETUP
#line 144 "ast_expr2.fl" #line 142 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_GE;} { SET_COLUMNS; SET_STRING; return TOK_GE;}
YY_BREAK YY_BREAK
case 12: case 12:
YY_RULE_SETUP YY_RULE_SETUP
#line 145 "ast_expr2.fl" #line 143 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_LE;} { SET_COLUMNS; SET_STRING; return TOK_LE;}
YY_BREAK YY_BREAK
case 13: case 13:
YY_RULE_SETUP YY_RULE_SETUP
#line 146 "ast_expr2.fl" #line 144 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_NE;} { SET_COLUMNS; SET_STRING; return TOK_NE;}
YY_BREAK YY_BREAK
case 14: case 14:
YY_RULE_SETUP YY_RULE_SETUP
#line 147 "ast_expr2.fl" #line 145 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_PLUS;} { SET_COLUMNS; SET_STRING; return TOK_PLUS;}
YY_BREAK YY_BREAK
case 15: case 15:
YY_RULE_SETUP YY_RULE_SETUP
#line 148 "ast_expr2.fl" #line 146 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_COMMA;} { SET_COLUMNS; SET_STRING; return TOK_COMMA;}
YY_BREAK YY_BREAK
case 16: case 16:
YY_RULE_SETUP YY_RULE_SETUP
#line 149 "ast_expr2.fl" #line 147 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_MINUS;} { SET_COLUMNS; SET_STRING; return TOK_MINUS;}
YY_BREAK YY_BREAK
case 17: case 17:
YY_RULE_SETUP YY_RULE_SETUP
#line 150 "ast_expr2.fl" #line 148 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_MULT;} { SET_COLUMNS; SET_STRING; return TOK_MULT;}
YY_BREAK YY_BREAK
case 18: case 18:
YY_RULE_SETUP YY_RULE_SETUP
#line 151 "ast_expr2.fl" #line 149 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_DIV;} { SET_COLUMNS; SET_STRING; return TOK_DIV;}
YY_BREAK YY_BREAK
case 19: case 19:
YY_RULE_SETUP YY_RULE_SETUP
#line 152 "ast_expr2.fl" #line 150 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_MOD;} { SET_COLUMNS; SET_STRING; return TOK_MOD;}
YY_BREAK YY_BREAK
case 20: case 20:
YY_RULE_SETUP YY_RULE_SETUP
#line 153 "ast_expr2.fl" #line 151 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_COND;} { SET_COLUMNS; SET_STRING; return TOK_COND;}
YY_BREAK YY_BREAK
case 21: case 21:
YY_RULE_SETUP YY_RULE_SETUP
#line 154 "ast_expr2.fl" #line 152 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_COMPL;} { SET_COLUMNS; SET_STRING; return TOK_COMPL;}
YY_BREAK YY_BREAK
case 22: case 22:
YY_RULE_SETUP YY_RULE_SETUP
#line 155 "ast_expr2.fl" #line 153 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_COLON;} { SET_COLUMNS; SET_STRING; return TOK_COLON;}
YY_BREAK YY_BREAK
case 23: case 23:
YY_RULE_SETUP YY_RULE_SETUP
#line 156 "ast_expr2.fl" #line 154 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;} { SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;}
YY_BREAK YY_BREAK
case 24: case 24:
YY_RULE_SETUP YY_RULE_SETUP
#line 157 "ast_expr2.fl" #line 155 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_LP;} { SET_COLUMNS; SET_STRING; return TOK_LP;}
YY_BREAK YY_BREAK
case 25: case 25:
YY_RULE_SETUP YY_RULE_SETUP
#line 158 "ast_expr2.fl" #line 156 "ast_expr2.fl"
{ SET_COLUMNS; SET_STRING; return TOK_RP;} { SET_COLUMNS; SET_STRING; return TOK_RP;}
YY_BREAK YY_BREAK
case 26: case 26:
YY_RULE_SETUP YY_RULE_SETUP
#line 159 "ast_expr2.fl" #line 157 "ast_expr2.fl"
{ {
/* gather the contents of ${} expressions, with trailing stuff, /* gather the contents of ${} expressions, with trailing stuff,
* into a single TOKEN. * into a single TOKEN.
@ -1091,24 +1089,24 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 27: case 27:
YY_RULE_SETUP YY_RULE_SETUP
#line 169 "ast_expr2.fl" #line 167 "ast_expr2.fl"
{} {}
YY_BREAK YY_BREAK
case 28: case 28:
/* rule 28 can match eol */ /* rule 28 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 170 "ast_expr2.fl" #line 168 "ast_expr2.fl"
{SET_COLUMNS; SET_STRING; return TOKEN;} {SET_COLUMNS; SET_STRING; return TOKEN;}
YY_BREAK YY_BREAK
case 29: case 29:
/* rule 29 can match eol */ /* rule 29 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 172 "ast_expr2.fl" #line 170 "ast_expr2.fl"
{/* what to do with eol */} {/* what to do with eol */}
YY_BREAK YY_BREAK
case 30: case 30:
YY_RULE_SETUP YY_RULE_SETUP
#line 173 "ast_expr2.fl" #line 171 "ast_expr2.fl"
{ {
SET_COLUMNS; SET_COLUMNS;
/* the original behavior of the expression parser was /* the original behavior of the expression parser was
@ -1121,7 +1119,7 @@ YY_RULE_SETUP
case 31: case 31:
/* rule 31 can match eol */ /* rule 31 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 182 "ast_expr2.fl" #line 180 "ast_expr2.fl"
{ {
SET_COLUMNS; SET_COLUMNS;
SET_STRING; SET_STRING;
@ -1131,7 +1129,7 @@ YY_RULE_SETUP
case 32: case 32:
/* rule 32 can match eol */ /* rule 32 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 188 "ast_expr2.fl" #line 186 "ast_expr2.fl"
{ {
curlycount = 0; curlycount = 0;
BEGIN(var); BEGIN(var);
@ -1141,7 +1139,7 @@ YY_RULE_SETUP
case 33: case 33:
/* rule 33 can match eol */ /* rule 33 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 194 "ast_expr2.fl" #line 192 "ast_expr2.fl"
{ {
curlycount--; curlycount--;
if (curlycount < 0) { if (curlycount < 0) {
@ -1155,7 +1153,7 @@ YY_RULE_SETUP
case 34: case 34:
/* rule 34 can match eol */ /* rule 34 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 204 "ast_expr2.fl" #line 202 "ast_expr2.fl"
{ {
curlycount++; curlycount++;
yymore(); yymore();
@ -1163,7 +1161,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 35: case 35:
YY_RULE_SETUP YY_RULE_SETUP
#line 210 "ast_expr2.fl" #line 208 "ast_expr2.fl"
{ {
BEGIN(0); BEGIN(0);
SET_COLUMNS; SET_COLUMNS;
@ -1173,7 +1171,7 @@ YY_RULE_SETUP
YY_BREAK YY_BREAK
case 36: case 36:
YY_RULE_SETUP YY_RULE_SETUP
#line 217 "ast_expr2.fl" #line 215 "ast_expr2.fl"
{ {
curlycount = 0; curlycount = 0;
BEGIN(var); BEGIN(var);
@ -1183,7 +1181,7 @@ YY_RULE_SETUP
case 37: case 37:
/* rule 37 can match eol */ /* rule 37 can match eol */
YY_RULE_SETUP YY_RULE_SETUP
#line 223 "ast_expr2.fl" #line 221 "ast_expr2.fl"
{ {
char c = yytext[yyleng-1]; char c = yytext[yyleng-1];
BEGIN(0); BEGIN(0);
@ -1194,7 +1192,7 @@ YY_RULE_SETUP
} }
YY_BREAK YY_BREAK
case YY_STATE_EOF(trail): case YY_STATE_EOF(trail):
#line 232 "ast_expr2.fl" #line 230 "ast_expr2.fl"
{ {
BEGIN(0); BEGIN(0);
SET_COLUMNS; SET_COLUMNS;
@ -1205,10 +1203,10 @@ case YY_STATE_EOF(trail):
YY_BREAK YY_BREAK
case 38: case 38:
YY_RULE_SETUP YY_RULE_SETUP
#line 240 "ast_expr2.fl" #line 238 "ast_expr2.fl"
ECHO; ECHO;
YY_BREAK YY_BREAK
#line 1210 "ast_expr2f.c" #line 1208 "ast_expr2f.c"
case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(var): case YY_STATE_EOF(var):
yyterminate(); yyterminate();
@ -2384,7 +2382,7 @@ void *ast_yyrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner)
#define YYTABLES_NAME "yytables" #define YYTABLES_NAME "yytables"
#line 240 "ast_expr2.fl" #line 238 "ast_expr2.fl"

Loading…
Cancel
Save