Hi,
I'm building and installing the alsa libs for an embedded system. My current process runs as follows:
1) the alsa-lib package is crosscompiled on my PC host system (x86); 2) the alsa-lib package is installed on a special prefix (say '/tmp/dest') on the host system; 3) some installed files are copied from the dir. '/tmp/dest' to the final target root filesystem tree (say '/tmp/emb_root');
Now there are a couple of details that do not work with this process:
in point 1) I configure the alsa-lib package with the option --prefix=/tmp/dest because I want to install the package there and use it later to compile other packages against it (alsa-utils for example); at the same time I want also to use the alsa libs in my target system but it is not possible because, at runtime, the init functions in the libasound.so looks for its configuration file under '/tmp/dest/share/alsa/alsa.conf'! The same problem happens with the plugins dir.
I tracked back this problems to the fact that, in the configure.in, the variable ALSA_CONFIG_DIR is used both to be substituted in the Makefile.am's (AC_SUBST(ALSA_CONFIG_DIR)) and to define the preprocessor constant in the 'include/config.h' (C_DEFINE_UNQUOTED(ALSA_CONFIG_DIR,...)). There is currently no way to have two independent values for the two cases.
My current 'best' solution is to patch the header 'include/config.h' after running the configure script.
Is there any standard solution to this without patching the configure results ?
Regards, -Simon.