diff options
Diffstat (limited to 'main/mysql/APKBUILD')
-rw-r--r-- | main/mysql/APKBUILD | 191 |
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" |