Subject: automake fails to honor `-d' in AM_YFLAGS when variable expansions are involved
From: Stefano Lattarini <[email-masked]>
To: [email-masked]
Date: Fri, 7 Jan 2011 15:36:43 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

severity: wishlist
thanks

-*-*-

Hello automakers.

Currently, automake is not smart enough to resolve variable expansions
in AM_YFLAGS (or foo_YFLAGS) when scanning them for the `-d' flag.

For example:

  $ cat configure.ac
  AC_INIT(x,0)
  AM_INIT_AUTOMAKE(foreign)
  AC_PROG_CC
  AC_PROG_YACC
  AC_CONFIG_FILES(Makefile)
  $ cat Makefile.am
  bin_PROGRAMS = foo bar
  foo_SOURCES = foo.y
  bar_SOURCES = bar.y
  my_YFLAGS = -d
  AM_YFLAGS = $(my_YFLAGS)
  bar_YFLAGS = $(my_YFLAGS)
  $ aclocal
  $ automake -a
  $ egrep '(foo|bar).h\.*:' Makefile.in # no match :-(
  $ sed -i 's/$(my_YFLAGS)/-d/' Makefile.am 
  $ automake
  $ egrep '(foo|bar)\.h.*:' Makefile.in # now as expected
  bar-bar.h: bar-bar.c
  foo.h: foo.c

Not sure if this bug is worth fixing, but having it reported in the bug
database won't hurt, either (and I might anyway attempt a fix soonish).

Regards,
  Stefano