Blob Blame History Raw
Some hard-coded paths make problems when package is built into chroot like
Software Collections. Removing these hard-coded paths should fix it.

Upstream report: https://mariadb.atlassian.net/browse/MDEV-6485

diff --git a/cmake/install_layout.cmake b/cmake/install_layout.cmake
index f5ac0bf2..cd3132de 100644
--- a/cmake/install_layout.cmake
+++ b/cmake/install_layout.cmake
@@ -114,7 +114,7 @@ IF(UNIX)
     " Choose between ${VALID_INSTALL_LAYOUTS}" )
   ENDIF()
 
-  SET(SYSCONFDIR "${CMAKE_INSTALL_PREFIX}/etc"
+  SET(SYSCONFDIR "/etc"
     CACHE PATH "config directory (for my.cnf)")
   MARK_AS_ADVANCED(SYSCONFDIR)
 ENDIF()
@@ -318,6 +318,7 @@ SET(INSTALL_SECURE_FILE_PRIVDIR_TARGZ ${secure_file_priv_path})
 #
 SET(INSTALL_BINDIR_RPM                  "bin")
 SET(INSTALL_SBINDIR_RPM                 "sbin")
+SET(INSTALL_SYSCONFDIR_RPM              "/etc")
 #
 IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
   SET(INSTALL_LIBDIR_RPM                "lib64")
diff --git a/mysys_ssl/my_default.cc b/mysys_ssl/my_default.cc
index 1317e362..cfa0feb7 100644
--- a/mysys_ssl/my_default.cc
+++ b/mysys_ssl/my_default.cc
@@ -1570,12 +1570,12 @@ static const char **init_default_directories(MEM_ROOT *alloc) {
 
 #else
 
-  errors += add_directory(alloc, "/etc/", dirs);
-  errors += add_directory(alloc, "/etc/mysql/", dirs);
-
 #if defined(DEFAULT_SYSCONFDIR)
   if (DEFAULT_SYSCONFDIR[0])
+  {
     errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
+    errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs);
+  }
 #endif /* DEFAULT_SYSCONFDIR */
 
 #endif
diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
index c1202103..06a055b1 100644
--- a/scripts/CMakeLists.txt
+++ b/scripts/CMakeLists.txt
@@ -315,7 +315,7 @@ ENDIF(UNIX)
 
 SET(bindir ${prefix}/${INSTALL_BINDIR})
 SET(sbindir ${prefix}/${INSTALL_SBINDIR})
-SET(libexecdir ${prefix}/${INSTALL_SBINDIR})
+SET(libexecdir ${prefix}/${INSTALL_LIBEXECDIR})
 SET(pkgdatadir ${prefix}/${INSTALL_MYSQLSHAREDIR})
 IF(INSTALL_LAYOUT MATCHES "STANDALONE")
   SET(localstatedir ${prefix}/data)
@@ -324,9 +324,9 @@ ELSE()
 ENDIF()
 
 SET(prefix "${CMAKE_INSTALL_PREFIX}")
-SET(sysconfdir ${prefix})
+SET(sysconfdir ${SYSCONFDIR})
 SET(bindir ${prefix}/${INSTALL_BINDIR})
-SET(libexecdir ${prefix}/${INSTALL_SBINDIR})
+SET(libexecdir ${prefix}/${INSTALL_LIBEXECDIR})
 SET(datadir ${prefix}/${INSTALL_MYSQLSHAREDIR})
 SET(pkgdatadir ${prefix}/${INSTALL_MYSQLSHAREDIR})
 SET(libsubdir  ${INSTALL_LIBDIR})
diff --git a/scripts/mysqld_multi.sh b/scripts/mysqld_multi.sh
index 5ad36e7b..5dd032f2 100644
--- a/scripts/mysqld_multi.sh
+++ b/scripts/mysqld_multi.sh
@@ -572,9 +572,7 @@ sub list_defaults_files
 
   my %seen;  # Don't list the same file more than once
   return grep { defined $_ and not $seen{$_}++ and -f $_ and -r $_ }
-              ('/etc/my.cnf',
-               '/etc/mysql/my.cnf',
-               '@sysconfdir@/my.cnf',
+              ('@sysconfdir@/my.cnf',
                ($ENV{MYSQL_HOME} ? "$ENV{MYSQL_HOME}/my.cnf" : undef),
                $opt{'extra-file'},
                ($ENV{HOME} ? "$ENV{HOME}/.my.cnf" : undef));