Commit f2ff24bd authored by unknown's avatar unknown
Browse files

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 232dec09
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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
+1 −0
Original line number Diff line number Diff line
@@ -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@
+9 −1
Original line number Diff line number Diff line
@@ -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 */
}