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

%:
	dh $@ --parallel

override_dh_auto_configure:
	cd ChronoSync; \
	  ./waf configure --prefix=../debian/tmp2/chronosync; \
	  ./waf build; \
	  ./waf install; \

	PKG_CONFIG_PATH=debian/tmp2/chronosync/lib/pkgconfig:$PKG_CONFIG_PATH \
          ./waf configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var

override_dh_auto_build:
	./waf build

override_dh_auto_install:
	PKG_CONFIG_PATH=debian/tmp2/chronosync/lib/pkgconfig:$PKG_CONFIG_PATH \
          ./waf install --destdir=debian/chronochat

override_dh_auto_clean:
	./waf distclean

override_dh_clean:
	dh_clean
	cd ChronoSync; \
	  ./waf distclean; \
	  rm -rf .waf-1*; \
	  rm -rf .waf3-1*; \
	  rm -f .waf-tools/*.pyc; \
	  rm -f waf-tools/*.pyc

	./waf distclean
	rm -rf .waf-1*
	rm -rf .waf3-1*
	rm -f .waf-tools/*.pyc
	rm -f waf-tools/*.pyc

override_dh_auto_test:
