diff options
author | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-01-31 22:53:44 +0100 |
---|---|---|
committer | Stefano Lattarini <stefano.lattarini@gmail.com> | 2012-02-01 21:49:14 +0100 |
commit | dc04691d13078ee7aebb12d161abfa7301a6332b (patch) | |
tree | 2ee0be17a4964f06b79cf57cb9e46d5d4461ee96 /lib/am/yacc.am | |
parent | a6a7de012b649535a9b88640b370bd4baa942742 (diff) | |
download | automake-dc04691d13078ee7aebb12d161abfa7301a6332b.tar.gz |
[ng] yacc, lex: fix subdir VPATH builds
Starting with recent changes, the automake-generated configure
code does not create the '.Po' files for dependency tracking
anymore. This is good and proper, but unfortunately, when the
'subdir-objects' option is in use *and* a VPATH build is being
performed, it breaks some rules that *implicitly* relied on that
shell code having already created the subdirectory where the
generated files were to be placed. This happened in particular
with Yacc and Lex rules. So fix them to instead explicitly
create the required directories, if not already present.
Bug revealed by failures of 'lex5.test' and 'yacc8.test' with
GNU make 3.82 (on all of Debian, Fedora and Solaris).
* lib/am/yacc.am, lib/am/lex.am: Update.
* tests/Makefile.am (XFAIL_TESTS): Remove 'lex-subobj-nodep.test',
as the test now passes.
* tests/yacc-subobj-nodep.test: New test.
* tests/list-of-tests.mk: Add it.
Diffstat (limited to 'lib/am/yacc.am')
-rw-r--r-- | lib/am/yacc.am | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/am/yacc.am b/lib/am/yacc.am index 6d35cd4ba..4f608b0ac 100644 --- a/lib/am/yacc.am +++ b/lib/am/yacc.am @@ -1,6 +1,6 @@ ## automake - create Makefile.in from Makefile.am -## Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004, 2006, 2009 -## Free Software Foundation, Inc. +## Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004, 2006, 2009, 2012 +## Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -41,6 +41,7 @@ endif %?MAINTAINER-MODE% ?GENERIC?%EXT%%DERIVED-EXT%: ?!GENERIC?%OBJ%: %SOURCE% +?SUBDIROBJ? %SILENT%test -d $(dir $@) || $(MKDIR_P) $(dir $@) ?GENERIC? %VERBOSE%$(am__skipyacc) $(SHELL) $(YLWRAP) %SOURCE% y.tab.c %OBJ% y.tab.h %BASE%.h y.output %BASE%.output -- %COMPILE% ?!GENERIC? %VERBOSE% \ ?!GENERIC??DIST_SOURCE? $(am__skipyacc) \ |