#!/usr/bin/make -f
# Sample debian/rules that uses debhelper. 
# GNU copyright 1997 by Joey Hess.
#
# This version is for a hypothetical package that builds an
# architecture-dependant package, as well as an architecture-independent
# package.

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

DEB_HOST_ARCH_OS := $(shell dpkg-architecture -qDEB_HOST_ARCH_OS 2>/dev/null)

configure: configure-stamp
configure-stamp:
	dh_testdir
	# Add here commands to configure the package.
	CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --bindir=/usr/bin --prefix=/usr --mandir=\$${prefix}/share/man
	touch configure-stamp

build: configure-stamp build-stamp
build-stamp:
	dh_testdir

	# Add here commands to compile the package.
	PREFIX=/usr MANDIR=/usr/share/man $(MAKE) -e

	touch build-stamp

clean:
	dh_testdir
	dh_testroot

	# Add here commands to clean up after the build process.
	-$(MAKE) distclean

	rm -f build-stamp configure-stamp debian/substvars

	dh_clean

install: DH_OPTIONS=
install: build
	dh_testdir
	dh_testroot
	dh_clean
	dh_installdirs

	# Add here commands to install the package into debian/tmp
	$(MAKE) -e install DESTDIR=$(CURDIR)/debian/tmp PREFIX=/usr

	dh_install --autodest --sourcedir=debian/tmp

	dh_installman

# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
# nothing to do here

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir -a
	dh_testroot -a
	dh_installdocs -a
	dh_installexamples -a 
	dh_installmenu -a
	dh_installchangelogs ChangeLog -a
	dh_strip -a
	dh_link -a
	dh_compress -a -X archive -X .c -X .h
	dh_fixperms -a
	dh_makeshlibs -V -v
	dh_installdeb -a
ifeq ($(DEB_HOST_ARCH_OS),kfreebsd)
	echo kfreebsd:Depends=libcam-dev >>debian/libsgutils2-dev.substvars
endif
	dh_shlibdeps -ldebian/tmp/usr/lib -L libsgutils2
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

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