autogen.sh failure and AC_CONFIG_AUX_DIR



Hello,
I had reported the bug on vte
(http://bugzilla.gnome.org/show_bug.cgi?id=476726) but I actually face
it in other modules (just tested gedit) and a lot may have the same
problem.

I am not sure if this is a new issue coming from automake
1.10/autoconf 2.61 or if I just never faced it for some other reason.

The end of the output is (see the bug report for the full output) :

====
Running libtoolize...
You should add the contents of `/usr/share/aclocal/libtool.m4' to `aclocal.m4'.
Putting files in AC_CONFIG_AUX_DIR, `../..'.
Running glib-gettextize... Ignore non-fatal messages.
Copying file mkinstalldirs
Copying file po/Makefile.in.in

Please add the files
  codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 lcmessage.m4
  progtest.m4
from the /usr/share/aclocal directory to your autoconf macro directory
or directly to your aclocal.m4 file.
You will also need config.guess and config.sub, which you can get from
ftp://ftp.gnu.org/pub/gnu/config/.

Running intltoolize...
cp: cannot create regular file `po/Makefile.in.in': No such file or directory
intltoolize: cannot copy '/usr/share/intltool/Makefile.in.in' to
'po/Makefile.in.in'
====

It is actually trying to create the file as ../../po/Makefile.in.in and fails
because ../../po does not exist.

Here is my understanding on the issue.

The doc says :

     If `AC_CONFIG_AUX_DIR' is not given, the scripts are looked for in
     their standard locations.  For `mdate-sh', `texinfo.tex', and
     `ylwrap', the standard location is the source directory
     corresponding to the current `Makefile.am'.  For the rest, the
     standard location is the first one of `.', `..', or `../..'
     (relative to the top source directory) that provides any one of
     the helper scripts.  *Note Finding `configure' Input:
     (autoconf)Input.

So, if one of the scripts (install-sh, libtool, ...) does not exist in the
current directory it will look into .. and ../.. and then will work in that
directory.

In my case ../.. was my home. I found that it had polluted my home with
ltmain.sh, config.guess and config.sub (maybe others that I did not notice).

I don't know why did it decide to use it, maybe because it contains an
install.sh as I read that autotools used to have a install.sh in the past.

Setting AC_CONFIG_AUX_DIR to . will make it consider the missing files
as missing (and copy them here when requested) instead of looking for
them in ".." and "../..".

So, the fix I proposed is to add AC_CONFIG_AUX_DIR(.) in configure.ac



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]