#!/usr/bin/make -f

#export DH_VERBOSE=1

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
dpkg_buildflags = DEB_BUILD_MAINT_OPTIONS=$(DEB_BUILD_MAINT_OPTIONS) dpkg-buildflags
CFLAGS=$(shell $(dpkg_buildflags) --get CFLAGS)
CPPFLAGS=$(shell $(dpkg_buildflags) --get CPPFLAGS)
LDFLAGS=$(shell $(dpkg_buildflags) --get LDFLAGS)

SCRIPTS=adb2mhc gemcal mhc-sync mhc2palm palm2mhc today

RUBY=/usr/bin/ruby1.9.1
DESTDIR := $(CURDIR)/debian/mhc-utils
RUBYLIBDIR:=$(shell $(RUBY) -rrbconfig -e 'puts RbConfig::CONFIG["rubylibdir"]')
RUBYARCHDIR:=$(shell $(RUBY) -rrbconfig -e 'puts RbConfig::CONFIG["archdir"]')

build-indep: build-indep-stamp
build-indep-stamp:
	dh_testdir
	touch $@

build-arch: build-arch-stamp
build-arch-stamp:
	dh_testdir
	CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" $(RUBY) ./configure.rb --with-ruby=$(RUBY) --with-icondir=/usr/share/pixmaps/mhc
	(cd ruby-ext && $(MAKE))
	touch $@

build: build-arch build-indep

clean:
	dh_testdir
	dh_testroot
	rm -f *-stamp
	-(cd ruby-ext && $(MAKE) clean)
	-rm -f $(SCRIPTS) configure.log make.rb emacs/make.rb \
	  mkmf.log ruby-ext/mkmf.log ruby-ext/lib/mhc-gtk.rb \
	  ruby-ext/extconf.rb ruby-ext/Makefile
	dh_clean -Xemacs/mhc-vars.el.orig

install-indep:
	dh_testdir
	dh_testroot
	dh_prep -i -Xemacs/mhc-vars.el.orig
	dh_installdirs -i

	cp emacs/*.el debian/mhc/usr/share/emacs/site-lisp/mhc
	cp emacs/Makefile debian/mhc/usr/share/emacs/site-lisp/mhc
	cp emacs/MHC-MK debian/mhc/usr/share/emacs/site-lisp/mhc
	cp emacs/README.ja debian/mhc/usr/share/doc/mhc/emacs.README.ja
	cp icons/*.xbm debian/mhc/usr/share/pixmaps/mhc/xbm
	cp icons/*.xpm debian/mhc/usr/share/pixmaps/mhc

install-arch:
	dh_testdir
	dh_testroot
	dh_prep -a -Xemacs/mhc-vars.el.orig
	dh_installdirs -a

	cp xpm/*.xpm debian/mhc-utils/usr/share/pixmaps/mhc
	for s in $(SCRIPTS); \
	do \
	  install -m 755 $$s $(CURDIR)/debian/mhc-utils/usr/bin/$$s; \
	done
	(cd ruby-ext && $(MAKE) install DESTDIR=$(DESTDIR) \
	  RUBYLIBDIR=$(DESTDIR)/$(RUBYLIBDIR) \
	  RUBYARCHDIR=$(DESTDIR)/$(RUBYARCHDIR))

install: install-arch install-indep

binary-indep: build-indep install-indep
	dh_testdir
	dh_testroot
#	dh_installdebconf	
	dh_installdocs -i
	dh_installexamples -i
	dh_installemacsen -i
	dh_installman debian/mhc.5
#	dh_installinfo -i
	dh_installchangelogs -i
	dh_strip -i
	dh_compress -i
	dh_fixperms -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

binary-arch: build-arch install-arch
	dh_testdir
	dh_testroot
	dh_installdocs -a
	dh_installexamples -a
	dh_installmenu -a
	dh_installman -a debian/*.1
	dh_installchangelogs -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

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