]> git.ipfire.org Git - thirdparty/automake.git/commitdiff
* automake.in (Languages): Split .s (asm) and .S (cppasm) into
authorAlexandre Duret-Lutz <adl@gnu.org>
Sun, 10 Oct 2004 15:35:09 +0000 (15:35 +0000)
committerAlexandre Duret-Lutz <adl@gnu.org>
Sun, 10 Oct 2004 15:35:09 +0000 (15:35 +0000)
separate languages.  Make cppasm (Preprocessed Assembler) aware
of CPPFLAGS, AM_CPPFLAGS.
(handle_languages): Fix typo.
(lang_cppasm_rewrite): New function.

ChangeLog
NEWS
automake.in

index 7e406e47d0f3fda27605faedaf724b2ad1a7fa83..dd396a044607e06aa3f7b05a56637d91f91a9845 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2004-10-10  Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+       * automake.in (Languages): Split .s (asm) and .S (cppasm) into
+       separate languages.  Make cppasm (Preprocessed Assembler) aware
+       of CPPFLAGS, AM_CPPFLAGS.
+       (handle_languages): Fix typo.
+       (lang_cppasm_rewrite): New function.
+
 2004-09-29  Alexandre Duret-Lutz  <adl@gnu.org>
 
        * tests/subobj9.test: Adjust regexes after previous patch.
diff --git a/NEWS b/NEWS
index 6b57038b14b3d2f8a8e625abc40836a9172040c9..385122bd1abd27167325e63e4f5be59f6b86b5fc 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -9,6 +9,10 @@ New in 1.9a:
   - The rebuild rules for distributed Yacc and Lex output will avoid
     overwriting existing files if AM_MAINTAINER_MODE and maintainer-mode
     is not enabled.
+
+  - Preprocessed assembler (*.S) compilation now honnor CPPFLAGS,
+    AM_CPPFLAGS and per-target _CPPFLAGS, unlike non-preprocessed
+    assembler (*.s).
 \f
 New in 1.9:
 
index 2a17076bf4a4dae7cfaed8dd6024e0781bb823a2..d10118ab9b97a964f6986a2130b4fcaaa4e60768 100755 (executable)
@@ -801,12 +801,28 @@ register_language ('name' => 'asm',
                   'config_vars' => ['CCAS', 'CCASFLAGS'],
 
                   'flags' => ['CCASFLAGS'],
-                  # Users can set AM_ASFLAGS to includes DEFS, INCLUDES,
-                  # or anything else required.  They can also set AS.
+                  # Users can set AM_CCASFLAGS to include DEFS, INCLUDES,
+                  # or anything else required.  They can also set CCAS.
                   'compile' => '$(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS)',
                   'compiler' => 'CCASCOMPILE',
                   'compile_flag' => '-c',
-                  'extensions' => ['.s', '.S'],
+                  'extensions' => ['.s'],
+
+                  # With assembly we still use the C linker.
+                  '_finish' => \&lang_c_finish);
+
+# Preprocessed Assembler.
+register_language ('name' => 'cppasm',
+                  'Name' => 'Preprocessed Assembler',
+                  'config_vars' => ['CCAS', 'CCASFLAGS'],
+
+                  'flags' => ['CCASFLAGS','CPPFLAGS'],
+                  # Users can set AM_ASFLAGS to include DEFS, INCLUDES,
+                  # or anything else required.  They can also set CCAS.
+                  'compile' => '$(CCAS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS)',
+                  'compiler' => 'CPPASCOMPILE',
+                  'compile_flag' => '-c',
+                  'extensions' => ['.S'],
 
                   # With assembly we still use the C linker.
                   '_finish' => \&lang_c_finish);
@@ -1386,7 +1402,7 @@ sub handle_languages
                                        %transform, %lang);
 
        # If the source to a program consists entirely of code from a
-       # `pure' language, for instance C++ for Fortran 77, then we
+       # `pure' language, for instance C++ or Fortran 77, then we
        # don't need the C compiler code.  However if we run into
        # something unusual then we do generate the C code.  There are
        # probably corner cases here that do not work properly.
@@ -5190,6 +5206,12 @@ 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
 {