[Pkg-alsa-devel] Bug#505088: alsa-lib: fails to build twice in a row

Lionel Elie Mamane lionel at mamane.lu
Sun Nov 9 23:35:27 UTC 2008


>>>>>>> Do you have autoconf/automake/libtool installed in the environment
>>>>>>> where you run it?

>>>>>> Yes

>>>>> Is it actually run during the build?

>>>> Why?

>>> Well, because on my system it is being run, which is the root of
>>> the problem, as explained in a previous email. autoconf being run
>>> regenerates a fresh configure, which overwrites the effect
>>> debian/patches/configure_cross_compile.patch, which thus does not
>>> unapply cleanly anymore.

I've run make in debugging mode; here is an abstract that shows why
autoconf is being rerun:

   Successfully remade target file `../Makefile.in'.
   Considering target file `config.status'.
     Considering target file `../configure'.
       Pruning file `../acinclude.m4'.
       Pruning file `../configure.in'.
       Pruning file `../aclocal.m4'.
      Finished prerequisites of target file `../configure'.
      Prerequisite `../acinclude.m4' is older than target `../configure'.
      Prerequisite `../configure.in' is older than target `../configure'.
      Prerequisite `../aclocal.m4' is newer than target `../configure'.
     Must remake target `../configure'.
cd .. && /bin/sh /home/master/j/alsa-lib-1.0.18/missing --run autoconf

So, it says it must run autoconf to remake configure because
aclocal.m4 is newer... Indeed, it remade aclocal.m4 earlier:

     Considering target file `../aclocal.m4'.
       Pruning file `../acinclude.m4'.
       Pruning file `../configure.in'.
      Finished prerequisites of target file `../aclocal.m4'.
      Prerequisite `../acinclude.m4' is older than target `../aclocal.m4'.
      Prerequisite `../configure.in' is newer than target `../aclocal.m4'.
     Must remake target `../aclocal.m4'.

This also causes it to rerun automake:

     Successfully remade target file `../aclocal.m4'.
    Finished prerequisites of target file `../Makefile.in'.
    Prerequisite `../Makefile.am' is older than target `../Makefile.in'.
    Prerequisite `../acinclude.m4' is older than target `../Makefile.in'.
    Prerequisite `../configure.in' is newer than target `../Makefile.in'.
    Prerequisite `../aclocal.m4' is newer than target `../Makefile.in'.
   Must remake target `../Makefile.in'.
 cd .. && /bin/sh /home/master/j/alsa-lib-1.0.18/missing --run automake-1.10 --foreign 

Let's take a look:

master at capsaicin:~/j 0 $ dpkg-source -x *dsc
master at capsaicin:~/j 0 $ cd alsa-lib-1.0.18/
master at capsaicin:~/j/alsa-lib-1.0.18 0 $ make -f debian/rules patch
master at capsaicin:~/j/alsa-lib-1.0.18 0 $ ls -lA --full-time configure.in aclocal.m4 
-rw-r--r-- 1 master master 270734 2008-11-10 00:28:56.947778103 +0100 aclocal.m4
-rw-r--r-- 1 master master  20068 2008-11-10 00:28:57.100779203 +0100 configure.in

These timestamps are *very* close, less than a second
close. Possibly, you don't see the problem because in your setup
(kernel version? filesystem? make version?), timestamps have
second-precision, not nanosecond-precision.

-- 
Lionel





More information about the Pkg-alsa-devel mailing list