conf: Allow dynamic top-level config directory

Currently the top-level config directory is specified only via
configure script option, and is fixed after that.  It's inconvenient
when the library is moved to another base directory, or if you want to
use a library code (e.g. with $LD_PRELOAD) with the incompatible
config setups.

This patch allows user to override the top-level config path via the
environment varialbe, $ALSA_CONFIG_DIR.  For that, a new helper
function, snd_config_topdir(), was introduced, and the codes referring
to the top config dir have been modified to handle it dynamically.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2017-05-03 00:09:28 +02:00
parent f3d2f4046e
commit 516bf057b0
9 changed files with 78 additions and 37 deletions

View file

@ -84,6 +84,8 @@ typedef struct _snd_config_update snd_config_update_t;
extern snd_config_t *snd_config;
const char *snd_config_topdir(void);
int snd_config_top(snd_config_t **config);
int snd_config_load(snd_config_t *config, snd_input_t *in);