#!/bin/bash hvconfig_pre() { groupadd -f mysql hv_useradd -c mysql -d /dev/null -g mysql -s /bin/false mysql } hvconfig() { cd ${LFS_TMP}/${PACKAGE} mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=/usr \ -DINSTALL_DOCDIR=share/doc/mysql \ -DINSTALL_DOCREADMEDIR=share/doc/mysql \ -DINSTALL_INCLUDEDIR=include/mysql \ -DINSTALL_INFODIR=share/info \ -DINSTALL_MANDIR=share/man \ -DINSTALL_MYSQLDATADIR=/srv/mysql \ -DINSTALL_MYSQLSHAREDIR=share/mysql \ -DINSTALL_MYSQLTESTDIR=share/mysql/test \ -DINSTALL_PLUGINDIR=lib/mysql \ -DINSTALL_SBINDIR=sbin \ -DINSTALL_SCRIPTDIR=bin \ -DINSTALL_SQLBENCHDIR=share/mysql/bench \ -DINSTALL_SUPPORTFILESDIR=share/mysql/support \ -DMYSQL_DATADIR=/srv/mysql \ -DMYSQL_UNIX_ADDR=/var/run/mysql/mysql.sock \ -DSYSCONFDIR=/etc \ -DWITH_PARTITION_STORAGE_ENGINE=OFF \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=OFF \ -DWITH_READLINE=system \ -DWITH_SSL=system \ .. } hvbuild() { make SEGMENTS="Client Server IniFiles ManPages SharedLibraries" SEGMENTS="$SEGMENTS Development Documentation Info Readme" for segment in $SEGMENTS; do cmake -DCMAKE_INSTALL_COMPONENT=$segment -P cmake_install.cmake done unset SEGMENTS } hvbuild_post() { # Copying default configuration file: install -v -m644 /usr/share/mysql/support/my-medium.cnf /etc/my.cnf # Ensure binary logs are disabled: sed -i 's/^log-bin/#log-bin/' /etc/my.cnf mysql_install_db --basedir=/usr --datadir=/srv/mysql --user=mysql chgrp mysql /srv/mysql{,/test,/mysql} install -v -m755 -o mysql -g mysql -d /var/run/mysql # Further configuration requires that the MySQL server be running # (see cis-postinstall) # Bootscript install -v -m740 ${SCRDIR}/bootscripts/mysql /etc/rc.d/init.d # script-name start stop bootscript_add_rc3 mysql 45 45 # Addition to /etc/ld.so.conf string_add "/usr/lib/mysql" /etc/ld.so.conf # Install Hv configuration script install -v -m755 ${SCRDIR}/misc/hv-config-mysql /usr/local/bin }