#!/usr/bin/make -f
# -*- makefile -*-

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

include /usr/share/dpatch/dpatch.make

CFLAGS = -Wall -g

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

# Name of the source package
psource	:= omnibook-source

# The short upstream name, used for the module source directory
sname	:= omnibook

# prefix of the target package name
PACKAGE=omnibook-module

### end  KERNEL SETUP

configure: configure-stamp
configure-stamp:
	dh_testdir
	touch configure-stamp


build-arch: configure-stamp  build-arch-stamp
build-arch-stamp:
	dh_testdir
	touch build-arch-stamp

build-indep: patch configure-stamp build-indep-stamp
build-indep-stamp:
	dh_testdir

	touch build-indep-stamp

build: patch build-arch build-indep

clean: unpatch
	dh_testdir
	rm -f build-arch-stamp build-indep-stamp configure-stamp

	dh_clean

install: DH_OPTIONS=
install: patch build
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

	# Create the directories to install the source into
	dh_installdirs -p$(psource)  usr/src/modules/$(sname)/debian
	cp debian/compat debian/rules debian/changelog \
		debian/control debian/copyright debian/*.modules.in \
		debian/$(psource)/usr/src/modules/$(sname)/debian
	cp Makefile *.c *.h *.lds debian/$(psource)/usr/src/modules/$(sname)

	cd debian/$(psource)/usr/src && tar c modules | bzip2 -9 > $(sname).tar.bz2 && rm -rf modules
	dh_install

# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: build install
	dh_testdir -i
	dh_testroot -i
	dh_installchangelogs -i doc/ChangeLog
	dh_installdocs -i
	dh_installexamples -i
	dh_installman -i
	dh_link -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_installdeb -i
	dh_shlibdeps -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i
 
# Build architecture-dependent files here.
binary-arch: build install

# modifieable for experiments or debugging m-a
MA_DIR ?= /usr/share/modass
# load generic variable handling
-include $(MA_DIR)/include/generic.make
# load default rules, including kdist, kdist_image, ...
-include $(MA_DIR)/include/common-rules.make

ifndef KPKG_STEM
STEM:=linux
else
STEM:=${KPKG_STEM}
endif

kdist_clean: prep-deb-files
	[ ! -f Makefile ] || $(MAKE) KSRC=$(KSRC) clean
	dh_clean

kdist_config: prep-deb-files
	sed -i -e 's/_STEM_/$(STEM)/g' debian/control

binary-modules: kdist_config prep-deb-files
	dh_testroot
	dh_prep
	dh_installdirs lib/modules/$(KVERS)/extra

	# Build the module
	$(MAKE) KSRC=$(KSRC) KVERS=$(KVERS)

	# Install the module
	$(MAKE) install KSRC=$(KSRC) DESTDIR=$(CURDIR)/debian/$(PKGNAME) INSTDIR=extra DEPMOD="/bin/true"

	dh_installdocs
	dh_compress
	dh_installmodules
	dh_installchangelogs
	dh_fixperms
	dh_installdeb
	dh_gencontrol -- -v$(VERSION)
	dh_md5sums
	dh_builddeb --destdir=$(DEB_DESTDIR)
	dh_prep

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure binary-modules kdist kdist_config kdist_image kdist_clean
