]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
[ng] automake: don't define many identical 'lang_*_rewrite' subroutines
authorStefano Lattarini <stefano.lattarini@gmail.com>
Wed, 6 Jun 2012 07:52:22 +0000 (09:52 +0200)
committerStefano Lattarini <stefano.lattarini@gmail.com>
Thu, 7 Jun 2012 10:53:00 +0000 (12:53 +0200)
This is just a refactoring prompted by future planned changes.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
automake.in

index 176e882944852015019b91371097c7c681c822b9..a78786673b6c0882763ecde43bec7971f03dff84 100644 (file)
@@ -1683,6 +1683,7 @@ sub handle_single_transform ($$$$$%)
            # generates another source file which we must then process
            # further.
            my $subr = \&{'lang_' . $lang->name . '_rewrite'};
+            defined &$subr or $subr = \&lang_sub_obj;
            my ($r, $source_extension)
                = &$subr ($directory, $base, $extension,
                          $obj, $have_per_exec_flags, $var);
@@ -5144,12 +5145,6 @@ sub lang_c_rewrite
     return $r;
 }
 
-# Rewrite a single C++ source file.
-sub lang_cxx_rewrite
-{
-    return &lang_sub_obj;
-}
-
 # Rewrite a single header file.
 sub lang_header_rewrite
 {
@@ -5166,7 +5161,7 @@ sub lang_vala_rewrite
     return (LANG_SUBDIR, $newext);
 }
 
-# Rewrite a single yacc file.
+# Rewrite a single yacc/yacc++ file.
 sub lang_yacc_rewrite
 {
     my ($directory, $base, $ext) = @_;
@@ -5175,18 +5170,9 @@ sub lang_yacc_rewrite
     (my $newext = $ext) =~ tr/y/c/;
     return ($r, $newext);
 }
+sub lang_yaccxx_rewrite { lang_yacc_rewrite (@_); };
 
-# Rewrite a single yacc++ file.
-sub lang_yaccxx_rewrite
-{
-    my ($directory, $base, $ext) = @_;
-
-    my $r = &lang_sub_obj;
-    (my $newext = $ext) =~ tr/y/c/;
-    return ($r, $newext);
-}
-
-# Rewrite a single lex file.
+# Rewrite a single lex/lex++ file.
 sub lang_lex_rewrite
 {
     my ($directory, $base, $ext) = @_;
@@ -5195,76 +5181,7 @@ sub lang_lex_rewrite
     (my $newext = $ext) =~ tr/l/c/;
     return ($r, $newext);
 }
-
-# Rewrite a single lex++ file.
-sub lang_lexxx_rewrite
-{
-    my ($directory, $base, $ext) = @_;
-
-    my $r = &lang_sub_obj;
-    (my $newext = $ext) =~ tr/l/c/;
-    return ($r, $newext);
-}
-
-# Rewrite a single assembly file.
-sub lang_asm_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single preprocessed assembly file.
-sub lang_cppasm_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single Fortran 77 file.
-sub lang_f77_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single Fortran file.
-sub lang_fc_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single preprocessed Fortran file.
-sub lang_ppfc_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single preprocessed Fortran 77 file.
-sub lang_ppf77_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single ratfor file.
-sub lang_ratfor_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single Objective C file.
-sub lang_objc_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single Objective C++ file.
-sub lang_objcxx_rewrite
-{
-    return &lang_sub_obj;
-}
-
-# Rewrite a single Unified Parallel C file.
-sub lang_upc_rewrite
-{
-    return &lang_sub_obj;
-}
+sub lang_lexxx_rewrite { lang_lex_rewrite (@_); };
 
 # Rewrite a single Java file.
 sub lang_java_rewrite