automake-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 2/2] Bugfix: $(AM_FLAGS)/$(FLAGS) precedence in Yacc/Lex.


From: Stefano Lattarini
Subject: Re: [PATCH 2/2] Bugfix: $(AM_FLAGS)/$(FLAGS) precedence in Yacc/Lex.
Date: Tue, 8 Jun 2010 16:37:34 +0200
User-agent: KMail/1.12.1 (Linux/2.6.30-2-686; KDE/4.3.4; i686; ; )

This change probably deserves a NEWS entry.  Since I was at it, I also 
rebased the patches against latest master.

-*-*-

* automake.in: Fix registration of languages "Lex", "Lex (C++)",
"Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
$(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
* tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
* NEWS: Updated.
From 1904c8dbb9b829f9e18ae10924dc6f2112ce4d3a Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Tue, 8 Jun 2010 16:32:40 +0200
Subject: [PATCH 2/2] Bugfix: $(AM_FLAGS)/$(FLAGS) precedence in Yacc/Lex.

* automake.in: Fix registration of languages "Lex", "Lex (C++)",
"Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
$(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
* tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
* NEWS: Updated.
---
 ChangeLog         |    8 ++++++++
 NEWS              |    5 +++++
 automake.in       |    8 ++++----
 tests/Makefile.am |    6 +-----
 tests/Makefile.in |    6 +-----
 5 files changed, 19 insertions(+), 14 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 1fb0942..ca2327e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2010-06-08  Stefano Lattarini  <address@hidden>
 
+       Fix bugs in Automake Yacc/Lex support w.r.t. $(AM_FLAGS) and
+       $(FLAGS) precedence.
+       * automake.in: Fix registration of languages "Lex", "Lex (C++)",
+       "Yacc" and "Yacc (C++)", so that $(LFLAGS) has precedence over
+       $(AM_LFLAGS) and $(YFLAGS) has precedence over $(AM_YFLAGS).
+       * tests/Makefile.am (XFAIL_TESTS): Updated accordingly.
+       * NEWS: Updated.
+
        New tests, exposing bugs in Automake Yacc/Lex support w.r.t.
        $(AM_FLAGS) and $(FLAGS) precedence.
        * tests/lflags.test: New test, check that user $(LFLAGS) takes
diff --git a/NEWS b/NEWS
index 13b28c0..987ec07 100644
--- a/NEWS
+++ b/NEWS
@@ -38,6 +38,11 @@ Bugs fixed in 1.11a:
 
 * Long standing bugs:
 
+  - Automake variables $(AM_LFLAGS) and $(AM_YFLAGS) took precedence over
+    user variables $(FLAGS) and $(YFLAGS) (respectively).  This was in
+    contrast with both reasonable user's expectations and the Automake
+    manual; so the precedence is now the other way round.
+
   - On Darwin 9, `pythondir' and `pyexecdir' pointed below `/Library/Python'
     even if the `--prefix' argument pointed outside of a system directory.
     AM_PATH_PYTHON has been fixed to ignore the value returned from python's
diff --git a/automake.in b/automake.in
index be336a1..baab721 100644
--- a/automake.in
+++ b/automake.in
@@ -832,7 +832,7 @@ register_language ('name' => 'yacc',
                   'Name' => 'Yacc',
                   'config_vars' => ['YACC'],
                   'flags' => ['YFLAGS'],
-                  'compile' => '$(YACC) $(YFLAGS) $(AM_YFLAGS)',
+                  'compile' => '$(YACC) $(AM_YFLAGS) $(YFLAGS)',
                   'ccer' => 'YACC',
                   'compiler' => 'YACCCOMPILE',
                   'extensions' => ['.y'],
@@ -849,7 +849,7 @@ register_language ('name' => 'yaccxx',
                   'flags' => ['YFLAGS'],
                   'ccer' => 'YACC',
                   'compiler' => 'YACCCOMPILE',
-                  'compile' => '$(YACC) $(YFLAGS) $(AM_YFLAGS)',
+                  'compile' => '$(YACC) $(AM_YFLAGS) $(YFLAGS)',
                   'extensions' => ['.y++', '.yy', '.yxx', '.ypp'],
                   'output_extensions' => sub { (my $ext = $_[0]) =~ tr/y/c/;
                                                return ($ext,) },
@@ -863,7 +863,7 @@ register_language ('name' => 'lex',
                   'config_vars' => ['LEX'],
                   'rule_file' => 'lex',
                   'flags' => ['LFLAGS'],
-                  'compile' => '$(LEX) $(LFLAGS) $(AM_LFLAGS)',
+                  'compile' => '$(LEX) $(AM_LFLAGS) $(LFLAGS)',
                   'ccer' => 'LEX',
                   'compiler' => 'LEXCOMPILE',
                   'extensions' => ['.l'],
@@ -877,7 +877,7 @@ register_language ('name' => 'lexxx',
                   'config_vars' => ['LEX'],
                   'rule_file' => 'lex',
                   'flags' => ['LFLAGS'],
-                  'compile' => '$(LEX) $(LFLAGS) $(AM_LFLAGS)',
+                  'compile' => '$(LEX) $(AM_LFLAGS) $(LFLAGS)',
                   'ccer' => 'LEX',
                   'compiler' => 'LEXCOMPILE',
                   'extensions' => ['.l++', '.ll', '.lxx', '.lpp'],
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 5cd0477..2fccfbd 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -21,11 +21,7 @@ all.test                                     \
 auxdir2.test                                   \
 cond17.test                                    \
 gcj6.test                                      \
-txinfo5.test                                   \
-lflags.test                                    \
-lflags2.test                                   \
-yflags.test                                    \
-yflags2.test
+txinfo5.test
 
 include $(srcdir)/parallel-tests.am
 
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 349da85..27f5ef0 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -255,11 +255,7 @@ all.test                                   \
 auxdir2.test                                   \
 cond17.test                                    \
 gcj6.test                                      \
-txinfo5.test                                   \
-lflags.test                                    \
-lflags2.test                                   \
-yflags.test                                    \
-yflags2.test
+txinfo5.test
 
 parallel_tests = check-p.test check10-p.test check11-p.test \
        check2-p.test check3-p.test check4-p.test check5-p.test \
-- 
1.6.5


reply via email to

[Prev in Thread] Current Thread [Next in Thread]