mirror of
https://git.savannah.gnu.org/git/gnulib.git
synced 2025-08-08 17:22:05 +03:00
parse-datetime: Avoid warnings from bison versions >= 3.3.
Reported by Bernhard Voelker <mail@bernhard-voelker.de>. * modules/parse-datetime (Makefile.am): Don't pass option '-y' to bison.
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
2019-07-19 Bruno Haible <bruno@clisp.org>
|
||||
|
||||
parse-datetime: Avoid warnings from bison versions >= 3.3.
|
||||
Reported by Bernhard Voelker <mail@bernhard-voelker.de>.
|
||||
* modules/parse-datetime (Makefile.am): Don't pass option '-y' to bison.
|
||||
|
||||
2019-07-19 Bruno Haible <bruno@clisp.org>
|
||||
|
||||
parse-datetime: Require Bison 2.4 or newer.
|
||||
|
@@ -30,22 +30,26 @@ configure.ac:
|
||||
gl_PARSE_DATETIME
|
||||
|
||||
Makefile.am:
|
||||
# This rule overrides the Automake generated .y.c rule, to ensure that the
|
||||
# parse-datetime.c file gets generated in the source directory, not in the
|
||||
# build directory.
|
||||
# The Automake generated .y.c rule is broken: When executed in a VPATH build,
|
||||
# - The .c file gets generated in the build directory. But since it requires
|
||||
# special tools to rebuild it, we need to distribute it in the tarballs,
|
||||
# and by the GNU Coding Standards
|
||||
# <https://www.gnu.org/prep/standards/html_node/Makefile-Basics.html>
|
||||
# the file should be generated in the source directory.
|
||||
# - The #line numbers in the .c file refer to a nonexistent file once it
|
||||
# has been moved from the build directory to the source directory. This
|
||||
# leads to error if 'lcov' is used later.
|
||||
# Additionally, here we assume GNU Bison and therefore don't need the ylwrap
|
||||
# script.
|
||||
# Therefore we override this rule.
|
||||
parse-datetime.c: parse-datetime.y
|
||||
$(AM_V_GEN)$(SHELL) $(YLWRAP) $(srcdir)/parse-datetime.y \
|
||||
y.tab.c parse-datetime.c \
|
||||
y.tab.h parse-datetime.h \
|
||||
y.output parse-datetime.output \
|
||||
-- $(PARSE_DATETIME_BISON) -y -d $(YFLAGS) $(AM_YFLAGS) && \
|
||||
sed -e 's|".*/parse-datetime.y"|"parse-datetime.y"|' \
|
||||
< parse-datetime.c > parse-datetime.c-t && \
|
||||
rm -f parse-datetime.c && \
|
||||
mv parse-datetime.c-t $(srcdir)/parse-datetime.c
|
||||
$(AM_V_YACC)$(PARSE_DATETIME_BISON) -d $(YFLAGS) $(AM_YFLAGS) $(srcdir)/parse-datetime.y \
|
||||
&& sed -e 's|".*/parse-datetime.y"|"parse-datetime.y"|' < parse-datetime.tab.c > parse-datetime.c-t \
|
||||
&& rm -f parse-datetime.tab.c parse-datetime.tab.h \
|
||||
&& mv parse-datetime.c-t $(srcdir)/parse-datetime.c
|
||||
lib_SOURCES += parse-datetime.y
|
||||
BUILT_SOURCES += parse-datetime.c
|
||||
MOSTLYCLEANFILES += parse-datetime.c-t
|
||||
MOSTLYCLEANFILES += parse-datetime.tab.c parse-datetime.tab.h parse-datetime.c-t
|
||||
MAINTAINERCLEANFILES += parse-datetime.c
|
||||
EXTRA_DIST += parse-datetime.c
|
||||
|
||||
|
Reference in New Issue
Block a user