view src/cs/drivers/drv_app/ffs/board/mkeffs.pl @ 266:160a5b3a076c

new ABB_SLEEP_RESTRICTION definition in fc-target.h When we first introduced the mechanism to suppress ABB superdeep sleep on targets with LCDs powered from Iota VRIO, we made it conditional on CONFIG_TARGET_LUNA. This conditional is now being generalized: the feature in question is now conditionalized on the new ABB_SLEEP_RESTRICTION preprocessor symbol, to be defined in targets/*.h for those targets that need it. The new ABB_SLEEP_RESTRICTION definition is being added to targets/luna[12].h to keep the actual logic unchanged.
author Mychaela Falconia <falcon@freecalypso.org>
date Wed, 02 Jun 2021 02:12:14 +0000
parents 4e78acac3d88
children
line wrap: on
line source

#!/usr/bin/perl -w

if ($#ARGV < 0) { die "Must give argument 'c' or 'pl'"; }

$c = ($ARGV[0] eq "c");
shift;

$c && c_begin();
!$c && pl_begin();

while (<>) {
    chop;
    if (/^\s*(EFFS_\w+)\s*=\s*(-?[0-9]+),\s*\/\* (.*) \*\//) {
	$name = $1;
	$code = $2;
	$text = $3;
	$c  && print "    case $name: return \"$text\"; /* $code */\n";
	!$c && print "\$$name = $code;\n";
	!$c && print "\$FFS_ERRORSTR{$code} = \"$text\";\n";
    }
}

$c && c_end();
!$c && pl_end();


sub c_begin
{
    print "/* This file is autogenerated --- do not edit. */\n\n";
    
    print "#include \"ffs/ffs.h\"\n\n";
    
    print "char *ffs_strerror(effs_t error)\n";
    print "{\n";
    print "    switch (error) {\n";
}

sub c_end
{
    print "    default: return \"unknown ffs error code!\";\n";
    print "    }\n";
    print "}\n";
}

sub pl_begin
{
    print "# This file is autogenerated --- do not edit.\n\n";
}

sub pl_end
{
}