You may now do:
mkdir build
cd build
../configure
./audacity
And all but one directory will remain unmolested...no more object files
in "src".
And if you look carefully, you'll see that the newly built "audacity" is
copied to the top of the build tree...no more having to use "src/audacity"
to run.
You can of course still do the configure from the top and get all of the
objects strewn about the tree.
I still haven't figured out how to keep the locale directory from getting
soiled. I'm not really sure there's a way around it really.
Replace the custom Makefile by automake. In addition drop the hacky
libwidgetextra-uninstalled.pc and configure the library like every other
optional library, but check if the library is not disabled.
Audacity tries to run clean/distclean on subdirectories speculatively
and ignores errors of the clean/distclean call in subdirectories.
clean/distclean should only be run for subdirectories if they contain
a Makefile.
enable support for using the system portaudio library. The latter
also corrects a long standing bug that prevented using config.status
to regenerate src/Makefile.
As a result of the above, I've taken Benjamin's *_LOCAL_CONFIGURE_ARGS
idea and propagated its usage to the other place where ac_configure_args
was being set directly.
Removed old stuff from lib-src/Makefile.in and made the library locations
for portaudio and portmixer like the rest (a symlink in lib-src).
Reworked portmixer's configure.ac to properly detect host apis.