#!/usr/bin/make -f
# Sample debian/rules that uses debhelper. 
# GNU copyright 1997 by Joey Hess.

# prefix of the target package name
PACKAGE=tidev-modules
# 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
-include $(MA_DIR)/include/common-rules.make

configure: configure-stamp
configure-stamp:
	dh_testdir
	# Add here commands to configure the package.
	# We have nothing to do.

	touch configure-stamp

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

	# Add here commands to compile the package.
	# We're not building anything.

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp

	# Add here commands to clean up after the build process.

	dh_clean

install: DH_OPTIONS=
install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	# Add here commands to install the package
	cp -a tidev-modules $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules

	mkdir $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/debian
	cp -f debian/*.modules.in $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/debian
	cp -f debian/changelog $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/debian
	cp -f debian/compat $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/debian
	cp -f debian/copyright $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/debian
	cp -f debian/rules $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/debian

	chown -R root:src $(CURDIR)/debian/tidev-modules-source/usr/src/modules/

	cp -f tidev-modules/ticable.h $(CURDIR)/debian/tidev-modules-source/usr/include/tilp/
	cp -f tidev-modules/tiglusb/module/tiglusb.h $(CURDIR)/debian/tidev-modules-source/usr/include/tilp/

	# COPYING files are not needed, it's GPL
	rm -f $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/tipar/COPYING
	rm -f $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/tiser/COPYING
	rm -f $(CURDIR)/debian/tidev-modules-source/usr/src/modules/tidev-modules/tiglusb/COPYING

	# Pack all the stuff into a nice tarball
	cd $(CURDIR)/debian/tidev-modules-source/usr/src && tar cf - modules | gzip -9 > tidev-modules.tar.gz && rm -rf modules

# Build architecture-independent files here.
binary-indep: build install
	dh_testdir -i
	dh_testroot -i
	dh_installdocs -i 
	dh_installexamples -i
	dh_installmenu -i
	dh_installchangelogs -i
	dh_strip -i
	dh_link -i
	dh_compress -i
	dh_fixperms -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
	dh_testdir -a
	dh_testroot -a 
	dh_installdocs -a
	dh_installexamples -a
	dh_installmenu -a
	dh_installchangelogs -a
	dh_strip -a
	dh_link -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

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



.PHONY: kdist_config
kdist_config: prep-deb-files
kdist_configure: kdist_config

.PHONY: binary_modules binary-modules

TIMODULES_DOC = $(CURDIR)/debian/$(PKGNAME)/usr/share/doc/$(PKGNAME)

KMAJ=$(shell echo $(KVERS) | cut -b1-3)

# Only tiser can be built for a 2.6 kernel
ifeq ($(KMAJ), 2.6)
TIMODULES = tiser
MVER=.2.6
else
TIMODULES ?= tipar tiser tiglusb
  ifeq ($(wildcard $(KSRC)/Rules.make),)
  MVER=.autonom
  else
  MVER=""
  endif
endif

binary-modules: binary_modules
binary_modules: kdist_config
	dh_installdirs -a lib/modules/$(KVERS)/kernel/drivers/usb
	dh_installdirs -a lib/modules/$(KVERS)/kernel/drivers/misc
	dh_installdirs -a usr/share/doc/$(PKGNAME)

	for module in $(TIMODULES); do \
		$(MAKE) -f Makefile$(MVER) TIMODULE=$$module KDIR=$(KSRC) KMAJ=$(KMAJ) ; \
		$(MAKE) -f Makefile$(MVER) TIMODULE=$$module KDIR=$(KSRC) KMAJ=$(KMAJ) KVERS=$(KVERS) KERNELRELEASE=$(KVERS) DESTDIR=$(CURDIR)/debian/$(PKGNAME) install ; \
		dh_installdirs -a usr/share/doc/$(PKGNAME)/$$module ; \
		cp -f $$module/README $(TIMODULES_DOC)/$$module ; \
		cp -f $$module/CHANGELOG $(TIMODULES_DOC)/$$module ; \
		cp -f $$module/devices.sh $(TIMODULES_DOC)/$$module ; \
		cp -f $$module/Insmod-options $(TIMODULES_DOC)/$$module ; \
	done

	rmdir --ignore-fail-on-non-empty $(CURDIR)/debian/$(PKGNAME)/lib/modules/$(KVERS)/kernel/drivers/usb
	rmdir --ignore-fail-on-non-empty $(CURDIR)/debian/$(PKGNAME)/lib/modules/$(KVERS)/kernel/drivers/misc

	dh_testdir
	dh_testroot
	dh_installdocs
	dh_installmodules
	dh_installchangelogs 
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
	dh_installdeb
	dh_gencontrol -- -v$(VERSION)
	dh_md5sums
	dh_builddeb --destdir=$(DEB_DESTDIR)

.PHONY: kdist_clean
kdist_clean:
	rm -f build-stamp configure-stamp

	$(MAKE) -f Makefile$(AUTONOM) TIMODULE=tipar clean
	$(MAKE) -f Makefile$(AUTONOM) TIMODULE=tiser clean
	$(MAKE) -f Makefile$(AUTONOM) TIMODULE=tiglusb clean

	-dh_clean
