| 1 | TERMUX_PKG_HOMEPAGE=https://mariadb.org |
| 2 | TERMUX_PKG_DESCRIPTION="A drop-in replacement for mysql server" |
| 3 | TERMUX_PKG_VERSION=10.1.22 |
| 4 | TERMUX_PKG_SRCURL=http://mirror.fibergrid.in/mariadb//mariadb-$TERMUX_PKG_VERSION/source/mariadb-$TERMUX_PKG_VERSION.tar.gz |
| 5 | TERMUX_PKG_SHA256=bcb0572e7ad32cea9740a21e9255f733bdf60a5561ffbda317c22dd12b3966ce |
| 6 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" |
| 7 | -DBISON_EXECUTABLE=`which bison` |
| 8 | -DBUILD_CONFIG=mysql_release |
| 9 | -DCAT_EXECUTABLE=`which cat` |
| 10 | -DENABLED_LOCAL_INFILE=ON |
| 11 | -DHAVE_UCONTEXT_H=False |
| 12 | -DIMPORT_EXECUTABLES=$TERMUX_PKG_HOSTBUILD_DIR/import_executables.cmake |
| 13 | -DINSTALL_LAYOUT=DEB |
| 14 | -DINSTALL_UNIX_ADDRDIR=$TERMUX_PREFIX/tmp/mysqld.sock |
| 15 | -DMYSQL_DATADIR=$TERMUX_PREFIX/var/lib/mysql |
| 16 | -DPLUGIN_AUTH_GSSAPI_CLIENT=NO |
| 17 | -DPLUGIN_AUTH_GSSAPI=NO |
| 18 | -DPLUGIN_DAEMON_EXAMPLE=NO |
| 19 | -DPLUGIN_EXAMPLE=NO |
| 20 | -DPLUGIN_GSSAPI=NO |
| 21 | -DSTACK_DIRECTION=-1 |
| 22 | -DTMPDIR=$TERMUX_PREFIX/tmp |
| 23 | -DWITH_EXTRA_CHARSETS=complex |
| 24 | -DWITH_JEMALLOC=OFF |
| 25 | -DWITH_PCRE=system |
| 26 | -DWITH_READLINE=OFF |
| 27 | -DWITH_SSL=system |
| 28 | -DWITH_WSREP=False |
| 29 | -DWITH_ZLIB=system |
| 30 | -DWITH_INNODB_BZIP2=OFF |
| 31 | -DWITH_INNODB_LZ4=OFF |
| 32 | -DWITH_INNODB_LZMA=ON |
| 33 | -DWITH_INNODB_LZO=OFF |
| 34 | -DWITH_INNODB_SNAPPY=OFF |
| 35 | " |
| 36 | TERMUX_PKG_HOSTBUILD=true |
| 37 | TERMUX_PKG_DEPENDS="liblzma, ncurses, libedit, openssl, pcre, libcrypt, libandroid-support, libandroid-glob" |
| 38 | TERMUX_PKG_MAINTAINER="Vishal Biswas @vishalbiswas" |
| 39 | TERMUX_PKG_CONFLICTS="mysql" |
| 40 | TERMUX_PKG_RM_AFTER_INSTALL="bin/mysqltest*" |
| 41 | # MariaDB doesn't support 32-bit off_t systems, see |
| 42 | # https://bugs.mysql.com/bug.php?id=41309 |
| 43 | # It builds with -D_FILE_OFFSET_BITS=64 but the NDK only starts supporting |
| 44 | # that with unified headers, |
| 45 | # https://android.googlesource.com/platform/ndk/+/master/docs/UnifiedHeaders.md |
| 46 | # The unified headers are new in the current NDK r14 release and contains some |
| 47 | # issues which are being fixed for r15, at which time we'll probably switch to it. |
| 48 | # In the meantime we don't build mariadb for 32-bit arches. |
| 49 | TERMUX_PKG_BLACKLISTED_ARCHES="arm,i686" |
| 50 | |
| 51 | termux_step_host_build () { |
| 52 | termux_setup_cmake |
| 53 | cmake -G "Unix Makefiles" $TERMUX_PKG_SRCDIR -DCMAKE_BUILD_TYPE=Release |
| 54 | make -j $TERMUX_MAKE_PROCESSES import_executables |
| 55 | } |
| 56 | |
| 57 | termux_step_pre_configure () { |
| 58 | # it will try to define off64_t with off_t if unset |
| 59 | # and 32 bit Android has wrong off_t defined |
| 60 | CPPFLAGS="$CPPFLAGS -Dushort=u_short -D__off64_t_defined" |
| 61 | } |
| 62 | |
| 63 | termux_step_post_make_install () { |
| 64 | mkdir -p $TERMUX_PREFIX/var/lib/mysql |
| 65 | # files not needed |
| 66 | rm -r $TERMUX_PREFIX/{mysql-test,sql-bench} |
| 67 | rm $TERMUX_PREFIX/share/man/man1/mysql-test-run.pl.1 |
| 68 | } |
| 69 | |
| 70 | termux_step_create_debscripts () { |
| 71 | return |
| 72 | echo "echo 'Initializing mysql data directory...'" > postinst |
| 73 | echo "$TERMUX_PREFIX/bin/mysql_install_db --user=\`whoami\` --datadir=$TERMUX_PREFIX/var/lib/mysql --basedir=$TERMUX_PREFIX" >> postinst |
| 74 | echo "exit 0" >> postinst |
| 75 | chmod 0755 postinst |
| 76 | } |