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

PL3STOCKMODDIR=$(CURDIR)/src/PL3/omap1
PL3POWERMODDIR=$(CURDIR)/src/PL3/power40
HERMESSTOCKMODDIR=$(CURDIR)/src/hermes/omap1
HERMESPOWERMODDIR=$(CURDIR)/src/hermes/power40
UISRC=$(CURDIR)/src/ui

ifneq (,$(findstring parallel,$(DEB_BUILD_OPTIONS)))
    PARALLEL_JOBS := $(shell echo $(DEB_BUILD_OPTIONS) | \
        sed -e 's/.*parallel=\([0-9]\+\).*/\1/')
    ifeq ($(DEB_BUILD_OPTIONS),$(PARALLEL_JOBS))
        PARALLEL_JOBS := $(shell if [ -f /proc/cpuinfo ]; \
            then echo `cat /proc/cpuinfo | grep 'processor' | wc -l`; \
            else echo 1; fi)
    endif
    NJOBS := -j$(PARALLEL_JOBS)
endif

CFLAGS = -Wall -g
EXTRA_CFLAGS += -DENABLE_MUSB_CONTROLLER

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -O0
else
	CFLAGS += -O2
endif

configure: configure-stamp
configure-stamp:
	dh_testdir
	cd /usr/src && tar -xjvf kernel-power-source.tar.bz2 && cd kernel-power-source && make rx51power_defconfig && time make -j $(NJOBS) EXTRAVERSION=.10power40 bzImage
	cd /usr/src && tar -xjvf kernel-source.tar.bz2 && cd kernel-source && make rx51_defconfig && time make -j $(NJOBS) EXTRAVERSION=-omap1 bzImage
	cd $(CURDIR)/src/ui && qmake
	touch configure-stamp


build: build-stamp

build-stamp: configure-stamp
	dh_testdir
	cd $(PL3STOCKMODDIR) && $(MAKE) -C pl3 && $(MAKE) -j $(NJOBS) -C /usr/src/kernel-source M=`pwd` EXTRAVERSION=-omap1 EXTRA_CFLAGS=-DENABLE_MUSB_CONTROLLER modules
	cd $(PL3POWERMODDIR) && $(MAKE) -C pl3 && $(MAKE) -j $(NJOBS) -C /usr/src/kernel-power-source M=`pwd` EXTRAVERSION=.10power40 EXTRA_CFLAGS=-DENABLE_MUSB_CONTROLLER modules
	cd $(HERMESSTOCKMODDIR) && $(MAKE) -j $(NJOBS) -C /usr/src/kernel-source M=`pwd` EXTRAVERSION=-omap1 EXTRA_CFLAGS=-DENABLE_MUSB_CONTROLLER modules
	cd $(HERMESPOWERMODDIR) && $(MAKE) -j $(NJOBS) -C /usr/src/kernel-power-source M=`pwd` EXTRAVERSION=.10power40 EXTRA_CFLAGS=-DENABLE_MUSB_CONTROLLER modules
	cd $(UISRC) && $(MAKE) -j $(NJOBS)
	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	cd $(PL3STOCKMODDIR) && $(MAKE) clean
	cd $(PL3POWERMODDIR) && $(MAKE) clean
	cd $(HERMESSTOCKMODDIR) && $(MAKE) clean
	cd $(HERMESPOWERMODDIR) && $(MAKE) clean
	cd $(UISRC) && qmake && $(MAKE) clean
	rm -f build-stamp configure-stamp
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	cp -r $(CURDIR)/data/resources $(CURDIR)/debian/psfreedom/opt/psfreedom/
	dh_install

# 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 debian/changelog
#	dh_installdocs
#	dh_installexamples
#	dh_install
#	dh_installmenu
#	dh_installdebconf
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installpam
#	dh_installmime
#	dh_python
#	dh_installinit
#	dh_installcron
#	dh_installinfo
#	dh_installman
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
#	dh_perl
#	dh_makeshlibs
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

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