CW Win32 support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
518f33a4e5
commit
469e1e5c35
1214
src/common/cwlex_yy.c
Normal file
1214
src/common/cwlex_yy.c
Normal file
File diff suppressed because it is too large
Load Diff
528
src/common/cwy_tab.c
Normal file
528
src/common/cwy_tab.c
Normal file
@ -0,0 +1,528 @@
|
||||
#ifndef lint
|
||||
static char yysccsid[] = "@(#)yaccpar 1.7 (Berkeley) 09/09/90";
|
||||
#endif
|
||||
#define YYBYACC 1
|
||||
#line 2 "parser.y"
|
||||
#include "string.h"
|
||||
#ifdef _MSC_VER
|
||||
#include <io.h>
|
||||
#endif
|
||||
#include "wx/expr.h"
|
||||
|
||||
#ifndef __EXTERN_C__
|
||||
#define __EXTERN_C__ 1
|
||||
#endif
|
||||
|
||||
#if defined(__cplusplus) || defined(__STDC__)
|
||||
#if defined(__cplusplus) && defined(__EXTERN_C__)
|
||||
extern "C" {
|
||||
#endif
|
||||
#endif
|
||||
int yylex(void);
|
||||
int yylook(void);
|
||||
int yywrap(void);
|
||||
int yyback(int *, int);
|
||||
|
||||
/* You may need to put /DLEX_SCANNER in your makefile
|
||||
* if you're using LEX!
|
||||
Last change: JS 13 Jul 97 6:12 pm
|
||||
*/
|
||||
#ifdef LEX_SCANNER
|
||||
/* int yyoutput(int); */
|
||||
void yyoutput(int);
|
||||
#else
|
||||
void yyoutput(int);
|
||||
#endif
|
||||
|
||||
#if defined(__cplusplus) || defined(__STDC__)
|
||||
#if defined(__cplusplus) && defined(__EXTERN_C__)
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
#line 36 "parser.y"
|
||||
typedef union {
|
||||
char *s;
|
||||
/* struct pexpr *expr; */
|
||||
} YYSTYPE;
|
||||
#line 44 "y_tab.c"
|
||||
#define INTEGER 1
|
||||
#define WORD 2
|
||||
#define STRING 3
|
||||
#define PERIOD 13
|
||||
#define OPEN 4
|
||||
#define CLOSE 5
|
||||
#define COMMA 6
|
||||
#define NEWLINE 7
|
||||
#define ERROR 8
|
||||
#define OPEN_SQUARE 9
|
||||
#define CLOSE_SQUARE 10
|
||||
#define EQUALS 11
|
||||
#define EXP 14
|
||||
#define YYERRCODE 256
|
||||
short yylhs[] = { -1,
|
||||
0, 0, 1, 1, 1, 2, 2, 2, 3, 3,
|
||||
3, 4, 4, 5, 5, 5, 5, 5, 5, 5,
|
||||
};
|
||||
short yylen[] = { 2,
|
||||
0, 2, 2, 2, 2, 4, 2, 3, 0, 1,
|
||||
3, 3, 1, 1, 1, 1, 3, 3, 5, 1,
|
||||
};
|
||||
short yydefred[] = { 1,
|
||||
0, 0, 0, 0, 2, 0, 5, 3, 0, 0,
|
||||
0, 15, 7, 20, 0, 0, 13, 4, 0, 0,
|
||||
0, 0, 8, 0, 6, 0, 18, 0, 12, 11,
|
||||
0, 19,
|
||||
};
|
||||
short yydgoto[] = { 1,
|
||||
5, 14, 15, 16, 17,
|
||||
};
|
||||
short yysindex[] = { 0,
|
||||
-2, 9, 2, 1, 0, 10, 0, 0, 11, -5,
|
||||
17, 0, 0, 0, 14, -1, 0, 0, 33, 38,
|
||||
41, 16, 0, 11, 0, 29, 0, 40, 0, 0,
|
||||
44, 0,
|
||||
};
|
||||
short yyrindex[] = { 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 42, 21,
|
||||
24, 0, 0, 0, 0, 30, 0, 0, 0, 0,
|
||||
0, 0, 0, 31, 0, 27, 0, 24, 0, 0,
|
||||
0, 0,
|
||||
};
|
||||
short yygindex[] = { 0,
|
||||
0, 45, -8, 0, 26,
|
||||
};
|
||||
#define YYTABLESIZE 254
|
||||
short yytable[] = { 3,
|
||||
19, 10, 11, 12, 24, 9, 4, 20, 21, 4,
|
||||
13, 10, 11, 12, 8, 30, 10, 28, 12, 4,
|
||||
9, 7, 18, 23, 4, 16, 16, 22, 14, 14,
|
||||
16, 17, 17, 14, 10, 9, 17, 25, 26, 10,
|
||||
9, 27, 31, 9, 32, 6, 9, 29, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 2,
|
||||
};
|
||||
short yycheck[] = { 2,
|
||||
9, 1, 2, 3, 6, 4, 9, 13, 14, 9,
|
||||
10, 1, 2, 3, 13, 24, 1, 2, 3, 9,
|
||||
4, 13, 13, 10, 9, 5, 6, 11, 5, 6,
|
||||
10, 5, 6, 10, 5, 5, 10, 5, 1, 10,
|
||||
10, 1, 14, 4, 1, 1, 5, 22, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||
-1, -1, -1, 256,
|
||||
};
|
||||
#define YYFINAL 1
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 0
|
||||
#endif
|
||||
#define YYMAXTOKEN 14
|
||||
#if YYDEBUG
|
||||
char *yyname[] = {
|
||||
"end-of-file","INTEGER","WORD","STRING","OPEN","CLOSE","COMMA","NEWLINE",
|
||||
"ERROR","OPEN_SQUARE","CLOSE_SQUARE","EQUALS",0,"PERIOD","EXP",
|
||||
};
|
||||
char *yyrule[] = {
|
||||
"$accept : commands",
|
||||
"commands :",
|
||||
"commands : commands command",
|
||||
"command : WORD PERIOD",
|
||||
"command : expr PERIOD",
|
||||
"command : error PERIOD",
|
||||
"expr : WORD OPEN arglist CLOSE",
|
||||
"expr : OPEN_SQUARE CLOSE_SQUARE",
|
||||
"expr : OPEN_SQUARE arglist CLOSE_SQUARE",
|
||||
"arglist :",
|
||||
"arglist : arg",
|
||||
"arglist : arg COMMA arglist",
|
||||
"arg : WORD EQUALS arg1",
|
||||
"arg : arg1",
|
||||
"arg1 : WORD",
|
||||
"arg1 : STRING",
|
||||
"arg1 : INTEGER",
|
||||
"arg1 : INTEGER PERIOD INTEGER",
|
||||
"arg1 : INTEGER EXP INTEGER",
|
||||
"arg1 : INTEGER PERIOD INTEGER EXP INTEGER",
|
||||
"arg1 : expr",
|
||||
};
|
||||
#endif
|
||||
#define yyclearin (yychar=(-1))
|
||||
#define yyerrok (yyerrflag=0)
|
||||
#ifdef YYSTACKSIZE
|
||||
#ifndef YYMAXDEPTH
|
||||
#define YYMAXDEPTH YYSTACKSIZE
|
||||
#endif
|
||||
#else
|
||||
#ifdef YYMAXDEPTH
|
||||
#define YYSTACKSIZE YYMAXDEPTH
|
||||
#else
|
||||
#define YYSTACKSIZE 600
|
||||
#define YYMAXDEPTH 600
|
||||
#endif
|
||||
#endif
|
||||
int yydebug;
|
||||
int yynerrs;
|
||||
int yyerrflag;
|
||||
int yychar;
|
||||
short *yyssp;
|
||||
YYSTYPE *yyvsp;
|
||||
YYSTYPE yyval;
|
||||
YYSTYPE yylval;
|
||||
short yyss[YYSTACKSIZE];
|
||||
YYSTYPE yyvs[YYSTACKSIZE];
|
||||
#define yystacksize YYSTACKSIZE
|
||||
#line 118 "parser.y"
|
||||
|
||||
#ifdef IDE_INVOKED
|
||||
#include "../common/doslex.c"
|
||||
#else
|
||||
#if (defined(__MWERKS__))
|
||||
#include "../common/cwlex_yy.c"
|
||||
#else
|
||||
#include "../common/lex_yy.c"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
void yyerror(s)
|
||||
char *s;
|
||||
{
|
||||
syntax_error(s);
|
||||
}
|
||||
*/
|
||||
|
||||
/* Ansi prototype. If this doesn't work for you... uncomment
|
||||
the above instead.
|
||||
*/
|
||||
|
||||
void yyerror(char *s)
|
||||
{
|
||||
syntax_error(s);
|
||||
}
|
||||
|
||||
/*
|
||||
* Unfortunately, my DOS version of FLEX
|
||||
* requires yywrap to be #def'ed, whereas
|
||||
* the UNIX flex expects a proper function.
|
||||
*/
|
||||
|
||||
/* Not sure if __SC__ is the appropriate thing
|
||||
* to test
|
||||
*/
|
||||
|
||||
#ifndef __SC__
|
||||
#ifdef USE_DEFINE
|
||||
#ifndef yywrap
|
||||
#define yywrap() 1
|
||||
#endif
|
||||
#else
|
||||
int yywrap() { return 1; }
|
||||
#endif
|
||||
#endif
|
||||
#line 247 "y_tab.c"
|
||||
#define YYABORT goto yyabort
|
||||
#define YYACCEPT goto yyaccept
|
||||
#define YYERROR goto yyerrlab
|
||||
int
|
||||
yyparse()
|
||||
{
|
||||
register int yym, yyn, yystate;
|
||||
#if YYDEBUG
|
||||
register char *yys;
|
||||
extern char *getenv();
|
||||
|
||||
if (yys = getenv("YYDEBUG"))
|
||||
{
|
||||
yyn = *yys;
|
||||
if (yyn >= '0' && yyn <= '9')
|
||||
yydebug = yyn - '0';
|
||||
}
|
||||
#endif
|
||||
|
||||
yynerrs = 0;
|
||||
yyerrflag = 0;
|
||||
yychar = (-1);
|
||||
|
||||
yyssp = yyss;
|
||||
yyvsp = yyvs;
|
||||
*yyssp = yystate = 0;
|
||||
|
||||
yyloop:
|
||||
if (yyn = yydefred[yystate]) goto yyreduce;
|
||||
if (yychar < 0)
|
||||
{
|
||||
if ((yychar = yylex()) < 0) yychar = 0;
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
{
|
||||
yys = 0;
|
||||
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
|
||||
if (!yys) yys = "illegal-symbol";
|
||||
printf("yydebug: state %d, reading %d (%s)\n", yystate,
|
||||
yychar, yys);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
|
||||
yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
|
||||
{
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
printf("yydebug: state %d, shifting to state %d\n",
|
||||
yystate, yytable[yyn]);
|
||||
#endif
|
||||
if (yyssp >= yyss + yystacksize - 1)
|
||||
{
|
||||
goto yyoverflow;
|
||||
}
|
||||
*++yyssp = yystate = yytable[yyn];
|
||||
*++yyvsp = yylval;
|
||||
yychar = (-1);
|
||||
if (yyerrflag > 0) --yyerrflag;
|
||||
goto yyloop;
|
||||
}
|
||||
if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
|
||||
yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
|
||||
{
|
||||
yyn = yytable[yyn];
|
||||
goto yyreduce;
|
||||
}
|
||||
if (yyerrflag) goto yyinrecovery;
|
||||
#ifdef lint
|
||||
goto yynewerror;
|
||||
#endif
|
||||
yynewerror:
|
||||
yyerror("syntax error");
|
||||
#ifdef lint
|
||||
goto yyerrlab;
|
||||
#endif
|
||||
yyerrlab:
|
||||
++yynerrs;
|
||||
yyinrecovery:
|
||||
if (yyerrflag < 3)
|
||||
{
|
||||
yyerrflag = 3;
|
||||
for (;;)
|
||||
{
|
||||
if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
|
||||
yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
|
||||
{
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
printf("yydebug: state %d, error recovery shifting\
|
||||
to state %d\n", *yyssp, yytable[yyn]);
|
||||
#endif
|
||||
if (yyssp >= yyss + yystacksize - 1)
|
||||
{
|
||||
goto yyoverflow;
|
||||
}
|
||||
*++yyssp = yystate = yytable[yyn];
|
||||
*++yyvsp = yylval;
|
||||
goto yyloop;
|
||||
}
|
||||
else
|
||||
{
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
printf("yydebug: error recovery discarding state %d\n",
|
||||
*yyssp);
|
||||
#endif
|
||||
if (yyssp <= yyss) goto yyabort;
|
||||
--yyssp;
|
||||
--yyvsp;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (yychar == 0) goto yyabort;
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
{
|
||||
yys = 0;
|
||||
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
|
||||
if (!yys) yys = "illegal-symbol";
|
||||
printf("yydebug: state %d, error recovery discards token %d (%s)\n",
|
||||
yystate, yychar, yys);
|
||||
}
|
||||
#endif
|
||||
yychar = (-1);
|
||||
goto yyloop;
|
||||
}
|
||||
yyreduce:
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
printf("yydebug: state %d, reducing by rule %d (%s)\n",
|
||||
yystate, yyn, yyrule[yyn]);
|
||||
#endif
|
||||
yym = yylen[yyn];
|
||||
yyval = yyvsp[1-yym];
|
||||
switch (yyn)
|
||||
{
|
||||
case 3:
|
||||
#line 68 "parser.y"
|
||||
{process_command(proio_cons(make_word(yyvsp[-1].s), NULL)); free(yyvsp[-1].s);}
|
||||
break;
|
||||
case 4:
|
||||
#line 70 "parser.y"
|
||||
{process_command(yyvsp[-1].s);}
|
||||
break;
|
||||
case 5:
|
||||
#line 72 "parser.y"
|
||||
{syntax_error("Unrecognized command.");}
|
||||
break;
|
||||
case 6:
|
||||
#line 76 "parser.y"
|
||||
{yyval.s = proio_cons(make_word(yyvsp[-3].s), yyvsp[-1].s); free(yyvsp[-3].s);}
|
||||
break;
|
||||
case 7:
|
||||
#line 78 "parser.y"
|
||||
{yyval.s = proio_cons(NULL, NULL);}
|
||||
break;
|
||||
case 8:
|
||||
#line 80 "parser.y"
|
||||
{yyval.s = yyvsp[-1].s; }
|
||||
break;
|
||||
case 9:
|
||||
#line 84 "parser.y"
|
||||
{yyval.s = NULL;}
|
||||
break;
|
||||
case 10:
|
||||
#line 86 "parser.y"
|
||||
{yyval.s = proio_cons(yyvsp[0].s, NULL);}
|
||||
break;
|
||||
case 11:
|
||||
#line 89 "parser.y"
|
||||
{yyval.s = proio_cons(yyvsp[-2].s, yyvsp[0].s);}
|
||||
break;
|
||||
case 12:
|
||||
#line 93 "parser.y"
|
||||
{yyval.s = proio_cons(make_word("="), proio_cons(make_word(yyvsp[-2].s), proio_cons(yyvsp[0].s, NULL)));
|
||||
free(yyvsp[-2].s); }
|
||||
break;
|
||||
case 13:
|
||||
#line 96 "parser.y"
|
||||
{yyval.s = yyvsp[0].s; }
|
||||
break;
|
||||
case 14:
|
||||
#line 99 "parser.y"
|
||||
{yyval.s = make_word(yyvsp[0].s); free(yyvsp[0].s);}
|
||||
break;
|
||||
case 15:
|
||||
#line 101 "parser.y"
|
||||
{yyval.s = make_string(yyvsp[0].s); free(yyvsp[0].s);}
|
||||
break;
|
||||
case 16:
|
||||
#line 103 "parser.y"
|
||||
{yyval.s = make_integer(yyvsp[0].s); free(yyvsp[0].s);}
|
||||
break;
|
||||
case 17:
|
||||
#line 105 "parser.y"
|
||||
{yyval.s = make_real(yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-2].s); free(yyvsp[0].s); }
|
||||
break;
|
||||
case 18:
|
||||
#line 107 "parser.y"
|
||||
{yyval.s = make_exp(yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-2].s); free(yyvsp[0].s); }
|
||||
break;
|
||||
case 19:
|
||||
#line 110 "parser.y"
|
||||
{yyval.s = make_exp2(yyvsp[-4].s, yyvsp[-2].s, yyvsp[0].s); free(yyvsp[-4].s); free(yyvsp[-2].s);
|
||||
free(yyvsp[0].s); }
|
||||
break;
|
||||
case 20:
|
||||
#line 114 "parser.y"
|
||||
{yyval.s = yyvsp[0].s;}
|
||||
break;
|
||||
#line 461 "y_tab.c"
|
||||
}
|
||||
yyssp -= yym;
|
||||
yystate = *yyssp;
|
||||
yyvsp -= yym;
|
||||
yym = yylhs[yyn];
|
||||
if (yystate == 0 && yym == 0)
|
||||
{
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
printf("yydebug: after reduction, shifting from state 0 to\
|
||||
state %d\n", YYFINAL);
|
||||
#endif
|
||||
yystate = YYFINAL;
|
||||
*++yyssp = YYFINAL;
|
||||
*++yyvsp = yyval;
|
||||
if (yychar < 0)
|
||||
{
|
||||
if ((yychar = yylex()) < 0) yychar = 0;
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
{
|
||||
yys = 0;
|
||||
if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
|
||||
if (!yys) yys = "illegal-symbol";
|
||||
printf("yydebug: state %d, reading %d (%s)\n",
|
||||
YYFINAL, yychar, yys);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
if (yychar == 0) goto yyaccept;
|
||||
goto yyloop;
|
||||
}
|
||||
if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
|
||||
yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
|
||||
yystate = yytable[yyn];
|
||||
else
|
||||
yystate = yydgoto[yym];
|
||||
#if YYDEBUG
|
||||
if (yydebug)
|
||||
printf("yydebug: after reduction, shifting from state %d \
|
||||
to state %d\n", *yyssp, yystate);
|
||||
#endif
|
||||
if (yyssp >= yyss + yystacksize - 1)
|
||||
{
|
||||
goto yyoverflow;
|
||||
}
|
||||
*++yyssp = yystate;
|
||||
*++yyvsp = yyval;
|
||||
goto yyloop;
|
||||
yyoverflow:
|
||||
yyerror("yacc stack overflow");
|
||||
yyabort:
|
||||
return (1);
|
||||
yyaccept:
|
||||
return (0);
|
||||
}
|
@ -62,11 +62,16 @@
|
||||
|
||||
#include <stdio.h> // SEEK_xxx constants
|
||||
#include <fcntl.h> // O_RDONLY &c
|
||||
#ifndef __MWERKS__
|
||||
#include <sys/types.h> // needed for stat
|
||||
#include <sys/stat.h> // stat
|
||||
#endif
|
||||
|
||||
// Microsoft compiler loves underscores, feed them to it
|
||||
#ifdef _MSC_VER
|
||||
|
||||
#ifndef __MWERKS__
|
||||
|
||||
// functions
|
||||
#define open _open
|
||||
#define close _close
|
||||
@ -81,6 +86,7 @@
|
||||
#define stat _stat
|
||||
|
||||
// constants
|
||||
|
||||
#define O_RDONLY _O_RDONLY
|
||||
#define O_WRONLY _O_WRONLY
|
||||
#define O_RDWR _O_RDWR
|
||||
@ -90,6 +96,8 @@
|
||||
|
||||
#define S_IFDIR _S_IFDIR
|
||||
#define S_IFREG _S_IFREG
|
||||
|
||||
#endif
|
||||
|
||||
#define W_OK 2
|
||||
#define R_OK 4
|
||||
@ -247,7 +255,11 @@ off_t wxFile::Read(void *pBuf, off_t nCount)
|
||||
{
|
||||
wxCHECK( (pBuf != NULL) && IsOpened(), 0 );
|
||||
|
||||
#ifdef __MWERKS__
|
||||
int iRc = ::read(m_fd, (char*) pBuf, nCount);
|
||||
#else
|
||||
int iRc = ::read(m_fd, pBuf, nCount);
|
||||
#endif
|
||||
if ( iRc == -1 ) {
|
||||
wxLogSysError(_("can't read from file descriptor %d"), m_fd);
|
||||
return wxInvalidOffset;
|
||||
@ -261,7 +273,11 @@ size_t wxFile::Write(const void *pBuf, size_t nCount)
|
||||
{
|
||||
wxCHECK( (pBuf != NULL) && IsOpened(), 0 );
|
||||
|
||||
#ifdef __MWERKS__
|
||||
int iRc = ::write(m_fd, (const char*) pBuf, nCount);
|
||||
#else
|
||||
int iRc = ::write(m_fd, pBuf, nCount);
|
||||
#endif
|
||||
if ( iRc == -1 ) {
|
||||
wxLogSysError(_("can't write to file descriptor %d"), m_fd);
|
||||
m_error = TRUE;
|
||||
@ -341,7 +357,7 @@ off_t wxFile::Length() const
|
||||
{
|
||||
wxASSERT( IsOpened() );
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#if defined( _MSC_VER ) && !defined( __MWERKS__ )
|
||||
int iRc = _filelength(m_fd);
|
||||
#else
|
||||
int iRc = tell(m_fd);
|
||||
@ -376,7 +392,7 @@ bool wxFile::Eof() const
|
||||
|
||||
int iRc;
|
||||
|
||||
#if defined(__UNIX__) || defined(__GNUWIN32__)
|
||||
#if defined(__UNIX__) || defined(__GNUWIN32__) || defined( __MWERKS__ )
|
||||
// @@ this doesn't work, of course, on unseekable file descriptors
|
||||
off_t ofsCur = Tell(),
|
||||
ofsMax = Length();
|
||||
|
@ -43,8 +43,13 @@
|
||||
#endif
|
||||
#endif
|
||||
#include <time.h>
|
||||
#ifndef __MWERKS__
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#else
|
||||
#include <stat.h>
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef __UNIX__
|
||||
#include <unistd.h>
|
||||
@ -52,7 +57,7 @@
|
||||
#endif
|
||||
|
||||
#ifdef __WINDOWS__
|
||||
#ifndef __GNUWIN32__
|
||||
#if !defined( __GNUWIN32__ ) && !defined( __MWERKS__ )
|
||||
#include <direct.h>
|
||||
#include <dos.h>
|
||||
#endif
|
||||
@ -1260,7 +1265,7 @@ char *wxGetWorkingDirectory(char *buf, int sz)
|
||||
{
|
||||
if (!buf)
|
||||
buf = new char[sz+1];
|
||||
#ifdef _MSC_VER
|
||||
#ifdef _MSC_VER
|
||||
if (_getcwd(buf, sz) == NULL) {
|
||||
#else
|
||||
if (getcwd(buf, sz) == NULL) {
|
||||
|
@ -20,7 +20,9 @@
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef __MWERKS__
|
||||
#include <memory.h>
|
||||
#endif
|
||||
#include <stdlib.h>
|
||||
#include "wx/string.h"
|
||||
#include "wx/utils.h"
|
||||
|
@ -49,7 +49,7 @@
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#if !defined(__WATCOMC__) && !defined(__VMS__)
|
||||
#if !defined(__WATCOMC__) && !defined(__VMS__) && !defined( __MWERKS__ )
|
||||
#include <memory.h>
|
||||
#endif
|
||||
|
||||
|
@ -127,8 +127,12 @@ arg1 : WORD
|
||||
#if (defined(__WXGTK__) || defined(__WXMOTIF__)) && !defined(NO_CONFIGURE)
|
||||
#include "lexer.c"
|
||||
#else
|
||||
#if (defined(__MWERKS__))
|
||||
#include "../common/cwlex_yy.c"
|
||||
#else
|
||||
#include "../common/lex_yy.c"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
void yyerror(s)
|
||||
|
@ -26,7 +26,9 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <ctype.h>
|
||||
#ifndef __MWERKS__
|
||||
#include <memory.h>
|
||||
#endif
|
||||
|
||||
#include "wx/defs.h"
|
||||
#include "wx/object.h"
|
||||
|
@ -35,7 +35,7 @@
|
||||
#include <time.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#if (!defined(__SC__) && !defined(__SGI__) && !defined(__GNUWIN32__)) || defined(__MINGW32__)
|
||||
#if (!defined(__SC__) && !defined(__SGI__) && !defined(__GNUWIN32__) && !defined(__MWERKS__)) || defined(__MINGW32__)
|
||||
#include <sys/timeb.h>
|
||||
#endif
|
||||
|
||||
@ -76,7 +76,7 @@ void wxStartTimer(void)
|
||||
gettimeofday(&tp);
|
||||
#endif
|
||||
wxStartTime = 1000*tp.tv_sec + tp.tv_usec/1000;
|
||||
#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__))
|
||||
#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__) || defined(__MWERKS__))
|
||||
time_t t0;
|
||||
struct tm *tp;
|
||||
time(&t0);
|
||||
@ -103,7 +103,7 @@ long wxGetElapsedTime(bool resetTimer)
|
||||
long newTime = 1000*tp.tv_sec + tp.tv_usec / 1000;
|
||||
if (resetTimer)
|
||||
wxStartTime = newTime;
|
||||
#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__))
|
||||
#elif (defined(__SC__) || defined(__SGI__) || defined(___BSDI__) || defined(__ALPHA__) || defined(__MINGW32__)|| defined(__MWERKS__))
|
||||
time_t t0;
|
||||
struct tm *tp;
|
||||
time(&t0);
|
||||
@ -145,7 +145,7 @@ bool wxGetLocalTime(long *timeZone, int *dstObserved)
|
||||
*dstObserved = tp->tm_isdst;
|
||||
#else
|
||||
|
||||
#if (((defined(__SYSV__) && !defined(__HPUX__)) || defined(__MSDOS__) || defined(__WXMSW__)) && !defined(__GNUWIN32__))
|
||||
#if (((defined(__SYSV__) && !defined(__HPUX__)) || defined(__MSDOS__) || defined(__WXMSW__)) && !defined(__GNUWIN32__) && !defined(__MWERKS__))
|
||||
#ifdef __BORLANDC__
|
||||
/* Borland uses underscores */
|
||||
*timeZone = _timezone;
|
||||
@ -154,8 +154,10 @@ bool wxGetLocalTime(long *timeZone, int *dstObserved)
|
||||
*timeZone = timezone;
|
||||
*dstObserved = daylight;
|
||||
#endif
|
||||
#elif defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) // || defined(__AIXV3__)
|
||||
#elif defined(__xlC__) || defined(__AIX__) || defined(__SVR4__) || defined(__SYSV__) || defined(__MWERKS__) || (defined(__GNUWIN32__) && !defined(__MINGW32__)) // || defined(__AIXV3__)
|
||||
#ifndef __MWERKS__ // shouldn't this be one scope below ?
|
||||
struct timeval tp;
|
||||
#endif
|
||||
#if defined(__SYSV__) || (defined(__GNUWIN32__) && !defined(__MINGW32))
|
||||
struct timezone tz;
|
||||
gettimeofday(&tp, &tz);
|
||||
@ -166,7 +168,11 @@ bool wxGetLocalTime(long *timeZone, int *dstObserved)
|
||||
struct tm *tp;
|
||||
time(&t0);
|
||||
tp = localtime(&t0);
|
||||
#ifndef __MWERKS__
|
||||
*timeZone = tp->tm_gmtoff; // ???
|
||||
#else
|
||||
*timeZone = 0 ;
|
||||
#endif
|
||||
*dstObserved = tp->tm_isdst;
|
||||
#endif
|
||||
#elif defined(__WXSTUBS__)
|
||||
|
@ -51,8 +51,10 @@
|
||||
#endif
|
||||
#endif
|
||||
#include <time.h>
|
||||
#ifndef __MWERKS__
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#endif
|
||||
|
||||
// Pattern matching code.
|
||||
// Yes, this path is deliberate (for Borland compilation)
|
||||
@ -118,8 +120,13 @@ int strncasecmp(const char *str_1, const char *str_2, size_t maxchar)
|
||||
#ifdef __WINDOWS__
|
||||
|
||||
#ifndef __GNUWIN32__
|
||||
#ifndef __MWERKS__
|
||||
#define strcasecmp stricmp
|
||||
#define strncasecmp strnicmp
|
||||
#else
|
||||
#define strcasecmp _stricmp
|
||||
#define strncasecmp _strnicmp
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
@ -807,3 +814,14 @@ wxString wxGetTextFromUser(const wxString& message, const wxString& caption,
|
||||
return wxString("");
|
||||
}
|
||||
|
||||
#ifdef __MWERKS__
|
||||
char *strdup(const char *s)
|
||||
{
|
||||
return strcpy( (char*) malloc( strlen( s ) + 1 ) , s ) ;
|
||||
}
|
||||
|
||||
int isascii( int c )
|
||||
{
|
||||
return ( c >= 0 && c < 128 ) ;
|
||||
}
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user