Eric Blake wrote: > * top/maint.mk (sc_makefile_at_at_check): Enhance check to cover > lower case, like @top_srcdir@. > > Signed-off-by: Eric Blake <ebl...@redhat.com> > --- > > Any objections to this? I noticed that libvirt had a mix > of $(top_srcdir) and @top_srcdir@ in the same variable, and > traced it to a weak syntax check not catching the difference.
No objection. I vaguely recall deliberately omitting lower case variables (maybe even for libvirt), to make the check less invasive. But please adjust it to use /.../i instead of adding a-z. Better still, just use \w+ instead of the explicit [...]+. > ChangeLog | 6 ++++++ > top/maint.mk | 4 ++-- > 2 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/ChangeLog b/ChangeLog > index 9c5a3cd..c8a8a99 100644 > --- a/ChangeLog > +++ b/ChangeLog > @@ -1,3 +1,9 @@ > +2012-02-02 Eric Blake <ebl...@redhat.com> > + > + maint.mk: also prohibit lower-case @var@ > + * top/maint.mk (sc_makefile_at_at_check): Enhance check to cover > + lower case, like @top_srcdir@. > + > 2012-02-02 Jim Meyering <meyer...@redhat.com> > > file-has-acl: suppress a warning from gcc -Wsuggest-attribute=const > diff --git a/top/maint.mk b/top/maint.mk > index be7ba49..b21e884 100644 > --- a/top/maint.mk > +++ b/top/maint.mk > @@ -1015,8 +1015,8 @@ update-NEWS-hash: NEWS > # setting this to ' && !/PRAGMA_SYSTEM_HEADER/'. > _makefile_at_at_check_exceptions ?= > sc_makefile_at_at_check: > - @perl -ne '/\@[A-Z_0-9]+\@/' \ > - -e ' && !/([A-Z_0-9]+)\s+=.*\@\1\@$$/' \ > + @perl -ne '/\@[A-Za-z_0-9]+\@/' \ > + -e ' && !/([A-Za-z_0-9]+)\s+=.*\@\1\@$$/' \ > -e ''$(_makefile_at_at_check_exceptions) \ > -e 'and (print "$$ARGV:$$.: $$_"), $$m=1; END {exit !$$m}' \ > $$($(VC_LIST_EXCEPT) | grep -E '(^|/)(Makefile\.am|[^/]+\.mk)$$') \