diff options
Diffstat (limited to 'LuaSL')
-rw-r--r-- | LuaSL/README | 24 | ||||
-rwxr-xr-x | LuaSL/build.sh | 2 | ||||
-rw-r--r-- | LuaSL/src/LuaSL_lexer.l | 3 |
3 files changed, 7 insertions, 22 deletions
diff --git a/LuaSL/README b/LuaSL/README index c02b180..c019fb7 100644 --- a/LuaSL/README +++ b/LuaSL/README | |||
@@ -5,6 +5,10 @@ compatability first, then adding Lua extensions. It aims to replace the | |||
5 | woeful XEngine from OpenSim, and at a later stage, be the basis for a | 5 | woeful XEngine from OpenSim, and at a later stage, be the basis for a |
6 | client side scripting engine. | 6 | client side scripting engine. |
7 | 7 | ||
8 | To compile this, you will need Enlightenment Foundation Libraries (EFL) | ||
9 | installed in either /opt/e17 or /usr. These are typical places it get's | ||
10 | installed in. | ||
11 | |||
8 | 12 | ||
9 | Design. | 13 | Design. |
10 | ------- | 14 | ------- |
@@ -61,23 +65,3 @@ etc. | |||
61 | 65 | ||
62 | Performance testing will have to be done on 5000 scripts, to see how | 66 | Performance testing will have to be done on 5000 scripts, to see how |
63 | that compares against XEngine. | 67 | that compares against XEngine. |
64 | |||
65 | |||
66 | Parser. | ||
67 | ------- | ||
68 | |||
69 | The SL viewer code includes a flex/bison based parser that generates C++ | ||
70 | code that depends on various other bits of LL source code. It's GPL 2, | ||
71 | though the flex and bison source files includes no license text. | ||
72 | |||
73 | Flex is BSD and written in C. Bison is GNU (GPL 3 since 2.4.1, 2.3 is | ||
74 | GPL2) and written in C. It used to include info that stuff generated by | ||
75 | bison had to be GPL. Berkeley YACC is public domain, and written in C. | ||
76 | There is also btyacc, based on the berkeley version, but with some | ||
77 | useful extras. btyacc version 3 (the version coming from my version of | ||
78 | Ubuntu) apparently no longer supports C, only C++. It's written in C | ||
79 | though. | ||
80 | |||
81 | Let's see if flex and btyacc will do the trick, and output C. Might be | ||
82 | best to have the LSL to Lua converter as a seperate executable. Think | ||
83 | I'll end up writing my own parser. | ||
diff --git a/LuaSL/build.sh b/LuaSL/build.sh index 65c1581..7455847 100755 --- a/LuaSL/build.sh +++ b/LuaSL/build.sh | |||
@@ -6,6 +6,8 @@ export LOCALDIR=`pwd` | |||
6 | cd src | 6 | cd src |
7 | rm -f ../LuaSL ../LuaSL_parser ../*.o *.output *.backup ../*.edj LuaSL_lexer.h LuaSL_lexer.c LuaSL_lemon_yaccer.h LuaSL_lemon_yaccer.c LuaSL_lemon_yaccer.out | 7 | rm -f ../LuaSL ../LuaSL_parser ../*.o *.output *.backup ../*.edj LuaSL_lexer.h LuaSL_lexer.c LuaSL_lemon_yaccer.h LuaSL_lemon_yaccer.c LuaSL_lemon_yaccer.out |
8 | 8 | ||
9 | |||
10 | # This assumes you have EFL installed in one of two standard places. | ||
9 | if [ -d "/opt/e17" ] | 11 | if [ -d "/opt/e17" ] |
10 | then | 12 | then |
11 | export E17DIR="/opt/e17" | 13 | export E17DIR="/opt/e17" |
diff --git a/LuaSL/src/LuaSL_lexer.l b/LuaSL/src/LuaSL_lexer.l index 2661b76..8a5e8ad 100644 --- a/LuaSL/src/LuaSL_lexer.l +++ b/LuaSL/src/LuaSL_lexer.l | |||
@@ -1,8 +1,7 @@ | |||
1 | %{ | 1 | %{ |
2 | 2 | ||
3 | #include "LuaSL.h" | ||
4 | #define excludeLexer | 3 | #define excludeLexer |
5 | #include "LuaSL_LSL_tree.h" | 4 | #include "LuaSL.h" |
6 | 5 | ||
7 | int common(YYSTYPE *lval, char *text, LuaSL_yyparseParam *param, boolean checkIgnorable, int type); | 6 | int common(YYSTYPE *lval, char *text, LuaSL_yyparseParam *param, boolean checkIgnorable, int type); |
8 | 7 | ||