X-Git-Url: http://gitweb.hugovil.com/?a=blobdiff_plain;f=stage3%2Fpkg%2Fmysql;h=deeecd9f0def8650e062b8cd338558b6d1b87adf;hb=1b6490195147ee6d1098cf255240d60f60c40108;hp=47163bb58cd1db0b5e56b9f7172ff1645c636352;hpb=d4f236d852479ef1b930f73a85084aa5bbc2d2a5;p=hvlinux.git diff --git a/stage3/pkg/mysql b/stage3/pkg/mysql index 47163bb..deeecd9 100644 --- a/stage3/pkg/mysql +++ b/stage3/pkg/mysql @@ -2,44 +2,69 @@ hvconfig_pre() { - groupadd -f mysql - hv_useradd -c mysql -d /dev/null -g mysql -s /bin/false mysql - - CONFIGURE_OPTS="\ - ${CONFIGURE_OPTS} \ - --libexecdir=/usr/sbin \ - --localstatedir=/srv/mysql \ - --enable-thread-safe-client \ - --enable-assembler \ - --enable-local-infile \ - --with-unix-socket-path=/var/run/mysql/mysql.sock \ - --without-debug \ - --without-readline \ - --with-plugins=innobase,myisam \ - --with-extra-charsets=all \ - --with-ssl" + groupadd --system -f mysql + hv_useradd --system -c mysql -d /dev/null -g mysql -s /bin/false mysql +} + +hvconfig() +{ + cd ${SRC_DIR} + + 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() { + cd ${SRC_DIR}/build + make - make benchdir_root=/tmp/mysql-bench install + + 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() { - rm -rf /tmp/mysql - cd /usr/lib - ln -v -sf mysql/libmysqlclient{,_r}.so* . + # Copying default configuration file: + install -v -m644 /usr/share/mysql/support/my-medium.cnf /etc/my.cnf - # Copying default configuration file. - install -v -m644 /usr/share/mysql/my-medium.cnf /etc/my.cnf - sed -i -e s/^skip-federated/#skip-federated/ /etc/my.cnf + # Ensure binary logs are disabled: + sed -i 's/^log-bin/#log-bin/' /etc/my.cnf - mysql_install_db --user=mysql + mysql_install_db --basedir=/usr --datadir=/srv/mysql --user=mysql chgrp mysql /srv/mysql{,/test,/mysql} - install -m750 -o mysql -g mysql -d /var/run/mysql + install -v -m755 -o mysql -g mysql -d /var/run/mysql # Further configuration requires that the MySQL server be running # (see cis-postinstall) @@ -54,5 +79,5 @@ hvbuild_post() string_add "/usr/lib/mysql" /etc/ld.so.conf # Install Hv configuration script - install -m644 ${SCRDIR}/misc/hv-config-mysql /usr/local/bin + install -v -m755 ${SCRDIR}/misc/hv-config-mysql /usr/local/bin }