Commit 199752c4 authored by unknown's avatar unknown

Bug#15069 [patch] my_print_defaults does'nt care --sysconfdir

 - Grab the path from "configure --sysconfdir=<path>" and set it as
   the first place to look for my.cnf files
   Do this both in Makefiles for libmysql and mysys
 - Patch provided by Francesco Riosa. Thank you!


libmysql/Makefile.shared:
  Grab the path from "--sysconfdir=<path>" into the defined variable DEFAULT_SYSYCONFDIR
mysys/Makefile.am:
  Grab the path from "--sysconfdir=<path>" into the defined variable DEFAULT_SYSYCONFDIR
mysys/default.c:
  Use DEFAULT_SYSCONFDIR as first place to look for my.cnf file if "--sysconfdir=<path>" been specified as argument to configure
parent 069ad29a
......@@ -85,6 +85,7 @@ DEFS = -DDEFAULT_CHARSET_HOME="\"$(MYSQLBASEdir)\"" \
-DDATADIR="\"$(MYSQLDATAdir)\"" \
-DDEFAULT_HOME_ENV=MYSQL_HOME \
-DDEFAULT_GROUP_SUFFIX_ENV=MYSQL_GROUP_SUFFIX \
-DDEFAULT_SYSCONFDIR="\"$(sysconfdir)\"" \
-DSHAREDIR="\"$(MYSQLSHAREdir)\"" $(target_defs)
# The automatic dependencies miss this
......
......@@ -70,6 +70,7 @@ DEFS = -DDEFAULT_BASEDIR=\"$(prefix)\" \
-DSHAREDIR="\"$(MYSQLSHAREdir)\"" \
-DDEFAULT_HOME_ENV=MYSQL_HOME \
-DDEFAULT_GROUP_SUFFIX_ENV=MYSQL_GROUP_SUFFIX \
-DDEFAULT_SYSCONFDIR="\"$(sysconfdir)\"" \
@DEFS@
libmysys_a_DEPENDENCIES= @THREAD_LOBJECTS@
......
......@@ -48,7 +48,7 @@ char *defaults_extra_file=0;
/* Which directories are searched for options (and in which order) */
#define MAX_DEFAULT_DIRS 6
#define MAX_DEFAULT_DIRS 7
const char *default_directories[MAX_DEFAULT_DIRS + 1];
#ifdef __WIN__
......@@ -959,11 +959,13 @@ static uint my_get_system_windows_directory(char *buffer, uint size)
4. getenv(DEFAULT_HOME_ENV)
5. Directory above where the executable is located
6. ""
7. --sysconfdir=<path>
On Novell NetWare, this is:
1. sys:/etc/
2. getenv(DEFAULT_HOME_ENV)
3. ""
4. --sysconfdir=<path>
On OS/2, this is:
1. getenv(ETC)
......@@ -971,12 +973,14 @@ static uint my_get_system_windows_directory(char *buffer, uint size)
3. getenv(DEFAULT_HOME_ENV)
4. ""
5. "~/"
6. --sysconfdir=<path>
Everywhere else, this is:
1. /etc/
2. getenv(DEFAULT_HOME_ENV)
3. ""
4. "~/"
5. --sysconfdir=<path>
*/
......@@ -1040,6 +1044,10 @@ static void init_default_directories()
}
*ptr++= (char *)&config_dir;
}
#endif
#ifdef DEFAULT_SYSCONFDIR
if (DEFAULT_SYSCONFDIR != "")
*ptr++= DEFAULT_SYSCONFDIR;
#endif
*ptr= 0; /* end marker */
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment