#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
#
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
#
# Modified to make a template file for a multi-binary package with separated
# build-arch and build-indep targets  by Bill Allombert 2001

# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1

# This is the debhelper compatibility version to use.
export DH_COMPAT=5

# This has to be exported to make some magic below work.
export DH_OPTIONS

DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	PARALLEL_BUILD = -j$(NUMJOBS)
endif

build: build-stamp
build-stamp:
	dh_testdir

	# Add here commands to compile the package.
	mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DLIB_INSTALL_DIR=lib/$(DEB_HOST_MULTIARCH) .. && $(MAKE)
ifeq "$(filter nocheck,$(DEB_BUILD_OPTIONS))" ""
	cd build && $(MAKE) test
endif
	# --- end custom part for compiling
	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp

	# Add here commands to clean up after the build process.
	test -d build || ( cd build && $(MAKE) distclean ) || true
	# --- end custom part for cleaning up

	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	# Add here commands to install the package
	# The DESTDIR Has To Be Exactly  /usr/src/packages/BUILD/debian/<nameOfPackage>
	cd build &&	$(MAKE) install DESTDIR=/usr/src/packages/BUILD/debian/strusmodule
	mkdir -p /usr/src/packages/BUILD/debian/strusmodule-dev/usr
	mv -f /usr/src/packages/BUILD/debian/strusmodule/usr/include \
		/usr/src/packages/BUILD/debian/strusmodule-dev/usr/.
	mkdir -p /usr/src/packages/BUILD/debian/strusmodule-dev/usr/lib/$(DEB_HOST_MULTIARCH)/strus
	mv -f /usr/src/packages/BUILD/debian/strusmodule/usr/lib/$(DEB_HOST_MULTIARCH)/strus/*.so \
		/usr/src/packages/BUILD/debian/strusmodule-dev/usr/lib/$(DEB_HOST_MULTIARCH)/strus/.
	# --- end custom part for installing

# Build architecture-independent files here.
binary-indep: build install
	# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot
#	dh_installdebconf
	dh_installdocs
#	dh_installexamples
#	dh_installmenu
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installpam
#	dh_installmime
#	dh_installinit
#	dh_installcron
	dh_installman
#	dh_installinfo
#	dh_undocumented
	dh_installchangelogs
#	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_makeshlibs
	dh_installdeb
#	dh_perl
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install
