aboutsummaryrefslogtreecommitdiffstats
path: root/main/mysql/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'main/mysql/APKBUILD')
-rw-r--r--main/mysql/APKBUILD191
1 files changed, 191 insertions, 0 deletions
diff --git a/main/mysql/APKBUILD b/main/mysql/APKBUILD
new file mode 100644
index 0000000000..eaf95fa203
--- /dev/null
+++ b/main/mysql/APKBUILD
@@ -0,0 +1,191 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=mysql
+pkgver=5.5.13
+pkgrel=0
+pkgdesc="A fast SQL database server"
+url="http://www.mysql.com/"
+pkgusers="mysql"
+pkggroups="mysql"
+arch="all"
+license='GPL'
+depends="mysql-common"
+depends_dev="openssl-dev zlib-dev"
+makedepends="libtool readline-dev openssl-dev ncurses-dev zlib-dev cmake bison perl libaio-dev"
+source="ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.5/mysql-$pkgver.tar.gz
+ 0001-prefer-dynamic-library.patch
+ $pkgname.initd
+ "
+subpackages="$pkgname-doc $pkgname-dev $pkgname-libs $pkgname-test:mytest
+ $pkgname-common $pkgname-client $pkgname-bench"
+
+_builddir="$srcdir/$pkgname-$pkgver"
+
+prepare() {
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ cmake . -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DDEFAULT_CHARSET=utf8 \
+ -DDEFAULT_COLLATION=utf8_general_ci \
+ -DENABLED_LOCAL_INFILE=ON \
+ -DINSTALL_DOCDIR=share/doc/mysql \
+ -DINSTALL_DOCREADMEDIR=share/doc/mysql \
+ -DINSTALL_INCLUDEDIR=include/mysql \
+ -DINSTALL_INFODIR=share/info \
+ -DINSTALL_LAYOUT=RPM \
+ -DINSTALL_LIBDIR=lib \
+ -DINSTALL_MANDIR=share/man \
+ -DINSTALL_MYSQLDATADIR="/var/lib/mysql" \
+ -DINSTALL_MYSQLSHAREDIR=share/mysql \
+ -DINSTALL_MYSQLTESTDIR=share/mysql-test \
+ -DINSTALL_PLUGINDIR=lib/mysql/plugin \
+ -DINSTALL_SCRIPTDIR=bin \
+ -DINSTALL_SHAREDIR=share/mysql \
+ -DINSTALL_SQLBENCHDIR=share \
+ -DINSTALL_SUPPORTFILESDIR=share/mysql \
+ -DMYSQL_DATADIR="/var/lib/mysql" \
+ -DMYSQL_UNIX_ADDR="/var/run/mysqld/mysqld.sock" \
+ -DSYSCONFDIR=/etc/mysql \
+ -DWITHOUT_ARCHIVE_STORAGE_ENGINE=1 \
+ -DWITHOUT_BLACKHOLE_STORAGE_ENGINE=1 \
+ -DWITHOUT_EMBEDDED_SERVER=ON \
+ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
+ -DWITHOUT_FEDERATED_STORAGE_ENGINE=1 \
+ -DWITH_EXTRA_CHARSETS=complex \
+ -DWITH_INNOBASE_STORAGE_ENGINE=1 \
+ -DWITH_PARTITION_STORAGE_ENGINE=1 \
+ -DWITH_READLINE=ON \
+ -DWITH_SSL=system \
+ -DWITH_ZLIB=system \
+ || return 1
+ make || return 1
+}
+
+# -DWITH_LIBWRAP=ON \
+package() {
+ cd "$_builddir"
+ make DESTDIR="$pkgdir/" install || return 1
+
+ install -Dm 755 "$startdir"/$pkgname.initd \
+ "$pkgdir"/etc/init.d/$pkgname || return 1
+
+ # use small example config as default, which has tcp disabled
+ install -D "$pkgdir"/usr/share/mysql/my-medium.cnf \
+ "$pkgdir"/etc/mysql/my.cnf || return 1
+
+ install -dDo mysql "$pkgdir"/var/log/mysql || return 1
+ install -dDo mysql "$pkgdir"/var/run/mysqld || return 1
+
+ # libmysqlclient_r is no more. Upstream tries to replace it with
+ # symlinks but that really doesn't work (wrong soname in particular).
+ # We'll keep just the devel libmysqlclient_r.so link, so that
+ # rebuilding without any source change is enough to get rid of
+ # dependency on libmysqlclient_r.
+ rm -f "$pkgdir"/usr/lib/libmysqlclient_r.so*
+ ln -s libmysqlclient.so "$pkgdir"/usr/lib/libmysqlclient_r.so
+
+ # mysql-test includes one executable that doesn't belong under
+ # /usr/share, so move it and provide a symlink
+ mv "$pkgdir"/usr/share/mysql-test/lib/My/SafeProcess/my_safe_process \
+ "$pkgdir"/usr/bin
+ ln -s ../../../../../bin/my_safe_process \
+ "$pkgdir"/usr/share/mysql-test/lib/My/SafeProcess/my_safe_process
+
+}
+
+dev(){
+ default_dev
+ replaces="libmysqlclient"
+}
+
+libs() {
+ pkgdesc="MySQL client library"
+ # some files moved
+ replaces="mysql libmysqlclient"
+ depends="mysql-common"
+ mkdir -p "$subpkgdir"/usr/lib \
+ "$subpkgdir"/usr/share/mysql \
+ || return 1
+ mv "$pkgdir"/usr/lib/libmysqlclient.so* \
+ "$subpkgdir"/usr/lib/ || return 1
+}
+
+common() {
+ pkgdesc="MySQL common files for both server and client"
+ replaces="mysql"
+ mkdir -p "$subpkgdir"/usr/share/mysql \
+ mv "$pkgdir"/etc "$subpkgdir"/ || return 1
+ mv "$pkgdir"/usr/share/mysql/english \
+ "$pkgdir"/usr/share/mysql/czech \
+ "$pkgdir"/usr/share/mysql/danish \
+ "$pkgdir"/usr/share/mysql/dutch \
+ "$pkgdir"/usr/share/mysql/estonian \
+ "$pkgdir"/usr/share/mysql/french \
+ "$pkgdir"/usr/share/mysql/german \
+ "$pkgdir"/usr/share/mysql/greek \
+ "$pkgdir"/usr/share/mysql/hungarian \
+ "$pkgdir"/usr/share/mysql/italian \
+ "$pkgdir"/usr/share/mysql/japanese \
+ "$pkgdir"/usr/share/mysql/korean \
+ "$pkgdir"/usr/share/mysql/norwegian \
+ "$pkgdir"/usr/share/mysql/norwegian-ny \
+ "$pkgdir"/usr/share/mysql/polish \
+ "$pkgdir"/usr/share/mysql/portuguese \
+ "$pkgdir"/usr/share/mysql/romanian \
+ "$pkgdir"/usr/share/mysql/russian \
+ "$pkgdir"/usr/share/mysql/serbian \
+ "$pkgdir"/usr/share/mysql/slovak \
+ "$pkgdir"/usr/share/mysql/spanish \
+ "$pkgdir"/usr/share/mysql/swedish \
+ "$pkgdir"/usr/share/mysql/ukrainian \
+ "$pkgdir"/usr/share/mysql/charsets \
+ "$subpkgdir"/usr/share/mysql/ \
+ || return 1
+}
+
+mytest() {
+ pkgdesc="The test suite distributed with MySQL"
+ mkdir -p "$subpkgdir"/usr || return 1
+ mv "$pkgdir"/usr/share/mysql-test \
+ "$subpkgdir"/usr/share/ \
+ || return 1
+ mv "$pkgdir"/usr/bin/mysql_client_test \
+ "$pkgdir"/usr/bin/my_safe_process \
+ "$pkgdir"/usr/bin/ \
+ || return 1
+}
+
+client() {
+ pkgdesc="client for the MySQL database"
+ depends="mysql-common"
+ install=""
+ local bins="myisam_ftdump mysql mysqlaccess mysqladmin mysqlbug
+ mysqlcheck mysql_client_test mysqldump mysqldumpslow mysql_find_rows
+ mysql_fix_extensions mysqlimport mysqlshow mysql_waitpid"
+
+ mkdir -p "$subpkgdir"/usr/bin/ || return 1
+
+ for i in $bins; do
+ mv "$pkgdir"/usr/bin/${i} "$subpkgdir"/usr/bin/ || return 1
+ done
+}
+
+bench() {
+ pkgdesc="MySQL benchmark scripts and data"
+ replaces="mysql"
+ mkdir -p "$subpkgdir"/usr/share/
+ mv "$pkgdir"/usr/share/sql-bench "$subpkgdir"/usr/share/
+}
+
+md5sums="f0e519e90ee7c00fceb0730edf859d7b mysql-5.5.13.tar.gz
+4e07e045a3abcb457c9c148dfd929ed6 0001-prefer-dynamic-library.patch
+d46df8ab94cb5686862ff90c0a6bf707 mysql.initd"