#!/usr/bin/make -f
# debian/rules makefile that uses debhelper.
#
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
OPTFLAGS = -Wall
INSTALL_PROGRAM = install -p -m 755
ADDCFLAGS =
ADDLDFLAGS =

# see Debian Policy Manual - source packages
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	OPTFLAGS += -O0 -DNDEBUG
else
	OPTFLAGS += -O2 -DNDEBUG -fomit-frame-pointer
endif
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
	OPTFLAGS += -g
endif
ifneq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
endif
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
	MAKEFLAGS += -j$(NUMJOBS)
endif

# by default compile with openssl runtime linking
ifeq (,$(findstring nossl,$(DEB_BUILD_OPTIONS)))
	ADDCFLAGS += -DUSE_OPENSSL
ifneq (,$(findstring ssldynamic,$(DEB_BUILD_OPTIONS)))
	ADDLDFLAGS += -lcrypto
else
	ADDCFLAGS  += -DOPENSSL_RUNTIME -rdynamic
	ADDLDFLAGS += -ldl
endif
endif

# using debhelper >= 7 to build the package
%:
	dh $@

override_dh_auto_build:
	# Compile the package.
	$(MAKE) OPTFLAGS="$(OPTFLAGS)" OPTLDFLAGS= ADDCFLAGS="$(ADDCFLAGS)" ADDLDFLAGS="$(ADDLDFLAGS)" lib-shared all

override_dh_auto_test:
	$(MAKE) OPTFLAGS="$(OPTFLAGS)" ADDCFLAGS="$(ADDCFLAGS)" ADDLDFLAGS="$(ADDLDFLAGS)" test

override_dh_auto_install:
	# Install the program
	$(MAKE) PREFIX=/usr DESTDIR=$(CURDIR)/debian/rhash INSTALL_PROGRAM="$(INSTALL_PROGRAM)" install
	# Install static library
	$(MAKE) PREFIX=/usr DESTDIR=$(CURDIR)/debian/librhash-dev install-lib-static
	# Install shared library
	$(MAKE) PREFIX=/usr DESTDIR=$(CURDIR)/debian/librhash0 install-lib-shared

override_dh_strip:
	dh_strip -prhash
	dh_strip -plibrhash0 --dbg-package=librhash0-dbg
