Hello,

while trying to build the avifile-20011220 snapshot with installed
autoconf-2.52f and automake-1.5, I get

| $ configure
| ...
| 
| $ LANG=C make
| cd . && /bin/sh /var/volatile/rpm/SOURCES/avifile0.6-20011220/missing --run aclocal 
| cd . && \
| /bin/sh /var/volatile/rpm/SOURCES/avifile0.6-20011220/missing --run automake 
|--foreign  Makefile
| cd . && perl admin/am_edit --foreign-libtool --no-final Makefile.in
| Can't open perl script "admin/am_edit": No such file or directory
| make: *** [Makefile.in] Error 2


Probably, this is caused by automake which detects a change somewhere and
tries to rebuild all Makefile's. Such unwanted changes on user-side can
be bypassed by using the AM_MAINTAINER_MODE macro in the configure.in.
Developers will have to use './configure --enable-maintainer-mode' to
achieve the current behavior (regenerating Makefile when Makefile.am has
been changed).

The attached patch will add this macro.


There are some other issues leading to some incompatibility with the GNU
buildsystem. E.g., automake requires the files NEWS and AUTHORS. These
files are missing in all three subdirs which are having a ./configure. This
strictness can be removed by an

| AUTOMAKE_OPTIONS = foreign

in the appropriate Makefile.am. I suggest to add the NEWS and AUTHORS
files to the toplevel directory and to add the AUTOMAKE_OPTIONS to

                        ./libmmxnow/Makefile.am
and
                  ./plugins/libmad/libmad/Makefile.am


Another issue shown by 'autoreconf' is

| configure.in:64: warning: AC_ARG_PROGRAM was called before AC_CANONICAL_TARGET

I am not sure if it is an automake bug or an avifile one; the AC_ARG_PROGRAM
is implicitly called by AM_INIT_AUTOMAKE. To circumvent it, just move the
AC_CANONICAL* stuff before AM_INIT_AUTOMAKE.




Enrico

--- avifile0.6-20011220/libmmxnow/configure.in.mmode	Fri Dec 21 20:17:15 2001
+++ avifile0.6-20011220/libmmxnow/configure.in	Fri Dec 21 20:17:54 2001
@@ -9,6 +9,7 @@
 echo "libmmxnow configure options: $configure_options"
 
 AM_INIT_AUTOMAKE(libmmxnow,0.1)
+AM_MAINTAINER_MODE
 
 dnl Library versioning
 
--- avifile0.6-20011220/plugins/libmad/libmad/configure.in.mmode	Fri Dec 21 20:17:15 2001
+++ avifile0.6-20011220/plugins/libmad/libmad/configure.in	Fri Dec 21 20:18:08 2001
@@ -23,6 +23,7 @@
 AC_INIT(decoder.h)
 AC_REVISION([$Id: configure.in,v 1.2 2001/10/27 01:28:47 cypher Exp $])dnl
 AM_INIT_AUTOMAKE(libmad, 0.14.0b)
+AM_MAINTAINER_MODE
 
 AM_CONFIG_HEADER(config.h)
 
--- avifile0.6-20011220/configure.in.mmode	Fri Dec 21 20:17:15 2001
+++ avifile0.6-20011220/configure.in	Fri Dec 21 20:17:37 2001
@@ -25,6 +25,7 @@
 
 dnl Setup for automake
 AM_INIT_AUTOMAKE(avifile0.6, $AVIFILE_VERSION, no-define)
+AM_MAINTAINER_MODE
 
 AC_SUBST(AVIFILE_MAJOR_VERSION)
 AC_SUBST(AVIFILE_MINOR_VERSION)
--- avifile0.6-20011220/libmmxnow/Makefile.am.foreign	Fri Dec 21 20:20:59 2001
+++ avifile0.6-20011220/libmmxnow/Makefile.am	Fri Dec 21 20:21:30 2001
@@ -1,3 +1,4 @@
+AUTOMAKE_OPTIONS	=  foreign
 
 SUBDIRS = . doc include src test
 
--- avifile0.6-20011220/plugins/libmad/libmad/Makefile.am.foreign	Fri Dec 21 20:20:59 2001
+++ avifile0.6-20011220/plugins/libmad/libmad/Makefile.am	Fri Dec 21 20:21:48 2001
@@ -24,6 +24,8 @@
 
 ## Process this file with automake to produce Makefile.in
 
+AUTOMAKE_OPTIONS	=  foreign
+
 noinst_LTLIBRARIES = libmad.la
 noinst_HEADERS =	mad.h
 

Reply via email to