mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Handle different installation layouts.
using cmake option INSTALL_LAYOUT=STANDALONE would produce the layout as in tar.gz or zip packages. INSTALL_LAYOUT=UNIX will produce unixish install layout (with mysqld being in sbin subdirectory , libs in lib/mysql etc). This layout is used for RPM packages. Subtle differences in both packages unfortunately lead to the need to recompile MySQL to use with other package type - as otherwise for example default plugins or data directories would be wrong set. There are numerous other variables that allow fine-tuning packaging layout. (INSTALL_BINDIR, INSTALL_LIBDIR , INSTALL_PLUGINDIR etc). This options are different from autotools as they do not expect full paths to directories, but only subdirectory of CMAKE_INSTALL_PREFIX. There are 2 special options that expect full directory paths - MYSQL_DATADIR that defines default MYSQL data directory (autotools equivalent is --localstatedir) - SYSCONFDIR can be added to search my.cnf search path (autotools equivalent is --sysconfdir)
This commit is contained in:
@ -361,6 +361,9 @@ then
|
||||
if test -x "$MY_BASEDIR_VERSION/libexec/mysqld"
|
||||
then
|
||||
ledir="$MY_BASEDIR_VERSION/libexec"
|
||||
elif test -x "$MY_BASEDIR_VERSION/sbin/mysqld"
|
||||
then
|
||||
ledir="$MY_BASEDIR_VERSION/sbin"
|
||||
else
|
||||
ledir="$MY_BASEDIR_VERSION/bin"
|
||||
fi
|
||||
@ -373,6 +376,10 @@ elif test -f "$relpkgdata"/english/errmsg.sys -a -x "$MY_PWD/libexec/mysqld"
|
||||
then
|
||||
MY_BASEDIR_VERSION="$MY_PWD" # Where libexec, share and var are
|
||||
ledir="$MY_PWD/libexec" # Where mysqld is
|
||||
elif test -f "$relpkgdata"/english/errmsg.sys -a -x "$MY_PWD/sbin/mysqld"
|
||||
then
|
||||
MY_BASEDIR_VERSION="$MY_PWD" # Where sbin, share and var are
|
||||
ledir="$MY_PWD/sbin" # Where mysqld is
|
||||
# Since we didn't find anything, used the compiled-in defaults
|
||||
else
|
||||
MY_BASEDIR_VERSION='@prefix@'
|
||||
|
Reference in New Issue
Block a user