Bug#749649: aclocal: couldn't open directory `m4': No such file or directory
Sebastian Ramacher
sramacher at debian.org
Thu May 29 09:38:56 UTC 2014
Control: retitle -1 libva: autoreconf fails with automake < 1.3.2
On 2014-05-28 16:07:53, Nestor A Diaz wrote:
> Source: libva
> Version: 1.3.1-1
> Severity: important
>
> Dear Maintainer,
>
> I am compiling libva from jessie, and it throws the above error.
> I just have to create the m4 directory by hand.
> So I guess in order to automate the process you should create the directory in
> the rules files
>
> # ./debian/rules binary
> dh binary --parallel --with autoreconf
> dh_testdir -O--parallel
> dh_autoreconf -O--parallel
> aclocal: couldn't open directory 'm4': No such file or directory
> autoreconf: aclocal failed with exit status: 1
> dh_autoreconf: autoreconf -f -i returned exit code 1
> make: *** [binary] Error 2
I think this is related to the following two changes in automake 1.3.2:
2013-02-21 Pavel Raiskup <praiskup at redhat.com>
aclocal: fix for more-than-once specified directories
Related to automake bug#13514.
Do not consider directories for extra m4 files multiple times in
'aclocal'. Doing so caused problems on older packages that specify
configure.ac: AC_CONFIG_MACRO_DIRS([m4])
Makefile.am: ACLOCAL_AMFLAGS = -I m4
if the 'm4' directory does not exist when aclocal is called the first
time by autoreconf.
See:
<http://lists.gnu.org/archive/html/bug-automake/2013-01/msg00115.html>
2013-02-20 Pavel Raiskup <praiskup at redhat.com>
aclocal: just warn if the primary local m4 dir doesn't exist (don't error)
Related to automake bug#13514.
Every package which does not need to have the local m4 macro
directory pre-existing in the version control system (because
e.g., it does not have nor need any private m4 macros) would
fail during the "autoreconf -vfi" phase if AC_CONFIG_MACRO_DIRS([m4])
is specified in configure.ac (it could be to instruct tools like
'autopoint' and 'libtoolize' to use 'm4' as the local directory
where to install definitions of their m4 macros, and to instruct
aclocal to look into it). The failure would go like this:
autoreconf: Entering directory `.'
autoreconf: running: aclocal --force
aclocal: error: couldn't open directory 'm4': No such file or directory
autoreconf: aclocal failed with exit status: 1
The problem is that when 'aclocal' is run for the first time during
'autoreconf', the directory 'm4' does not exist yet. It will be
created by e.g., 'libtoolize' or 'autopoint' later on. During the
second 'aclocal' run, the 'm4' directory exists and aclocal does not
complain.
To work around this issue, we degrade the error to a simple warning.
The warning is still quite useful when aclocal is run by hand - so
we are not removing completely.
libva's configure.ac contains AC_CONFIG_MACRO_DIRS([m4]) and Makefile.am
has ACLOCAL_AMFLAGS = -I m4. Moreover, the m4 folder does not exist and
is populated by libtoolize after the first aclocal run.
I'll add the necessary automake requirments to Build-Depends for now.
Creating m4 is a workaround, but I'd prefer something that can be
forwarded upstream (if possible).
Cheers
--
Sebastian Ramacher
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20140529/db43ee0a/attachment.sig>
More information about the pkg-multimedia-maintainers
mailing list