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

# Using quilt
include /usr/share/quilt/quilt.make

# Determine Maemo version
MAEMO_VERSION:=$(shell cut -d"." -f1 /etc/maemo_version)

CFLAGS:=-Wall -g -DMAEMO -DMAEMO_VERSION=$(MAEMO_VERSION)
LDFLAGS:=-Wl,-z,defs

# Decide install prefix
ifeq ($(shell expr "$(MAEMO_VERSION)" "<" 5), 1)
	INSTALL_PREFIX=/usr/share/games
else
	INSTALL_PREFIX=/usr
endif

M4:=m4
M4DEFS:=-DMAEMO_MAJOR=$(MAEMO_VERSION) -DINSTALL_PREFIX=$(INSTALL_PREFIX)

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS+=-O0
else ifneq (,$(findstring arm,$(DEB_BUILD_GNU_TYPE)))
	CFLAGS+=-Os
	ifneq (,$(findstring vfp,$(DEB_BUILD_OPTIONS)))
		CFLAGS+=-march=armv6j -mtune=arm1136jf-s -mfpu=vfp -mfloat-abi=softfp
	endif
else # x86
	CFLAGS+=-O2
endif

BUILDDIR=$(CURDIR)/build

configure: configure-stamp
configure-stamp: $(QUILT_STAMPFN)
	dh_testdir
	
	mkdir build
	cd $(BUILDDIR) && cmake \
		-DCMAKE_INSTALL_PREFIX="$(INSTALL_PREFIX)" \
		-DCMAKE_CXX_FLAGS:STRING="$(CFLAGS)" \
		-DCMAKE_CXX_LINK_FLAGS:STRING="$(LDFLAGS)" \
		-DBUILD_SHARED_LIBS=ON \
		$(CURDIR)
	touch configure-stamp

build: build-stamp

build-stamp: configure-stamp
	dh_testdir

	$(MAKE) -C $(BUILDDIR)

	touch $@

clean: unpatch
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp
	#rm -f $(CURDIR)/src/config.h
	rm -rf $(BUILDDIR)

	dh_clean 

install: build
	dh_testdir
	dh_testroot
	dh_clean -k 
	dh_installdirs

	# Put binary in prefix while installing data
	cd $(BUILDDIR); $(MAKE) DESTDIR=$(CURDIR)/debian/yaml-cpp install
	cp -a $(CURDIR)/debian/yaml-cpp/usr/lib/libyaml-cpp.so.0.5.1 $(CURDIR)/debian/libyaml-cpp0/usr/lib/
	cp -a $(CURDIR)/debian/yaml-cpp/usr/lib/libyaml-cpp.so.0.5 $(CURDIR)/debian/libyaml-cpp0/usr/lib/
	cp -a $(CURDIR)/debian/yaml-cpp/usr/lib/libyaml-cpp.so $(CURDIR)/debian/libyaml-cpp0/usr/lib/
#	cp -a $(CURDIR)/debian/yaml-cpp/usr/lib/libyaml-cpp.so.0.5.1 $(CURDIR)/debian/libyaml-cpp0/usr/lib

	cp -a $(CURDIR)/debian/yaml-cpp/usr/include $(CURDIR)/debian/libyaml-cpp0-dev/usr
	cp  $(CURDIR)/debian/yaml-cpp/usr/lib/libyaml-cpp.so $(CURDIR)/debian/libyaml-cpp0-dev/usr/lib
	cp -a $(CURDIR)/debian/yaml-cpp/usr/lib/pkgconfig $(CURDIR)/debian/libyaml-cpp0-dev/usr/lib

# 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_installchangelogs 
	dh_installdocs
	dh_installexamples
	dh_installman
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	maemo-optify
	dh_md5sums
	dh_builddeb

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