diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-06-24 21:46:17 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-06-24 21:46:17 +0000 |
commit | af980d8bcbfa37f3391f068f851f68b390769f71 (patch) | |
tree | 73fdbafa91b6c68bdbc7754b1deb9d1265ea570e | |
parent | 7a8e1e8fc00b4255c28696962dc240a70bc6e082 (diff) | |
download | rockbox-af980d8bcbfa37f3391f068f851f68b390769f71.tar.gz rockbox-af980d8bcbfa37f3391f068f851f68b390769f71.zip |
Lua: expose BUTTON_* defines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21500 a1c6a512-1295-4272-9138-f99709370657
-rwxr-xr-x | apps/plugins/lua/button_helper.pl | 64 | ||||
-rw-r--r-- | apps/plugins/lua/lua.make | 8 |
2 files changed, 70 insertions, 2 deletions
diff --git a/apps/plugins/lua/button_helper.pl b/apps/plugins/lua/button_helper.pl new file mode 100755 index 0000000000..43307a0e52 --- /dev/null +++ b/apps/plugins/lua/button_helper.pl | |||
@@ -0,0 +1,64 @@ | |||
1 | #!/usr/bin/env perl | ||
2 | ############################################################################ | ||
3 | # __________ __ ___. | ||
4 | # Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
5 | # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
6 | # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
7 | # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
8 | # \/ \/ \/ \/ \/ | ||
9 | # $Id$ | ||
10 | # | ||
11 | # Copyright (C) 2009 by Maurus Cuelenaere | ||
12 | # | ||
13 | # All files in this archive are subject to the GNU General Public License. | ||
14 | # See the file COPYING in the source tree root for full license agreement. | ||
15 | # | ||
16 | # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | ||
17 | # KIND, either express or implied. | ||
18 | # | ||
19 | ############################################################################ | ||
20 | |||
21 | $svnrev = '$Revision$'; | ||
22 | |||
23 | print <<EOF | ||
24 | #include <stdio.h> | ||
25 | #include <stdbool.h> | ||
26 | #include "button-target.h" | ||
27 | |||
28 | struct button | ||
29 | { | ||
30 | char* name; | ||
31 | unsigned long value; | ||
32 | }; | ||
33 | |||
34 | static struct button buttons[] = { | ||
35 | EOF | ||
36 | ; | ||
37 | |||
38 | while(my $line = <STDIN>) | ||
39 | { | ||
40 | chomp($line); | ||
41 | if($line =~ /^#define (BUTTON_[^\s]+) (.+)$/) | ||
42 | { | ||
43 | printf "{\"%s\", %s},\n", $1, $2; | ||
44 | } | ||
45 | } | ||
46 | |||
47 | print <<EOF | ||
48 | }; | ||
49 | |||
50 | int main(void) | ||
51 | { | ||
52 | unsigned int i; | ||
53 | printf("-- Don't change this file!\\n"); | ||
54 | printf("-- It is automatically generated of button-target.h \%s\\n", "$svnrev"); | ||
55 | printf("rb.buttons = {\\n"); | ||
56 | for(i=0; i<sizeof(buttons)/sizeof(struct button); i++) | ||
57 | printf("\\t\%s = \%ld,\\n", buttons[i].name, buttons[i].value); | ||
58 | printf("}\\n"); | ||
59 | |||
60 | return 0; | ||
61 | } | ||
62 | |||
63 | EOF | ||
64 | ; | ||
diff --git a/apps/plugins/lua/lua.make b/apps/plugins/lua/lua.make index 596e32045f..1232ddf043 100644 --- a/apps/plugins/lua/lua.make +++ b/apps/plugins/lua/lua.make | |||
@@ -30,10 +30,14 @@ else | |||
30 | ROCKS += $(LUA_BUILDDIR)/lua.rock | 30 | ROCKS += $(LUA_BUILDDIR)/lua.rock |
31 | endif | 31 | endif |
32 | 32 | ||
33 | $(LUA_BUILDDIR)/lua.rock: $(LUA_OBJ) $(LUA_BUILDDIR)/actions.lua | 33 | $(LUA_BUILDDIR)/lua.rock: $(LUA_OBJ) $(LUA_BUILDDIR)/actions.lua $(LUA_BUILDDIR)/buttons.lua |
34 | 34 | ||
35 | $(LUA_BUILDDIR)/actions.lua: $(LUA_OBJ) | 35 | $(LUA_BUILDDIR)/actions.lua: $(LUA_OBJ) |
36 | $(call PRINTS,GEN $(@F))$(CC) $(PLUGINFLAGS) -E $(APPSDIR)/action.h | $(LUA_SRCDIR)/action_helper.pl > $(LUA_BUILDDIR)/actions.lua | 36 | $(call PRINTS,GEN $(@F))$(CC) $(INCLUDES) -E $(APPSDIR)/action.h | $(LUA_SRCDIR)/action_helper.pl > $(LUA_BUILDDIR)/actions.lua |
37 | |||
38 | $(LUA_BUILDDIR)/buttons.lua: $(LUA_OBJ) | ||
39 | $(SILENT)$(CC) $(INCLUDES) -dM -E -include button-target.h - < /dev/null | $(LUA_SRCDIR)/button_helper.pl | $(HOSTCC) -fno-builtin $(INCLUDES) -x c -o $(LUA_BUILDDIR)/button_helper - | ||
40 | $(call PRINTS,GEN $(@F))$(LUA_BUILDDIR)/button_helper > $(LUA_BUILDDIR)/buttons.lua | ||
37 | 41 | ||
38 | $(LUA_BUILDDIR)/lua.refmap: $(LUA_OBJ) | 42 | $(LUA_BUILDDIR)/lua.refmap: $(LUA_OBJ) |
39 | 43 | ||