#!/usr/bin/make -f

# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# 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.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA

%:
	dh $@

export DH_VERBOSE=1
export CFLAGS=
export CXXFLAGS=

override_dh_auto_configure:
	@echo "RULES.$@"

	
	mkdir debug && cd debug && \
	cmake .. \
      -DWITH_BOOST=/usr/global/share -DWITH_UNIT_TESTS=false \
		-DBUILD_CONFIG=mysql_release \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_BUILD_TYPE=Debug \
		 \
		-DINSTALL_DOCDIR=share/mysql/docs \
		-DINSTALL_DOCREADMEDIR=share/mysql \
		-DINSTALL_INCLUDEDIR=include/mysql \
		-DINSTALL_INFODIR=share/mysql/docs \
		-DINSTALL_LIBDIR=lib/$(DEB_HOST_MULTIARCH) \
		-DINSTALL_MANDIR=share/man \
		-DINSTALL_MYSQLSHAREDIR=share/mysql \
		-DINSTALL_MYSQLTESTDIR=lib/mysql-test \
		-DINSTALL_PLUGINDIR=lib/mysql/plugin \
		-DINSTALL_SBINDIR=sbin \
		-DINSTALL_SUPPORTFILESDIR=share/mysql \
		-DSYSCONFDIR=/etc/mysql \
		-DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
		-DWITH_SSL=bundled \
		-DWITH_INNODB_MEMCACHED=1 \
		-DWITH_MECAB=system \
		-DWITH_NUMA=ON \
		-DCOMPILATION_COMMENT="MySQL Cluster Community Server (GPL)" \
		-DINSTALL_LAYOUT=DEB \
-DNDB_NODEJS_EXTRAS_PATH=/export/home/pb2/build/sb_0-26877865-1516801233.06/master-export-11126074 \
		-DDEB_PRODUCT=cluster-community \
		


	mkdir release && cd release && \
	cmake .. \
      -DWITH_BOOST=/usr/global/share -DWITH_UNIT_TESTS=false \
		-DBUILD_CONFIG=mysql_release \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DINSTALL_DOCDIR=share/mysql/docs \
		-DINSTALL_DOCREADMEDIR=share/mysql \
		-DINSTALL_INCLUDEDIR=include/mysql \
		-DINSTALL_INFODIR=share/mysql/docs \
		-DINSTALL_LIBDIR=lib/$(DEB_HOST_MULTIARCH) \
		-DINSTALL_MANDIR=share/man \
		-DINSTALL_MYSQLSHAREDIR=share/mysql \
		-DINSTALL_MYSQLTESTDIR=lib/mysql-test \
		-DINSTALL_PLUGINDIR=lib/mysql/plugin \
		-DINSTALL_SBINDIR=sbin \
		-DINSTALL_SUPPORTFILESDIR=share/mysql \
		-DSYSCONFDIR=/etc/mysql \
		-DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \
		-DWITH_SSL=bundled \
		-DWITH_INNODB_MEMCACHED=1 \
		-DWITH_MECAB=system \
		-DWITH_NUMA=ON \
		-DCOMPILATION_COMMENT="MySQL Cluster Community Server (GPL)" \
		-DINSTALL_LAYOUT=DEB \
-DNDB_NODEJS_EXTRAS_PATH=/export/home/pb2/build/sb_0-26877865-1516801233.06/master-export-11126074 \
		-DDEB_PRODUCT=cluster-community \
		

	touch $@

override_dh_auto_build:
	@echo "RULES.$@"
	
	cd debug && \
	$(MAKE) -j8 VERBOSE=1

	cd release && \
	$(MAKE) -j8 VERBOSE=1
	touch $@

override_dh_auto_test:
	@echo "RULES.$@"
	touch $@

override_dh_auto_install:

	@echo "RULES.$@"
	# complete install first
	cd release && \
	$(MAKE) install DESTDIR=../debian/tmp
	
	# The ini file isn't built for debug, so copy over from the standard build
	install -g root -o root -m 0755 debian/tmp/usr/lib/mysql/plugin/daemon_example.ini debian/tmp/usr/lib/mysql/plugin/debug

	# add missing man pages
	install -g root -o root -m 0644 debian/extra/mysql_embedded.1 debian/tmp/usr/share/man/man1
	# Add helper functions for maintainer scripts
	install -m 0644 debian/extra/mysql-helpers debian/tmp/usr/share/mysql/
	# add apparmor profile
	install -g root -o root -m 0644 -D debian/extra/apparmor-profile debian/tmp/etc/apparmor.d/usr.sbin.mysqld
	# add systemd script
	install -m 0755 debian/extra/mysql-systemd-start debian/tmp/usr/share/mysql/
	# add directory for legal docs
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-server
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-server
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-client
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-client
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-common
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/libmysqlclient20
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/libmysqlclient-dev
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/libmysqld-dev
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-testsuite
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-test
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-source
	
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-auto-installer
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-data-node
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-java
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-management-server
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-memcached
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/mysql-cluster-community-nodejs
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/ndbclient
	install -g root -o root -m 0755 -d debian/tmp/usr/share/doc/ndbclient-dev

	# add COPYING file to each package
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-server/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-server/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-client/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-client/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-common/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/libmysqlclient20/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/libmysqlclient-dev/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/libmysqld-dev/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-testsuite/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-test/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-source/COPYING
	
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-auto-installer/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-data-node/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-java/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-management-server/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-memcached/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/mysql-cluster-community-nodejs/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/ndbclient/COPYING
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/COPYING debian/tmp/usr/share/doc/ndbclient-dev/COPYING

	# add README file to each package
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-server/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-server/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-client/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-client/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-common/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/libmysqlclient20/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/libmysqlclient-dev/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/libmysqld-dev/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-testsuite/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-test/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-source/README
	
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-auto-installer/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-data-node/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-java/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-management-server/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-memcached/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/mysql-cluster-community-nodejs/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/ndbclient/README
	install -g root -o root -m 0644 debian/tmp/usr/share/mysql/README debian/tmp/usr/share/doc/ndbclient-dev/README

	touch $@

override_dh_installinit:
	@echo "RULES.$@"
	dh_apparmor -pmysql-cluster-community-server --profile-name=usr.sbin.mysqld
	dh_systemd_enable --name=mysql
	dh_installinit --name=mysql -- defaults 19 21
	dh_installinit --name=mysql@ -- disable
	dh_systemd_start --restart-after-upgrade
	touch $@

override_dh_install:
	dh_install --fail-missing \
		-Xusr/bin/i_mysql_client_test \
		-Xusr/share/mysql/mysql.server \
		-Xusr/share/man/man1/mysql.server.1 \
		-Xusr/share/mysql/binary-configure \
		-Xusr/share/mysql/COPYING \
		-Xusr/share/mysql/README \
		-Xusr/share/mysql/docs/mysql.info \
		-Xusr/share/man/man1/mysqlman.1 \
		-Xusr/share/man/man1/mysqltest \
		-Xusr/share/man/man1/mysql_client_test \
		-Xusr/share/man/man1/mysql-stress-test.pl.1 \
		-Xusr/share/man/man1/mysql-test-run.pl.1 \
		-X.h.pp
