138 lines
4.2 KiB
Plaintext
138 lines
4.2 KiB
Plaintext
# Template file for 'mysql'
|
|
pkgname=mysql
|
|
version=5.5.27
|
|
revision=2
|
|
hostmakedepends="perl cmake bison"
|
|
makedepends="zlib-devel ncurses-devel openssl-devel readline-devel"
|
|
short_desc="The world's most popular open source database"
|
|
maintainer="Juan RP <xtraeme@gmail.com>"
|
|
homepage="https://www.mysql.com/products/community/"
|
|
license="GPL-2"
|
|
distfiles="https://downloads.mysql.com/archives/mysql-5.5/$pkgname-$version.tar.gz"
|
|
checksum=51ffafbd82039f8afbe5b3c26f15cc338ed6cd4f67e56d7dd33efaa28c9d99e4
|
|
long_desc="
|
|
MySQL is the world's most popular open source database software, with over
|
|
100 million copies of its software downloaded or distributed throughout
|
|
it's history. With its superior speed, reliability, and ease of use, MySQL
|
|
has become the preferred choice for Web, Web 2.0, SaaS, ISV, Telecom
|
|
companies and forward-thinking corporate IT Managers because it eliminates
|
|
the major problems associated with downtime, maintenance and administration
|
|
for modern, online applications."
|
|
|
|
do_configure() {
|
|
mkdir build
|
|
cd build
|
|
|
|
cmake .. \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DSYSCONFDIR=/etc/mysql \
|
|
-DMYSQL_DATADIR=/var/lib/mysql \
|
|
-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock \
|
|
-DDEFAULT_CHARSET=utf8 \
|
|
-DDEFAULT_COLLATION=utf8_general_ci \
|
|
-DENABLED_LOCAL_INFILE=ON \
|
|
-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_DOCDIR=share/mysql/docs \
|
|
-DINSTALL_SHAREDIR=share/mysql \
|
|
-DWITH_READLINE=ON \
|
|
-DWITH_ZLIB=system \
|
|
-DWITH_SSL=system \
|
|
-DWITH_LIBWRAP=OFF \
|
|
-DWITH_MYSQLD_LDFLAGS="${LDFLAGS}" \
|
|
-DWITH_EXTRA_CHARSETS=complex \
|
|
-DWITH_EMBEDDED_SERVER=ON \
|
|
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
|
|
-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 \
|
|
-DCMAKE_C_FLAGS="-fPIC ${CFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -fomit-frame-pointer" \
|
|
-DCMAKE_CXX_FLAGS="-fPIC ${CXXFLAGS} -fno-strict-aliasing -DBIG_JOINS=1 -felide-constructors -fno-rtti"
|
|
}
|
|
|
|
do_build() {
|
|
cd build
|
|
make ${makejobs}
|
|
}
|
|
|
|
do_install() {
|
|
cd build
|
|
make DESTDIR=${DESTDIR} install
|
|
|
|
# Remove unneeded stuff.
|
|
rm -rf ${DESTDIR}/usr/{sql-bench,mysql-test,data}
|
|
rm -f ${DESTDIR}/usr/share/man/man1/mysql-test-run.pl.1
|
|
|
|
# Configuration file.
|
|
vinstall ${FILESDIR}/my.cnf 640 etc/mysql
|
|
|
|
# systemd service.
|
|
vinstall ${FILESDIR}/mysqld.service 644 usr/lib/systemd/system
|
|
vinstall ${FILESDIR}/mysqld-post 755 usr/lib/systemd/scripts
|
|
vinstall ${FILESDIR}/mysqld.tmpfilesd 644 usr/lib/tmpfiles.d mysqld.conf
|
|
}
|
|
|
|
libmysqlclient_package() {
|
|
short_desc="MySQL database client library"
|
|
pkg_install() {
|
|
vmove "usr/lib/libmysqlclient*.so*"
|
|
}
|
|
}
|
|
|
|
libmysqlclient-devel_package() {
|
|
depends="libmysqlclient>=${version}_${revision}"
|
|
short_desc="MySQL database development files"
|
|
pkg_install() {
|
|
vmove usr/bin/mysql_config
|
|
vmove usr/share/man/man1/mysql_config.1
|
|
vmove usr/include
|
|
vmove "usr/lib/*.a"
|
|
}
|
|
}
|
|
|
|
mysql-client_package() {
|
|
depends="perl"
|
|
short_desc="MySQL database client binaries"
|
|
pkg_install() {
|
|
for f in innochecksum innotop myisam_ftdump mysql mysql_client_test \
|
|
mysql_client_test_embedded mysqldumpslow mysqlbinlog \
|
|
mysql_find_rows mysql_fix_extensions mysql_waitpid mysqlaccess \
|
|
mysqladmin mysqlanalyze mysqlbug mysqlcheck mysqldump \
|
|
mysqlimport mysqloptimize mysqlrepair mysqlreport mysqlshow \
|
|
mysqlslap mysqltest_embedded mysqlmanager mysqltest \
|
|
mysqlhotcopy mysql_upgrade mysql_zap; do
|
|
if [ -f ${DESTDIR}/usr/bin/${f} ]; then
|
|
vmove usr/bin/${f}
|
|
elif [ -f ${DESTDIR}/usr/sbin/${f} ]; then
|
|
vmove usr/sbin/${f}
|
|
fi
|
|
if [ -f ${DESTDIR}/usr/share/man/man1/${f}.1 ]; then
|
|
vmove usr/share/man/man1/${f}.1
|
|
elif [ -f ${DESTDIR}/usr/share/man/man8/${f}.8 ]; then
|
|
vmove usr/share/man/man8/${f}.8
|
|
fi
|
|
done
|
|
}
|
|
}
|
|
|
|
mysql_package() {
|
|
depends="shadow mysql-client"
|
|
conf_files="/etc/mysql/my.cnf"
|
|
systemd_services="mysqld.service on"
|
|
system_accounts="mysql"
|
|
mysqld_homedir="/var/lib/mysql"
|
|
pkg_install() {
|
|
vmove etc
|
|
vmove usr
|
|
}
|
|
}
|