diff options
Diffstat (limited to 'source/ap/mysql/mysql.SlackBuild')
-rwxr-xr-x | source/ap/mysql/mysql.SlackBuild | 122 |
1 files changed, 60 insertions, 62 deletions
diff --git a/source/ap/mysql/mysql.SlackBuild b/source/ap/mysql/mysql.SlackBuild index ce149a15..6690c0f5 100755 --- a/source/ap/mysql/mysql.SlackBuild +++ b/source/ap/mysql/mysql.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -77,82 +77,104 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +mkdir build +cd build CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS -felide-constructors -fno-exceptions -fno-rtti" \ CXX=gcc \ -./configure \ - --prefix=/usr \ - --libdir=/usr/lib${LIBDIRSUFFIX} \ - --with-mysqld-user=mysql \ - --with-unix-socket-path=/var/run/mysql/mysql.sock \ - --localstatedir=/var/lib/mysql \ - --mandir=/usr/man \ - --infodir=/usr/info \ - --enable-assembler \ - --without-debug \ - --enable-thread-safe-client \ - --with-extra-charsets=complex \ - --with-ssl=/usr \ - --enable-largefile \ - --with-innodb \ - --with-readline \ - --build=$ARCH-slackware-linux -# -# --without-readline +cmake \ + -DBUILD_CONFIG=mysql_release \ + -DFEATURE_SET="community" \ + -DINSTALL_LAYOUT="RPM" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DINSTALL_LIBDIR="lib${LIBDIRSUFFIX}" \ + -DINSTALL_SBINDIR=libexec \ + -DINSTALL_INCLUDEDIR=include/mysql \ + -DINSTALL_MYSQLSHAREDIR=share/mysql \ + -DINSTALL_SQLBENCHDIR= \ + -DINSTALL_MYSQLTESTDIR=mysql-test \ + -DINSTALL_INFODIR=info \ + -DINSTALL_MANDIR=man \ + -DINSTALL_PLUGINDIR="lib${LIBDIRSUFFIX}/mysql/plugin" \ + -DINSTALL_SCRIPTDIR=bin \ + -DINSTALL_SUPPORTFILESDIR=share/mysql \ + -DINSTALL_MYSQLDATADIR="/var/lib/mysql" \ + -DMYSQL_DATADIR="/var/lib/mysql" \ + -DMYSQL_UNIX_ADDR="/var/run/mysql/mysql.sock" \ + -DWITH_EXTRA_CHARSETS=complex \ + -DWITH_INNOBASE_STORAGE_ENGINE=1 \ + -DENABLED_LOCAL_INFILE=ON \ + -DWITH_EMBEDDED_SERVER=OFF \ + -DWITH_READLINE=ON \ + -DWITH_SSL=system \ + -DWITH_ZLIB=system \ + .. make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG -# install additional headers needed for building external engine plugins -for i in sql include regex; do +# Install sample configuration files: +mkdir -p $PKG/etc/mysql +cp support-files/my-*.cnf $PKG/etc/mysql + +# Move mysqlaccess.conf to a more proper place +mv $PKG/usr/bin/mysqlaccess.conf $PKG/etc/mysqlaccess.conf.new +chmod 644 $PKG/etc/mysqlaccess.conf.new + +# Leave build directory: +cd .. + +# install additional headers needed for building external engine plugins: +mkdir -p $PKG/usr/include/mysql/private/atomic + +install -m 644 regex/my_regex.h $PKG/usr/include/mysql/private/ + +for i in sql include; do for j in $i/*.h; do - install -m 644 $j $PKG/usr/include/mysql/ + install -m 644 $j $PKG/usr/include/mysql/private/ done done -mkdir -p $PKG/usr/include/mysql/atomic for i in include/atomic/*.h; do - install -m 644 $i $PKG/usr/include/mysql/atomic/ + install -m 644 $i $PKG/usr/include/mysql/private/atomic/ done -# The ./configure option to omit this has gone away, so we'll omit it -# the old-fashioned way. It's all in the source tarball if you need it. -rm -rf $PKG/usr/sql-bench - find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null -# Install support files -mkdir -p $PKG/etc -cp support-files/my-{huge,large,medium,small}.cnf $PKG/etc - # Install docs mkdir -p $PKG/usr/doc/mysql-$VERSION/Docs cp -a \ - COPYING* EXCEPTIONS* INSTALL-SOURCE README* \ + BUILD* COPYING* EXCEPTIONS* INSTALL-SOURCE README* VERSION \ $PKG/usr/doc/mysql-$VERSION ( cd Docs # Seems most of the Docs/* are gone, but we'll leave the cp stuff # in case it returns. - cp -a INSTALL-BINARY *.html *.txt Flags \ + cp -a INFO_SRC INSTALL-BINARY *.html *.txt Flags \ $PKG/usr/doc/mysql-$VERSION/Docs ) ## Too large to justify since the .html version is right there: #rm $PKG/usr/doc/mysql-$VERSION/Docs/manual.txt find $PKG/usr/doc/mysql-$VERSION -type f -exec chmod 0644 {} \; -# This is the directory where databases are stored +# This is the directory where databases are stored: mkdir -p $PKG/var/lib/mysql chown mysql.mysql $PKG/var/lib/mysql chmod 0750 $PKG/var/lib/mysql -# This is where the socket is stored +# This is where the socket is stored: mkdir -p $PKG/var/run/mysql chown mysql.mysql $PKG/var/run/mysql chmod 0755 $PKG/var/run/mysql -# Do not include the test suite: +# Do not package the test suite: rm -rf $PKG/usr/mysql-test +# More unpackaged things: +rm -f $PKG/usr/info/dir +rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libmysqlclient.a +rm -f $PKG/usr/lib${LIBDIRSUFFIX}/libmysqlclient_r.* +( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -sf libmysqlclient.so libmysqlclient_r.so ) + # Add init script: mkdir -p $PKG/etc/rc.d # This is intentionally chmod 644. @@ -163,29 +185,6 @@ mkdir -p $PKG/install zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh cat $CWD/slack-desc > $PKG/install/slack-desc -# Add some handy library symlinks: -if [ -r $PKG/usr/lib${LIBDIRSUFFIX}/mysql/libmysqlclient.so.16 ]; then - ( cd $PKG/usr/lib${LIBDIRSUFFIX} - rm -f libmysqlclient.so libmysqlclient.so.16 - ln -sf mysql/libmysqlclient.so . - ln -sf mysql/libmysqlclient.so.16 . - ) -else - exit 1 -fi -if [ -r $PKG/usr/lib${LIBDIRSUFFIX}/mysql/libmysqlclient_r.so.16 ]; then - ( cd $PKG/usr/lib${LIBDIRSUFFIX} - rm -f libmysqlclient_r.so libmysqlclient_r.so.16 - ln -sf mysql/libmysqlclient_r.so . - ln -sf mysql/libmysqlclient_r.so.16 . - ) -else - exit 1 -fi - -# Packaging standards: -rm -f $PKG/usr/info/dir - # Compress and link manpages, if any: if [ -d $PKG/usr/man ]; then ( cd $PKG/usr/man @@ -220,4 +219,3 @@ fi # Build package: cd $PKG /sbin/makepkg -l y -c n $TMP/mysql-$VERSION-$ARCH-$BUILD.txz - |