[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#14685: aclocal and AC_CONFIG_MACRO_DIR
From: |
Stefano Lattarini |
Subject: |
bug#14685: aclocal and AC_CONFIG_MACRO_DIR |
Date: |
Sat, 22 Jun 2013 10:05:06 +0200 |
On 06/22/2013 09:44 AM, Werner LEMBERG wrote:
>
>> That's because AC_CONFIG_MACRO_DIR (provided by Autoconf) is only
>> meant to accept one directory as its argument. For two or more
>> dirs, you should use AC_CONFIG_MACRO_DIRS instead (which BTW also
>> works if only one dir is given, so I'd suggest you to
>> unconditionally prefer it over AC_CONFIG_MACRO_DIR).
>
> Well, AC_CONFIG_MACRO_DIRS is not in autoconf 2.69, and 2.70 is not
> released yet... Ideally, automake provides this until 2.70 is out :-)
>
It does ;-) Since Automake 1.13 in fact (barring unseen bugs).
>>> aclocal: error: couldn't open directory 'gnulib/m4 m4':
>>> No such file or directory
>>>
>> ... I see this error message is definitely unclear;
>
> I don't think so, the error message is just fine if the background is
> known. However, I think it's a bad idea to make it a fatal error. A
> warning is fully sufficient IMHO.
>
I disagree. We definitely want to catch a potential user typo with
a hard error, rather than an easy to miss warning.
>> it could be improved to suggest you to use AC_CONFIG_MACRO_DIRS
>> whenever you have to or more m4 directories.
>
> Yes. If opening a directory fails, and the directory name contains a
> space, tell the user that AC_CONFIG_MACRO_DIR accepts one directory
> only.
>
Sine we never really supported directories with spaces in them (not in
AC_CONFIG_MACRO_DIR, nor in AC_CONFIG_AUX_DIR, nor in SUBDIRS, nor in
AC_CONFIG_FILES -- nowhere, basically), I'd rather raise the error
message whenever a whitespace is present in the AC_CONFIG_MACRO_DIR
argument, without checking for its existence.
> And if AC_CONFIG_MACRO_DIRS is available, suggest to use this
> macro instead.
>
Once you use Automake 1.13, that macro should be made automatically
available. If you've find out a situation where that's not the case,
you've just found another Automake bug (in which case, please report
it separately).
Thanks,
Stefano