New package: mariadb-5.5.33 (close #48).

XXX not cross compilable!
This commit is contained in:
Juan RP 2013-09-23 16:26:00 +02:00
parent 8af8f80edd
commit 3f4195d684
8 changed files with 175 additions and 0 deletions

1
srcpkgs/libmariadbclient Symbolic link
View File

@ -0,0 +1 @@
mariadb

View File

@ -0,0 +1 @@
mariadb

1
srcpkgs/mariadb-client Symbolic link
View File

@ -0,0 +1 @@
mariadb

8
srcpkgs/mariadb/INSTALL Normal file
View File

@ -0,0 +1,8 @@
# *-*-shell-*-*
#
case ${ACTION} in
post)
usr/bin/mysql_install_db --user=mysql --basedir=/usr
chown -R mysql:mysql var/lib/mysql
;;
esac

View File

@ -0,0 +1,8 @@
#!/bin/sh
while true; do
response=$(/usr/bin/mysqladmin -uUNKNOWN_USER ping 2>&1) && break
echo "$response" | grep -q "mysqld is alive" && break
echo "$response" | grep -q "Access denied for user" && break
sleep 1
done

View File

@ -0,0 +1,16 @@
[Unit]
Description=MariaDB database server
After=syslog.target
[Service]
User=mysql
Group=mysql
ExecStart=/usr/bin/mysqld --pid-file=/run/mysqld/mysqld.pid
ExecStartPost=/usr/bin/mysqld-post
Restart=always
PrivateTmp=true
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1 @@
d /run/mysqld 0755 mysql mysql -

139
srcpkgs/mariadb/template Normal file
View File

@ -0,0 +1,139 @@
# Template file for 'mariadb'
pkgname=mariadb
version=5.5.33
revision=1
build_style=cmake
configure_args="-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_ZLIB=system -DWITH_SSL=system -DWITH_LIBWRAP=OFF
-DWITH_EMBEDDED_SERVER=ON -DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_TOKUDB_STORAGE_ENGINE=1
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PBXT_STORAGE_ENGINE=1 -DWITH_EXTRA_CHARSETS=complex
-DSTACK_DIRECTION=1"
hostmakedepends="perl cmake bison"
makedepends="zlib-devel ncurses-devel openssl-devel readline-devel"
short_desc="Fast SQL database server, drop-in replacement for MySQL"
maintainer="Juan RP <xtraeme@gmail.com>"
homepage="http://mariadb.org/"
license="GPL-2"
distfiles="http://mirrors.supportex.net/$pkgname/$pkgname-$version/kvm-tarbake-jaunty-x86/$pkgname-$version.tar.gz"
checksum=233251494242e7c964523f834e513e624728f2c2602ada0eb717aaff777ac546
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" ncurses-devel"
fi
pre_configure() {
# We need some host binaries before starting cross compilation.
if [ "$CROSS_BUILD" ]; then
# Set sysroot and host.
sed -e "s,enable-static,& --sysroot=$XBPS_CROSS_BASE --host=$XBPS_CROSS_TRIPLET," \
-i storage/tokudb/ft-index/cmake_modules/TokuThirdParty.cmake
sed -e "s,enable-cc-silence\",& \"--host=$XBPS_CROSS_TRIPLET\"," \
-i cmake/jemalloc.cmake
# XXX still broken: jemalloc configure execs host bins.
CC= CXX= CPP= LD= AR= AS= RANLIB= CFLAGS= CXXFLAGS= LDFLAGS= cmake .
make comp_err comp_sql gen_lex_hash
mkdir bin.host
cp extra/comp_err bin.host
cp scripts/comp_sql bin.host
cp sql/gen_lex_hash bin.host
make clean
rm CMakeCache.txt
fi
}
pre_build() {
if [ "$CROSS_BUILD" ]; then
cp bin.host/comp_err ${wrksrc}/extra
cp bin.host/comp_sql ${wrksrc}/scripts
cp bin.host/gen_lex_hash ${wrksrc}/sql
export PATH=${PATH}:${wrksrc}/extra:${wrksrc}/scripts:${wrksrc}/sql
fi
export LD_LIBRARY_PATH=${wrksrc}/build/storage/tokudb/ft-index/portability
}
post_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.
install -Dm644 ${DESTDIR}/usr/share/mysql/my-medium.cnf ${DESTDIR}/etc/mysql/my.cnf
# systemd service.
vinstall ${FILESDIR}/mysqld.service 644 usr/lib/systemd/system
vinstall ${FILESDIR}/mysqld-post.sh 755 usr/lib/systemd/scripts mysqld-post
vinstall ${FILESDIR}/mysqld.tmpfiles 644 usr/lib/tmpfiles.d mysqld.conf
}
libmariadbclient_package() {
short_desc+=" - client library"
provides="libmysqlclient-${version}_${revision}"
replaces="libmysqlclient>=0"
pkg_install() {
vmove "usr/lib/libmysqlclient*.so.*"
}
}
libmariadbclient-devel_package() {
depends="libmariadbclient>=${version}_${revision}"
provides="libmysqlclient-devel-${version}_${revision}"
replaces="libmysqlclient-devel>=0"
short_desc+=" - client development files"
pkg_install() {
vmove usr/bin/mysql_config
vmove usr/share/man/man1/mysql_config.1
vmove usr/include
vmove "usr/lib/*.a"
vmove "usr/lib/*.so"
}
}
mariadb-client_package() {
depends="perl"
provides="mysql-client-${version}_${revision}"
replaces="mysql-client>=0"
short_desc=+" - 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
}
}
mariadb_package() {
depends="shadow mariadb-client"
provides="mysql-${version}_${revision}"
replaces="mysql>=0"
conf_files="/etc/mysql/my.cnf"
systemd_services="mysqld.service on"
system_accounts="mysql"
mysqld_homedir="/var/lib/mysql"
pkg_install() {
vmove all
}
}