X-Git-Url: https://ruderich.org/simon/gitweb/?p=blhc%2Fblhc.git;a=blobdiff_plain;f=bin%2Fblhc;h=1e774954e1131345c35e75f2c70875216e8be89a;hp=c4e814c0cae8275355fdea6ca996170982c9a90f;hb=42b57fd5396d424483fb2856a3f2abc6ffae2fc4;hpb=e00e2e347199b213d24540949b832d14cf5bd5dc diff --git a/bin/blhc b/bin/blhc index c4e814c..1e77495 100755 --- a/bin/blhc +++ b/bin/blhc @@ -89,10 +89,10 @@ my @source_no_preprocess_compile_cpp = ( qw( mii ), ); my @source_no_preprocess_compile_ada = ( + # Ada source + qw( ada ), # Ada body qw( adb ), - # If you add another file, fix use of @source_no_preprocess_compile_ada - # below (search for $compile_ada). ); my @source_no_preprocess_compile = ( # C @@ -106,11 +106,15 @@ my @source_no_preprocess_compile = ( # Ada @source_no_preprocess_compile_ada, ); +my @source_no_preprocess_no_compile_ada = ( + # Ada specification + qw( ads ), +); my @source_no_preprocess_no_compile = ( # Assembly qw( s ), - # Ada specification - qw( ads ), + # Ada + @source_no_preprocess_no_compile_ada, ); my @source_no_preprocess = ( @source_no_preprocess_compile, @@ -161,6 +165,10 @@ my %extensions_compile_cpp = map { $_ => 1 } ( @source_preprocess_compile_cpp, @source_no_preprocess_compile_cpp, ); +my %extensions_ada = map { $_ => 1 } ( + @source_no_preprocess_compile_ada, + @source_no_preprocess_no_compile_ada, +); my %extensions_object = map { $_ => 1 } ( @object, ); @@ -1230,10 +1238,9 @@ LINE: $compile_cpp = 1; # Ada needs special CFLAGS, use them if only ada files are compiled. } elsif ($ada - and $compile - and array_equal(\@extensions, - \@source_no_preprocess_compile_ada)) { + and extension_found(\%extensions_ada, @extensions)) { $compile_ada = 1; + $preprocess = 0; # Ada uses no CPPFLAGS @cflags_backup = @cflags; @cflags = @cflags_ada; }