Re: autoupdate: AU_ALIAS shouldn't affect itself

2021-01-27 Thread egall--- via Bug reports for autoconf
On Wed, Jan 27, 2021 at 1:48 AM Eric Gallager  wrote:

> On Tue, Jan 26, 2021 at 4:00 PM Nick Bowler  wrote:
>
>> On 2021-01-26, egall--- via Bug reports for autoconf
>>  wrote:
>> > Say I have an M4 macro file with an AU_ALIAS usage in it like this:
>> >
>> > AU_ALIAS([BNV_HAVE_QT], [AX_HAVE_QT])
>> >
>> > If I run autoupdate on this file, that will become:
>> >
>> > AU_ALIAS([AX_HAVE_QT], [AX_HAVE_QT])
>> >
>> > This seems pointless, as now the AU_ALIAS won't do what it was
>> originally
>> > meant to do anymore. Perhaps autoupdate could be updated to stop making
>> > this change.
>>
>> It does seem counterproductive.  Unfortunately autoupdate doesn't actually
>> understand m4 syntax so it often runs into problems similar this one.
>
>
> Yeah, another one like this I noticed was autoupdate expanding macros in
> comments,
> which means I can't do things like this:
>
> dnl Can't use AC_TYPE_SIGNAL here because it is obsolete
> or
> # Stop using AC_HEADER_STDC here because it is deprecated
>
> (without escaping them, that is)
>

Also, another location to have autoupdate ignore would be inside of an
AC_REQUIRE([]).
I have seen autoupdate change:
AC_REQUIRE([AC_HEADER_STDC])dnl
...into:
AC_REQUIRE([m4_warn([obsolete],
[The preprocessor macro `STDC_HEADERS' is obsolete.
  Except in unusual embedded environments, you can safely include all
  ISO C90 headers unconditionally.])dnl
# Autoupdate added the next two lines to ensure that your configure
# script's behavior did not change.  They are probably safe to remove.
AC_CHECK_INCLUDES_DEFAULT
AC_PROG_EGREP
])dnl
...which is wrong.


>
> I'm sure it could be improved to better handle this specific case, though.
>>
>> But for the same reason, you should be able to work around the problem
>> just by quoting differently, for example:
>>
>>   AU_ALIAS([BNV_][HAVE_QT], [AX_HAVE_QT])
>>
>> Cheers,
>>   Nick
>>
>


Re: autoupdate: AU_ALIAS shouldn't affect itself

2021-01-26 Thread egall--- via Bug reports for autoconf
On Tue, Jan 26, 2021 at 4:00 PM Nick Bowler  wrote:

> On 2021-01-26, egall--- via Bug reports for autoconf
>  wrote:
> > Say I have an M4 macro file with an AU_ALIAS usage in it like this:
> >
> > AU_ALIAS([BNV_HAVE_QT], [AX_HAVE_QT])
> >
> > If I run autoupdate on this file, that will become:
> >
> > AU_ALIAS([AX_HAVE_QT], [AX_HAVE_QT])
> >
> > This seems pointless, as now the AU_ALIAS won't do what it was originally
> > meant to do anymore. Perhaps autoupdate could be updated to stop making
> > this change.
>
> It does seem counterproductive.  Unfortunately autoupdate doesn't actually
> understand m4 syntax so it often runs into problems similar this one.


Yeah, another one like this I noticed was autoupdate expanding macros in
comments,
which means I can't do things like this:

dnl Can't use AC_TYPE_SIGNAL here because it is obsolete
or
# Stop using AC_HEADER_STDC here because it is deprecated

(without escaping them, that is)

I'm sure it could be improved to better handle this specific case, though.
>
> But for the same reason, you should be able to work around the problem
> just by quoting differently, for example:
>
>   AU_ALIAS([BNV_][HAVE_QT], [AX_HAVE_QT])
>
> Cheers,
>   Nick
>


Re: autoupdate: AU_ALIAS shouldn't affect itself

2021-01-26 Thread Nick Bowler
On 2021-01-26, egall--- via Bug reports for autoconf
 wrote:
> Say I have an M4 macro file with an AU_ALIAS usage in it like this:
>
> AU_ALIAS([BNV_HAVE_QT], [AX_HAVE_QT])
>
> If I run autoupdate on this file, that will become:
>
> AU_ALIAS([AX_HAVE_QT], [AX_HAVE_QT])
>
> This seems pointless, as now the AU_ALIAS won't do what it was originally
> meant to do anymore. Perhaps autoupdate could be updated to stop making
> this change.

It does seem counterproductive.  Unfortunately autoupdate doesn't actually
understand m4 syntax so it often runs into problems similar this one.  I'm
sure it could be improved to better handle this specific case, though.

But for the same reason, you should be able to work around the problem
just by quoting differently, for example:

  AU_ALIAS([BNV_][HAVE_QT], [AX_HAVE_QT])

Cheers,
  Nick



autoupdate: AU_ALIAS shouldn't affect itself

2021-01-26 Thread egall--- via Bug reports for autoconf
Say I have an M4 macro file with an AU_ALIAS usage in it like this:

AU_ALIAS([BNV_HAVE_QT], [AX_HAVE_QT])

If I run autoupdate on this file, that will become:

AU_ALIAS([AX_HAVE_QT], [AX_HAVE_QT])

This seems pointless, as now the AU_ALIAS won't do what it was originally
meant to do anymore. Perhaps autoupdate could be updated to stop making
this change.

Thanks,
Eric Gallager