#!/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.

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

LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
CXXFLAGS += -std=c++11
LIBDIR := /usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

%:
	dh $@ --parallel --with=systemd

override_dh_auto_configure:
	CXXFLAGS="$(CXXFLAGS)" ./waf configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --boost-libs="$(LIBDIR)"

override_dh_auto_build:
	./waf build

override_dh_auto_install:
	./waf install --destdir=debian/tmp

override_dh_auto_clean:
	./waf distclean

override_dh_clean:
	dh_clean
	./waf distclean
	rm -rf .waf-1*
	rm -f .waf-tools/*.pyc
	rm -f docs/*.pyc

override_dh_auto_test:

override_dh_systemd_enable:
	dh_systemd_enable -pnfd
	dh_systemd_enable -pnfd-status-http-server
	dh_systemd_enable -pndn-autoconfig-server --no-enable
	dh_systemd_enable -pndn-autoconfig-client --no-enable
	dh_systemd_enable -pnfd-autoreg --no-enable

override_dh_systemd_start:
	dh_systemd_start -pnfd
	dh_systemd_start -pnfd-status-http-server
	dh_systemd_start -pndn-autoconfig-server --no-start
	dh_systemd_start -pndn-autoconfig-client --no-start
	dh_systemd_start -pnfd-autoreg --no-start

.PHONY: override_dh_strip
override_dh_strip:
	dh_strip --dbg-package=nfd-dbg
