define __KERNEL_STRICT_NAMES to avoid inclusion of kernel types on systems that carry...
[cake.git] / tools / sfdc / MacroMOS.pl
blob8e8ba213034455b14824fb4a1d1fef6b33c2e5c9
2 ### Class MacroMOS: Implements MorphOS-only features for macro files ##########
4 BEGIN {
5 package MacroMOS;
6 use vars qw(@ISA);
7 @ISA = qw (MacroLP);
9 sub new {
10 my $proto = shift;
11 my $class = ref($proto) || $proto;
12 my $self = $class->SUPER::new( @_ );
13 bless ($self, $class);
15 $self->{macros_h} = "ppcinline/macros.h";
17 return $self;
20 sub function_end {
21 my $self = shift;
22 my %params = @_;
23 my $prototype = $params{'prototype'};
24 my $sfd = $self->{SFD};
27 if ($$prototype{'type'} eq 'function') {
29 if (!$prototype->{nb}) {
30 print ",\\\n , (___base)";
33 if ($self->{FUNCARGTYPE} ne '') {
34 my $fa = $self->{FUNCARGTYPE};
36 $fa =~ s/\(\*\)/(*__fpt)/;
38 print ", $fa";
41 print ", IF_CACHEFLUSHALL, NULL, 0, IF_CACHEFLUSHALL, NULL, 0)\n";
43 else {
44 $self->SUPER::function_end (@_);