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 -up mysql-8.0.17/cmake/install_layout.cmake.patch5 mysql-8.0.17/cmake/install_layout.cmake
--- mysql-8.0.17/cmake/install_layout.cmake.patch5 2019-06-25 12:23:30.000000000 +0200
+++ mysql-8.0.17/cmake/install_layout.cmake 2019-07-22 19:07:56.476692609 +0200
@@ -115,7 +115,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()
@@ -319,6 +319,7 @@ SET(INSTALL_SECURE_FILE_PRIVDIR_TARGZ ${
#
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 -up mysql-8.0.17/mysys/my_default.cc.patch5 mysql-8.0.17/mysys/my_default.cc
--- mysql-8.0.17/mysys/my_default.cc.patch5 2019-06-25 12:23:30.000000000 +0200
+++ mysql-8.0.17/mysys/my_default.cc 2019-07-22 19:07:56.476692609 +0200
@@ -1565,12 +1565,12 @@ static const char **init_default_directo
#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 -up mysql-8.0.17/scripts/CMakeLists.txt.patch5 mysql-8.0.17/scripts/CMakeLists.txt
--- mysql-8.0.17/scripts/CMakeLists.txt.patch5 2019-07-22 19:07:56.477692619 +0200
+++ mysql-8.0.17/scripts/CMakeLists.txt 2019-07-22 19:09:26.160640283 +0200
@@ -324,9 +324,9 @@ IF(UNIX)
ENDIF(UNIX)
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(libsubdir ${INSTALL_LIBDIR})
SET(pkgincludedir ${prefix}/${INSTALL_INCLUDEDIR})
diff -up mysql-8.0.17/scripts/mysqld_multi.sh.patch5 mysql-8.0.17/scripts/mysqld_multi.sh
--- mysql-8.0.17/scripts/mysqld_multi.sh.patch5 2019-06-25 12:23:30.000000000 +0200
+++ mysql-8.0.17/scripts/mysqld_multi.sh 2019-07-22 19:07:56.477692619 +0200
@@ -586,9 +586,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));