### this file is sourced not run
PKGVER=10.4.11
PKGBUILD=1
PKGARCH=x86_64

# source: post BLFS 8.3 2018-10-14; updated to BLFS LFS-9.0 2020-01-07 for mariadb 10.4.11
TARBALL=mariadb-$PKGVER.tar.gz
MD5SUM=d0de881ab8ead46928cafb7d558535c1
# whence https://downloads.mariadb.org/mariadb/+releases/
SRC_URL=https://downloads.mariadb.org/interstitial/mariadb-$PKGVER/source/$TARBALL
BUNDLE=

SLACKREQ='openssl libevent libxml2 libboost-common libpcre'
SLACKDESC="mariadb: mariadb $PKGVER (Database Server)  
mariadb:  
mariadb: MariaDB is a community-developed fork and a drop-in replacement for 
mariadb: the MySQL relational database management system.  
mariadb: 
mariadb: Note: You need to set root password after starting the server for 
mariadb: the first time. Like this: mysqladmin -u root password
mariadb: 
mariadb: 
mariadb: 
mariadb: 
"
SLACKINSTALL='
! grep -q mysql ./etc/passwd && echo "mysql:x:45:45:MySQL Server,,,:/srv/mysql:/bin/false" >> ./etc/passwd
! grep -q mysql ./etc/group  && echo "mysql:x:45" >> ./etc/group
'


### default pkg_download
### default pkg_prepare
### default pkg_package
### build
pkg_build() {
	# create users - must be the same as the ones specified in SLACKINSTALL
	{	echo "cd /"
		echo "$SLACKINSTALL"
	} > /tmp/create-user &&
	sh /tmp/create-user

	# BLFS patch and build
	cd /tmp/mariadb* &&
	sed -i "s@data/test@\${INSTALL_MYSQLTESTDIR}@g" sql/CMakeLists.txt &&

	mkdir build &&
	cd build    &&

	cmake -DCMAKE_BUILD_TYPE=Release                      \
		  -DCMAKE_INSTALL_PREFIX=/usr                     \
		  -DINSTALL_LIBDIR=/usr/$LIBDIR \
		  -DINSTALL_DOCDIR=share/doc/mariadb-$PKGVER       \
		  -DINSTALL_DOCREADMEDIR=share/doc/mariadb-$PKGVER \
		  -DINSTALL_MANDIR=share/man                      \
		  -DINSTALL_MYSQLSHAREDIR=share/mysql             \
		  -DINSTALL_MYSQLTESTDIR=share/mysql/test         \
		  -DINSTALL_PLUGINDIR=$LIBDIR/mysql/plugin            \
		  -DINSTALL_SBINDIR=sbin                          \
		  -DINSTALL_SCRIPTDIR=bin                         \
		  -DINSTALL_SQLBENCHDIR=share/mysql/bench         \
		  -DINSTALL_SUPPORTFILESDIR=share/mysql           \
		  -DMYSQL_DATADIR=/srv/mysql                      \
		  -DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock       \
		  -DWITH_EXTRA_CHARSETS=complex                   \
		  -DWITH_EMBEDDED_SERVER=ON                       \
		  -DSKIP_TESTS=ON                                 \
		  -DTOKUDB_OK=0                                   \
		  .. &&
		  
	make $MAKEFLAGS &&
	if ! [ -e /auth_pam_tool ]; then
		# appease make install (with a file not a dir)
		touch /auth_pam_tool_dir
	fi &&
	make install &&

	# install config file from BLFS, and our init script
	install -v -dm 755 /etc/mysql &&
	install -m644 /tmp/pkg/my.cnf /etc/mysql &&
	install /tmp/pkg/99-mariadb /etc/init.d &&
	
	# create default database
	chmod 0777 /tmp &&
	mysql_install_db --basedir=/usr --datadir=/srv/mysql --user=mysql &&
	chown -R mysql:mysql /srv/mysql &&

	# clean up
	rm -rf /usr/share/mysql/test && # remove unused test directory
	pkg_build_slackdesc &&
	rm -f /etc/passwd /etc/group &&
	if [ -f /auth_pam_tool_dir ]; then
		# as touched above
		rm -f /auth_pam_tool_dir
	fi
	
	# multi-lib
	mv -v /usr/bin/mysql_config{,-64} &&
	ln -sfv multiarch_wrapper /usr/bin/mysql_config
}


