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 @@ +#!/usr/bin/env perl +############################################################################ +# __________ __ ___. +# Open \______ \ ____ ____ | | _\_ |__ _______ ___ +# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / +# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < +# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ +# \/ \/ \/ \/ \/ +# $Id$ +# +# Copyright (C) 2009 by Maurus Cuelenaere +# +# All files in this archive are subject to the GNU General Public License. +# See the file COPYING in the source tree root for full license agreement. +# +# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY +# KIND, either express or implied. +# +############################################################################ + +$svnrev = '$Revision$'; + +print < +#include +#include "button-target.h" + +struct button +{ + char* name; + unsigned long value; +}; + +static struct button buttons[] = { +EOF +; + +while(my $line = ) +{ + chomp($line); + if($line =~ /^#define (BUTTON_[^\s]+) (.+)$/) + { + printf "{\"%s\", %s},\n", $1, $2; + } +} + +print < $(LUA_BUILDDIR)/actions.lua + $(call PRINTS,GEN $(@F))$(CC) $(INCLUDES) -E $(APPSDIR)/action.h | $(LUA_SRCDIR)/action_helper.pl > $(LUA_BUILDDIR)/actions.lua + +$(LUA_BUILDDIR)/buttons.lua: $(LUA_OBJ) + $(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 - + $(call PRINTS,GEN $(@F))$(LUA_BUILDDIR)/button_helper > $(LUA_BUILDDIR)/buttons.lua $(LUA_BUILDDIR)/lua.refmap: $(LUA_OBJ)