| 1 | TERMUX_PKG_HOMEPAGE=https://mariadb.org |
| 2 | TERMUX_PKG_DESCRIPTION="A drop-in replacement for mysql server" |
| 3 | TERMUX_PKG_VERSION=10.2.6 |
| 4 | TERMUX_PKG_REVISION=2 |
| 5 | TERMUX_PKG_SRCURL=https://ftp.osuosl.org/pub/mariadb/mariadb-$TERMUX_PKG_VERSION/source/mariadb-$TERMUX_PKG_VERSION.tar.gz |
| 6 | TERMUX_PKG_SHA256=c385c76e40d6e5f0577eba021805da5f494a30c9ef51884baefe206d5658a2e5 |
| 7 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" |
| 8 | -DBISON_EXECUTABLE=`which bison` |
| 9 | -DBUILD_CONFIG=mysql_release |
| 10 | -DCAT_EXECUTABLE=`which cat` |
| 11 | -DGSSAPI_FOUND=NO |
| 12 | -DENABLED_LOCAL_INFILE=ON |
| 13 | -DHAVE_UCONTEXT_H=False |
| 14 | -DIMPORT_EXECUTABLES=$TERMUX_PKG_HOSTBUILD_DIR/import_executables.cmake |
| 15 | -DINSTALL_LAYOUT=DEB |
| 16 | -DINSTALL_UNIX_ADDRDIR=$TERMUX_PREFIX/tmp/mysqld.sock |
| 17 | -DINSTALL_SBINDIR=$TERMUX_PREFIX/bin |
| 18 | -DMYSQL_DATADIR=$TERMUX_PREFIX/var/lib/mysql |
| 19 | -DPLUGIN_AUTH_GSSAPI_CLIENT=NO |
| 20 | -DPLUGIN_AUTH_GSSAPI=NO |
| 21 | -DPLUGIN_CONNECT=NO |
| 22 | -DPLUGIN_DAEMON_EXAMPLE=NO |
| 23 | -DPLUGIN_EXAMPLE=NO |
| 24 | -DPLUGIN_GSSAPI=NO |
| 25 | -DPLUGIN_ROCKSDB=NO |
| 26 | -DPLUGIN_TOKUDB=NO |
| 27 | -DSTACK_DIRECTION=-1 |
| 28 | -DTMPDIR=$TERMUX_PREFIX/tmp |
| 29 | -DWITH_EXTRA_CHARSETS=complex |
| 30 | -DWITH_JEMALLOC=OFF |
| 31 | -DWITH_MARIABACKUP=OFF |
| 32 | -DWITH_PCRE=system |
| 33 | -DWITH_READLINE=OFF |
| 34 | -DWITH_SSL=system |
| 35 | -DWITH_WSREP=False |
| 36 | -DWITH_ZLIB=system |
| 37 | -DWITH_INNODB_BZIP2=OFF |
| 38 | -DWITH_INNODB_LZ4=OFF |
| 39 | -DWITH_INNODB_LZMA=ON |
| 40 | -DWITH_INNODB_LZO=OFF |
| 41 | -DWITH_INNODB_SNAPPY=OFF |
| 42 | -DWITH_UNIT_TESTS=OFF |
| 43 | " |
| 44 | TERMUX_PKG_HOSTBUILD=true |
| 45 | TERMUX_PKG_DEPENDS="liblzma, ncurses, libedit, openssl, pcre, libcrypt, libandroid-support, libandroid-glob" |
| 46 | TERMUX_PKG_MAINTAINER="Vishal Biswas @vishalbiswas" |
| 47 | TERMUX_PKG_CONFLICTS="mysql" |
| 48 | TERMUX_PKG_RM_AFTER_INSTALL="bin/mysqltest*" |
| 49 | # Does not build with 32-bit off_t, and Termux does not use |
| 50 | # _FILE_OFFSET_BITS=64 as it doesn't work very well on Android. |
| 51 | TERMUX_PKG_BLACKLISTED_ARCHES="arm,i686" |
| 52 | |
| 53 | termux_step_host_build () { |
| 54 | termux_setup_cmake |
| 55 | cmake -G "Unix Makefiles" \ |
| 56 | $TERMUX_PKG_SRCDIR \ |
| 57 | -DWITH_SSL=bundled \ |
| 58 | -DCMAKE_BUILD_TYPE=Release |
| 59 | make -j $TERMUX_MAKE_PROCESSES import_executables |
| 60 | } |
| 61 | |
| 62 | termux_step_pre_configure () { |
| 63 | # it will try to define off64_t with off_t if unset |
| 64 | # and 32 bit Android has wrong off_t defined |
| 65 | CPPFLAGS="$CPPFLAGS -Dushort=u_short" |
| 66 | |
| 67 | if [ $TERMUX_ARCH = "i686" ]; then |
| 68 | # Avoid undefined reference to __atomic_load_8: |
| 69 | CFLAGS+=" -latomic" |
| 70 | fi |
| 71 | } |
| 72 | |
| 73 | termux_step_post_make_install () { |
| 74 | mkdir -p $TERMUX_PREFIX/var/lib/mysql |
| 75 | # files not needed |
| 76 | rm -r $TERMUX_PREFIX/{mysql-test,sql-bench} |
| 77 | rm $TERMUX_PREFIX/share/man/man1/mysql-test-run.pl.1 |
| 78 | } |
| 79 | |
| 80 | termux_step_create_debscripts () { |
| 81 | return |
| 82 | echo "echo 'Initializing mysql data directory...'" > postinst |
| 83 | echo "$TERMUX_PREFIX/bin/mysql_install_db --user=\`whoami\` --datadir=$TERMUX_PREFIX/var/lib/mysql --basedir=$TERMUX_PREFIX" >> postinst |
| 84 | echo "exit 0" >> postinst |
| 85 | chmod 0755 postinst |
| 86 | } |