# This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License version 2 as # published by the Free Software Foundation here: # (http://www.gnu.org/licenses/gpl-2.0.html) # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. DEPENDS = bash,bzip2,dash,glibc,libaio,libgcc,libstdc++,libxml2,ncurses,openssl,pcre,zlib ARCH = x86_64 URL = https://mariadb.org/ REPO = server BRIEF = Database server DESC = MariaDB is a fork of the MySQL database server SNAPVER = 1 ARCHIVE := $(PWD)/SRC/$(shell ls SRC|egrep '(bz2|gz|tar|xz)$$'|tail -1) TYPE := $(shell file -ib $(ARCHIVE)|cut -d';' -f1|tr -d '\n') SRCDIR := $(shell tar -tf $(ARCHIVE)|head -1|sed 's/\/.*//') PATCHDIR := $(PWD)/SRC/patches BUILDDIR := $(PWD)/BUILD VERSION := $(shell echo $(SRCDIR)|egrep -o '\-[0-9].*'|sed 's/^-//')-$(SNAPVER) include /usr/share/snap/Makefile.snaplinux $(SRCDIR)/configure.cmake: $(ARCHIVE) @if [ '$(TYPE)' == 'application/x-bzip2' ]; then \ tar -jxf $(ARCHIVE); \ elif [ '$(TYPE)' == 'application/x-gzip' ]; then \ tar -zxf $(ARCHIVE); \ elif [ '$(TYPE)' == 'application/x-tar' ]; then \ tar -xf $(ARCHIVE); \ elif [ '$(TYPE)' == 'application/x-xz' ]; then \ tar -xf $(ARCHIVE); \ else \ echo 'Unable to determine archive type'; \ exit 1; \ fi @touch $(SRCDIR)/configure.cmake $(BUILDDIR)/Makefile: $(SRCDIR)/configure.cmake @if [ ! -d $(BUILDDIR) ]; then \ mkdir -v $(BUILDDIR); \ fi @cd $(SRCDIR) && for patch in `find $(PATCHDIR) -name \*.patch`; do \ patch --verbose -Np1 -i $$patch; \ done @cd $(BUILDDIR); \ cmake \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \ -DINSTALL_DOCDIR=share/doc/mariadb \ -DINSTALL_DOCREADMEDIR=share/doc/mariadb \ -DINSTALL_MANDIR=share/man \ -DINSTALL_MYSQLSHAREDIR=share/mysql \ -DINSTALL_PLUGINDIR=lib/mysql/plugin \ -DINSTALL_SBINDIR=sbin \ -DINSTALL_SCRIPTDIR=bin \ -DINSTALL_SQLBENCHDIR=share/mysql/bench \ -DINSTALL_SUPPORTFILESDIR=share/mysql \ -DMYSQL_DATADIR=/var/lib/mysql \ -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \ -DWITH_EXTRA_CHARSETS=complex \ -DWITH_EMBEDDED_SERVER=ON \ -DWITH_SYSTEMD=OFF \ -DWITH_UNIT_TESTS=OFF \ -DCOMPILATION_COMMENT="Snaplinux" \ -DSYSTEM_TYPE="snap-linux-gnu" \ -DTOKUDB_OK=0 \ ../$(SRCDIR) $(BUILDDIR)/sql/mysqld: $(BUILDDIR)/Makefile @cd $(BUILDDIR) && make $(ROOT): $(BUILDDIR)/sql/mysqld @if [ -d $(ROOT) ]; then \ touch $(ROOT); \ else \ mkdir -v $(ROOT); \ fi @cd $(BUILDDIR) && make install DESTDIR=$(ROOT) && \ install -d -m 755 $(ROOT)/etc/init.d && \ install -d -m 755 $(ROOT)/usr/share/mariadb && \ install -d -m 700 $(ROOT)/var/lib/mysql && \ install -m 755 $(SNAPDIR)/mysqld.init $(ROOT)/etc/init.d/mysqld && \ install -m 644 $(SNAPDIR)/my.cnf $(ROOT)/usr/share/mariadb/my.cnf clean: @rm -rvf $(ROOT) \ $(SNAPINFO) \ $(MANIFEST) \ $(FILES) \ $(SRCDIR) \ $(BUILDDIR)