aubio


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

Re: Aubio patches to fix a number of Linux build issues.



Hi Mo,

great, thanks for the patch.  i have included some of the changes in the
last revision: please have a look at the arch repository. You can access
it at http://aubio.piem.org/arch using bazaar:

$ baz register-archive http://aubio.piem.org/arch
$ baz get -A piem@altern.org--2005-aubio aubio--mainline 

On Mon, Aug 08, 2005 at 03:28:54PM -0700, Mo DeJong wrote:
> On Mon, 8 Aug 2005 15:21:17 -0700
> Mo DeJong <mdejong@uncounted.org> wrote:
> 
> > Hello all
> > 
> > I just went through the slightly frustrating experience of trying to compile
> > aubio on my Linux box. There were a number of build related issues.
> > I have attached a patch that fixes these issues.
> > 
> > First, building outside the source tree does not work with the aubio-0.1.8
> > release. The attached patch uses the proper path names in the Makefiles
> > to get that working.

ok for the $(srcdir)s. i never tried building out of the source tree!
it should be fixed now.

> Oops, I hit send before finishing the description of what the patch did.
> 
> The patch removes the aubio-0.1.8/src/config.h file, this is needed so
> that the config.h generated during the build will be seen correctly
> when building outside the srcdir. I guess the old approach was to
> assume that config.h would be overwritten, but that is not a valid
> assumption for all builds. Removing the config.h from the source dir
> is the right fix.

config.h is shipped because it is listed in src/Makefile.am. manually
deleting it wouldn't fix the make dist rule. moving it from
pkginclude_HEADERS to nodist_pkginclude_HEADERS should do.

> The patch adds AM_MAINTAINER_MODE to the configure.ac script.  This is
> needed to keep the delivered .tar.gz file from rebuilding the
> generated files when timestamps don't match up.  It is a bad idea to
> give out tar files that require autoconf, automake, and so on to
> build.

sure, AM_MAINTAINER_MODE is a good practice. I did successfully test
building this archive without autoconf or automake installed though.

> The patch adds a acinclude.m4 that contains pkg-config macros. These
> are required by the build process but they are not shipped with the
> tar file. Again, the broken build code will make it very hard for folks
> to build aubio.

I'm not sure about this one: I would rather not include it as it is
shipped in pkg-config. Which version of pkg-config do you have
installed? There should be a ${prefix}/share/aclocal/pkg.m4 too.

> I also added some checks for c99 varargs macro support since my
> compiler does not like these. The patch will use gcc style varargs
> macros when no c99 macro support is available.

and the fix in peakpick, excellent. Which compiler are you using?

The code test in configure.ac was missing an #include <stdio.h>:

AC_TRY_COMPILE([
  #include <stdio.h>
  #define AUBIO_ERR(...) fprintf(stderr, __VA_ARGS__)
],
[
  AUBIO_ERR("%s\n", "ERR");
],
        ac_cv_varargs_macros=yes,
        ac_cv_varargs_macros=no)
)

> A full regen via bootstrap is needed after adding these patches.

The new bootstrap contains only 'autoreconf -f -i', which should work
with a recent autoconf (>=2.50).

Cheers, Paul


-- 
To unsubscribe, send mail to aubio-unsubscribe@piem.org.