#!/usr/bin/make -f
# $Id: rules 161 2010-06-12 13:43:29Z robert $
# Sample debian/rules that uses debhelper.
# This file is public domain software, originally written by Joey Hess.
#
# This version is for a multibinary package. It also allows you to build any
# of the binary packages independantly, via binary-<package> targets.
# $Id: rules 161 2010-06-12 13:43:29Z robert $

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

########################
#    CONFIG STUFF      #
########################

idict-package=ipolish
words-package=wpolish
myspell-package=myspell-pl

export LC_ALL=C
unexport LANGUAGE

BUILD_TREE	:= $(CURDIR)
TMP_BUILD_DIR   := debian/BUILDDIR
STAMP_DIR	:= debian/STAMPDIR
# Locales
LOCALE_DIR	:= $(TMP_BUILD_DIR)/locale
LOCALE_NAME	:= pl_PL
LOCALE_CHARSET	:= ISO-8859-2
SORT		:= env LOCPATH="$(LOCALE_DIR)" LC_ALL="$(LOCALE_NAME).$(LOCALE_CHARSET)" sort
     
DESTDIR		:= debian/tmp



# This has to be exported to make some magic below work.
export DH_OPTIONS

########################
#    BUILD TARGETS     #
########################
build-common: $(STAMP_DIR)/build-stamp-common
$(STAMP_DIR)/build-stamp-common:
	dh_testdir
	mkdir 	   -p "$(LOCALE_DIR)" "$(TMP_BUILD_DIR)" "$(STAMP_DIR)"
	
	# Build Polish locale definition
	localedef  -i "$(LOCALE_NAME)" -f "$(LOCALE_CHARSET)" 	\
		       "$(LOCALE_DIR)/$(LOCALE_NAME).$(LOCALE_CHARSET)"
	

	rm -f $(TMP_BUILD_DIR)/polish.all
	$(SORT) -u < $(BUILD_TREE)/polish.all > $(TMP_BUILD_DIR)/polish.all
	
	# build ipolish hash file
	cat $(TMP_BUILD_DIR)/polish.all | icombine $(BUILD_TREE)/polish.aff > $(TMP_BUILD_DIR)/polish.dict
	buildhash $(TMP_BUILD_DIR)/polish.dict $(BUILD_TREE)/polish.aff $(TMP_BUILD_DIR)/polish.hash
	touch "$@"
     

build-arch: $(STAMP_DIR)/build-stamp-arch
$(STAMP_DIR)/build-stamp-arch: $(STAMP_DIR)/build-stamp-common
	touch "$@"
	

build-indep: $(STAMP_DIR)/build-stamp-indep
$(STAMP_DIR)/build-stamp-indep: $(STAMP_DIR)/build-stamp-common

	## build myspell-pl aff file
	ispellaff2myspell --myheader debian/sources/myspell.header \
			 --charset=latin2 \
			 $(BUILD_TREE)/polish.aff > $(TMP_BUILD_DIR)/pl.aff

	## build myspell-pl dic file
	awk -f debian/sources/i2m_dict.awk \
			< $(TMP_BUILD_DIR)/polish.all \
			> $(TMP_BUILD_DIR)/pl.dic.tmp
	cat $(TMP_BUILD_DIR)/pl.dic.tmp | wc -l > $(TMP_BUILD_DIR)/pl.dic
	cat $(TMP_BUILD_DIR)/pl.dic.tmp >> $(TMP_BUILD_DIR)/pl.dic

	## build wordlist
ifeq (,$(findstring testbuild,$(DEB_BUILD_OPTIONS)))
	cat $(TMP_BUILD_DIR)/polish.dict | \
		ispell -d $(TMP_BUILD_DIR)/polish -e | \
		tr '\040' '\012' > $(TMP_BUILD_DIR)/polish.words.unsorted

	$(SORT) -u  < $(TMP_BUILD_DIR)/polish.words.unsorted > $(TMP_BUILD_DIR)/polish.words
	recode iso-8859-2..utf-8  $(TMP_BUILD_DIR)/polish.words
else
	touch $(TMP_BUILD_DIR)/polish.words
	echo "Test build.... Press any key..."
	read THROWAWAY
endif
	touch "$@"

# the arch target should be run even for `arch: all' packages
build: $(STAMP_DIR)/build-stamp-common

########################
#    CLEAN TARGET      #
########################
clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp

	rm -rf $(TMP_BUILD_DIR) $(LOCALE_DIR) $(STAMP_DIR) $(SOURCE_DIR)
	rm -f debian/[iw]polish.config debian/[iw]polish.templates

	dh_clean



########################
#   INSTALL TARGETS    #
########################
install-indep: DH_OPTIONS=
install-indep: $(STAMP_DIR)/build-stamp-indep
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs
	dh_installdirs -p${words-package}   -P$(DESTDIR)
	dh_installdirs -p${myspell-package} -P$(DESTDIR)

	install -p -g root -m 644 -o root $(TMP_BUILD_DIR)/polish.words \
						$(DESTDIR)/usr/share/dict/polish

	dh_install -i
	installdeb-wordlist -p${words-package}
	installdeb-myspell -p${myspell-package} --srcdir=$(TMP_BUILD_DIR)

install-arch: DH_OPTIONS=
install-arch: $(STAMP_DIR)/build-stamp-arch
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs
	dh_installdirs -p${idict-package}   -P$(DESTDIR)
	dh_installdocs -p${idict-package} $(BUILD_TREE)/README

	install -p -g root -m 644 -o root $(BUILD_TREE)/polish.aff \
						$(DESTDIR)/usr/lib/ispell/
	install -p -g root -m 644 -o root $(TMP_BUILD_DIR)/polish.hash \
						$(DESTDIR)/usr/lib/ispell/

	dh_install -a
	installdeb-ispell -p${idict-package}

install: install-indep install-arch


########################
#    BINARY TARGETS    #
########################
# This single target is used to build all the packages, all at once, or
# one at a time. So keep in mind: any options passed to commands here will
# affect _all_ packages. Anything you want to only affect one package
# should be put in another target, such as the install target.
binary-common:
	dh_testdir
	dh_testroot
	dh_installchangelogs
	dh_installdocs
	dh_installexamples
#	dh_installmenu
#	dh_installdebconf
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installcatalogs
#	dh_installpam
#	dh_installmime
#	dh_installinit
	dh_installman
#	dh_installcron
#	dh_installinfo
#	dh_undocumented
	dh_strip
	dh_link
	dh_compress
	dh_fixperms
#	dh_perl
#	dh_python
#	dh_makeshlibs
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

# Build architecture independant packages using the common target.
binary-indep: build-indep install-indep
	 $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common

# Build architecture dependant packages using the common target.
binary-arch: build-arch install-arch
	$(MAKE) -f debian/rules DH_OPTIONS=-a binary-common

# Any other binary targets build just one binary package at a time.
binary-%: build install
	make -f debian/rules binary-common DH_OPTIONS=-p$*

binary: binary-indep binary-arch

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