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