Browse Source

MDEV-4165 [PATCH] RFE: make tmpdir a build-time configurable option

support -DTMPDIR=/path in CMakeLists.txt

Patch by Honza Horak.
pull/843/head
Sergei Golubchik 12 years ago
parent
commit
c06eaf21b7
  1. 4
      CMakeLists.txt
  2. 1
      config.h.cmake
  3. 7
      include/my_global.h
  4. 2
      libmysqld/lib_sql.cc
  5. 2
      mysys/mf_tempdir.c
  6. 2
      mysys/mf_tempfile.c

4
CMakeLists.txt

@ -245,7 +245,9 @@ SET(PLUGINDIR "${DEFAULT_MYSQL_HOME}/${INSTALL_PLUGINDIR}")
IF(INSTALL_SYSCONFDIR)
SET(DEFAULT_SYSCONFDIR "${INSTALL_SYSCONFDIR}")
ENDIF()
IF(TMPDIR)
SET(DEFAULT_TMPDIR "${TMPDIR}")
ENDIF()
# Run platform tests
INCLUDE(configure.cmake)

1
config.h.cmake

@ -619,6 +619,7 @@
#cmakedefine DEFAULT_CHARSET_HOME "@DEFAULT_CHARSET_HOME@"
#cmakedefine PLUGINDIR "@PLUGINDIR@"
#cmakedefine DEFAULT_SYSCONFDIR "@DEFAULT_SYSCONFDIR@"
#cmakedefine DEFAULT_TMPDIR "@DEFAULT_TMPDIR@"
#cmakedefine SO_EXT "@CMAKE_SHARED_MODULE_SUFFIX@"

7
include/my_global.h

@ -1515,4 +1515,11 @@ static inline double rint(double x)
#endif /* EMBEDDED_LIBRARY */
/*
Define default tmpdir if not already set.
*/
#if !defined(DEFAULT_TMPDIR)
#define DEFAULT_TMPDIR P_tmpdir
#endif
#endif /* my_global_h */

2
libmysqld/lib_sql.cc

@ -559,7 +559,7 @@ int init_embedded_server(int argc, char **argv, char **groups)
opt_mysql_tmpdir=getenv("TMP");
#endif
if (!opt_mysql_tmpdir || !opt_mysql_tmpdir[0])
opt_mysql_tmpdir=(char*) P_tmpdir; /* purecov: inspected */
opt_mysql_tmpdir=(char*) DEFAULT_TMPDIR; /* purecov: inspected */
init_ssl();
umask(((~my_umask) & 0666));

2
mysys/mf_tempdir.c

@ -43,7 +43,7 @@ my_bool init_tmpdir(MY_TMPDIR *tmpdir, const char *pathlist)
pathlist=getenv("TMP");
#endif
if (!pathlist || !pathlist[0])
pathlist=(char*) P_tmpdir;
pathlist=(char*) DEFAULT_TMPDIR;
}
do
{

2
mysys/mf_tempfile.c

@ -111,7 +111,7 @@ File create_temp_file(char *to, const char *dir, const char *prefix,
sizeof(prefix_buff)-7),"XXXXXX") -
prefix_buff);
if (!dir && ! (dir =getenv("TMPDIR")))
dir=P_tmpdir;
dir=DEFAULT_TMPDIR;
if (strlen(dir)+ pfx_len > FN_REFLEN-2)
{
errno=my_errno= ENAMETOOLONG;

Loading…
Cancel
Save