# $Id: PKGBUILD 115418 2011-03-17 21:33:02Z andrea $ # Maintainer: Andrea Scarpino # Contributor: Douglas Soares de Andrade # Contributor: judd pkgbase=mysql pkgname=('libmysqlclient' 'mysql-clients' 'mysql') pkgver=5.5.10 pkgrel=2 arch=('i686' 'x86_64') license=('GPL') url="http://www.mysql.com/" makedepends=('cmake' 'openssl' 'tcp_wrappers' 'zlib') options=('!libtool') source=("http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-5.5/${pkgbase}-${pkgver}.tar.gz" 'mysqld' 'my.cnf' 'fix-mysql-home.patch' 'fix-embedded-crash.patch') md5sums=('ee604aff531ff85abeb10cf332c1355a' '2234207625baa29b2ff7d7b4f088abce' '1c949c0dbea5206af0db14942d9927b6' '56fe8b724ca7ae73b9f96cdf4cca1220' 'b2b7ed0289a6d8cce17a68512c0286cc') build() { cd "${srcdir}"/${pkgbase}-${pkgver} patch -Np1 -i ${srcdir}/fix-mysql-home.patch patch -Np1 -i ${srcdir}/fix-embedded-crash.patch cd "${srcdir}" mkdir build cd build # CFLAGS/CXXFLAGS as suggested upstream CFLAGS="-fPIC ${CFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -fomit-frame-pointer" \ CXXFLAGS="-fPIC ${CXXFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -felide-constructors -fno-rtti" \ cmake ../${pkgbase}-${pkgver} \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DMYSQL_DATADIR=/var/lib/mysql \ -DSYSCONFDIR=/etc/mysql \ -DINSTALL_INFODIR=share/mysql/docs \ -DINSTALL_MANDIR=share/man \ -DINSTALL_PLUGINDIR=/usr/lib/mysql/plugin \ -DINSTALL_SCRIPTDIR=bin \ -DINSTALL_INCLUDEDIR=include/mysql \ -DINSTALL_DOCREADMEDIR=share/mysql \ -DINSTALL_SUPPORTFILESDIR=share/mysql \ -DINSTALL_MYSQLSHAREDIR=share/mysql \ -DINSTALL_SHAREDIR=share/mysql \ -DWITH_READLINE=ON \ -DWITH_ZLIB=system \ -DWITH_SSL=system \ -DWITH_LIBWRAP=ON \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=complex \ -DWITH_EMBEDDED_SERVER=ON \ -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \ -DENABLED_LOCAL_INFILE=ON \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ -DWITHOUT_ARCHIVE_STORAGE_ENGINE=1 \ -DWITHOUT_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 make } package_libmysqlclient(){ pkgdesc="MySQL client libraries" depends=('openssl' 'gcc-libs' 'tcp_wrappers') cd "${srcdir}"/build for dir in include libmysql libmysqld libservices; do make -C ${dir} DESTDIR="${pkgdir}" install done install -d "${pkgdir}/usr/bin" install -m755 scripts/mysql_config "${pkgdir}/usr/bin/" install -d "${pkgdir}/usr/share/man/man1" for man in mysql_config mysql_client_test_embedded mysqltest_embedded; do install -m644 "${srcdir}/${pkgbase}-${pkgver}/man/$man.1" "${pkgdir}/usr/share/man/man1/$man.1" done } package_mysql-clients(){ pkgdesc="MySQL client tools" depends=('libmysqlclient') cd "${srcdir}"/build make -C client DESTDIR="${pkgdir}" install # install man pages install -d "${pkgdir}/usr/share/man/man1" for man in mysql mysqladmin mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap; do install -m644 "${srcdir}/${pkgbase}-${pkgver}/man/$man.1" "${pkgdir}/usr/share/man/man1/$man.1" done # provided by mysql rm "${pkgdir}"/usr/bin/{mysql_upgrade,mysqlbinlog,mysqltest} } package_mysql(){ pkgdesc="A fast SQL database server" backup=('etc/mysql/my.cnf') install=mysql.install depends=('mysql-clients') optdepends=('perl-dbi' 'perl-dbd-mysql') cd "${srcdir}"/build make DESTDIR=${pkgdir} install install -Dm644 ${srcdir}/my.cnf ${pkgdir}/etc/mysql/my.cnf install -Dm755 ${srcdir}/mysqld ${pkgdir}/etc/rc.d/mysqld # provided by libmysqlclient rm ${pkgdir}/usr/bin/{mysql_config,mysql_client_test_embedded,mysqltest_embedded} rm ${pkgdir}/usr/lib/libmysql* rm -r ${pkgdir}/usr/include/ rm ${pkgdir}/usr/share/man/man1/{mysql_config,mysql_client_test_embedded,mysqltest_embedded}.1 # provided by mysql-clients rm ${pkgdir}/usr/bin/{mysql,mysqladmin,mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap} rm ${pkgdir}/usr/share/man/man1/{mysql,mysqladmin,mysqlcheck,mysqldump,mysqlimport,mysqlshow,mysqlslap}.1 # not needed rm -r ${pkgdir}/usr/{mysql-test,sql-bench} # These shouldn't be here rm -r ${pkgdir}/usr/docs install -d ${pkgdir}/var/lib/mysql cp -r ${pkgdir}/usr/data/* ${pkgdir}/var/lib/mysql/ chmod -R 700 ${pkgdir}/var/lib/mysql rm -r ${pkgdir}/usr/data }