#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
# #export DH_VERBOSE=1
 
TARGETDIR_LC=$(CURDIR)/debian/microb-l10n/usr/lib/microb-engine/chrome
BUILDDIR = $(CURDIR)/build-tree
LANGDIR = $(BUILDDIR)/l10n
export QUILT_PATCHES=$(CURDIR)/debian/patches
QUILT_PATCHES:=$(CURDIR)/debian/patches
STAMPDIR_PATCH:=$(CURDIR)/stampdir/log/patch
STAMP_DIR:=$(CURDIR)/stampdir
STAMPDIR_LOG:=$(CURDIR)/stampdir/log

build: unpack-stamp patch-stamp build-stamp
build-stamp:
	dh_testdir
	touch build-stamp
	
unpack: unpack-stamp
unpack-stamp:
	dh_testdir

	mkdir -p $(BUILDDIR) 
	tar -zxvf $(CURDIR)/l10n.tar.gz -C $(BUILDDIR) > /dev/null

	mkdir -p $(BUILDDIR) 
	cp -r $(CURDIR)/l10n2 $(BUILDDIR) > /dev/null
	
	if [ -d $(BUILDDIR)/l10n/es-AR ]; then \
	    mv $(BUILDDIR)/l10n/es-AR $(BUILDDIR)/l10n/es-MX ; \
	fi

	if [ -d $(BUILDDIR)/l10n/nb-NO ]; then \
	    cp -R $(BUILDDIR)/l10n/nb-NO $(BUILDDIR)/l10n/no-NO ; \
	fi

	if [ -d $(BUILDDIR)/l10n/fr ]; then \
	    cp -R $(BUILDDIR)/l10n/fr $(BUILDDIR)/l10n/fr-CA ; \
	fi

	touch unpack-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f unpack-stamp patch-stamp build-stamp
	rm -rf $(CURDIR)/stampdir
	rm -rf $(CURDIR)/patches
	rm -f $(CURDIR)/.pc
	
	-rm -rf $(BUILDDIR)

	dh_clean


patch: patch-stamp
patch-stamp:
	mkdir -p stampdir/patches
	echo 2 > stampdir/patches/.version
	mkdir -p stampdir/log
	rm -f .pc
	rm -f patches
	ln -s debian/patches
	ln -s stampdir/patches .pc
	if ! [ `which quilt` ]; then \
		echo "Couldn't find quilt. Please install it or add it to the build-depends for this package."; \
		exit 1; \
	fi; \
        if quilt next; then \
          echo -n "Applying patches... "; \
            if cd $(LANGDIR) && rm -f .pc && rm -f patches && ln -s ../../.pc .pc && ln -s ../../patches patches \
               && quilt push -a -v >  $(STAMPDIR_PATCH); then \
            echo "successful."; \
          else \
            cd $(CURDIR) && quilt next; \
            echo "failed! (check $(STAMP_DIR)/log/patch for details)";cat $(STAMP_DIR)/log/patch; echo ""; \
            echo -n "try: perl debian/tools/fixreject.pl "; quilt next; \
            echo " and sh debian/tools/refresh_patches.sh "; \
            exit 1; \
          fi; \
        else \
          echo "No patches to apply"; \
        fi; \
        >$@

unpatch:
	rm -f $(STAMP_DIR)/patch
	@echo -n "Unapplying patches..."; \
        if [ -e $(STAMP_DIR)/patches/applied-patches ]; then \
          if test -d $(LANGDIR); then \
          if cd $(LANGDIR) && quilt pop -a -v > $(STAMPDIR_LOG)/unpatch; then \
            echo "successful."; \
          else \
            echo "failed! (check $(STAMP_DIR)/log/unpatch for details)"; \
            exit 1; \
          fi; \
          fi; \
        else \
          echo "nothing to do."; \
        fi

install: build
	dh_testdir
	dh_testroot
	dh_clean -k 
	dh_installdirs

	# translation
	for str in `echo da de es-MX en-GB es-ES fr fr-CA it nl pt-BR pt-PT fi ru sv-SE no-NO`;do \
	    SOURCE_DIR=$(BUILDDIR)/l10n/$$str ; \
	    SOURCE_DIR_2=$(BUILDDIR)/l10n2/$$str/locale/$$str ; \
	    DEST_DIR=$(TARGETDIR_LC)/$$str/locale/$$str ; \
	    mkdir -p $$DEST_DIR/necko/ ; \
	    mkdir -p $$DEST_DIR/global/{layout,security,xslt,xml,dom} ; \
            mkdir -p $$DEST_DIR/global-platform/unix/ ; \
            mkdir -p $$DEST_DIR/pipnss/ ; \
            mkdir -p $$DEST_DIR/mozapps/extensions ; \
            mkdir -p $$DEST_DIR/global-region/ ; \
            mkdir -p $$DEST_DIR/pippki/ ; \
            mkdir -p $(TARGETDIR_LC)/$$str/locale/branding/ ; \
            install -m 644 $$SOURCE_DIR/netwerk/*.* $$DEST_DIR/necko/ ;\
            install -m 644 $$SOURCE_DIR/dom/chrome/*.* $$DEST_DIR/global/ ;\
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/css.properties $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/xbl.properties $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/xul.properties $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/layout_errors.properties $$DEST_DIR/global/ ;\
            install -m 644 $$SOURCE_DIR/dom/chrome/dom/*.* $$DEST_DIR/global/dom/ ;\
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/MediaDocument.properties $$DEST_DIR/global/layout/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/xmlparser.properties $$DEST_DIR/global/layout/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/layout/HtmlForm.properties $$DEST_DIR/global/layout/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/security/*.* $$DEST_DIR/global/security/ ; \
            install -m 644 $$SOURCE_DIR/toolkit/chrome/mozapps/extensions/about.dtd $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/toolkit/chrome/mozapps/extensions/*.* $$DEST_DIR/mozapps/extensions/ ; \
            install -m 644 $$SOURCE_DIR/browser/chrome/branding/brand.dtd $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/browser/chrome/browser/preferences/preferences.dtd $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/toolkit/chrome/global/*.* $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR/toolkit/chrome/global-region/*.dtd $$DEST_DIR/global-region/ ; \
            install -m 644 $$SOURCE_DIR/toolkit/chrome/global-region/*.properties $$DEST_DIR/global-region/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/accessibility/unix/*.* $$DEST_DIR/global-platform/unix/ ; \
            install -m 644 $$SOURCE_DIR/toolkit/chrome/global-platform/unix/*.* $$DEST_DIR/global-platform/unix/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/xslt/*.* $$DEST_DIR/global/xslt/ ; \
            install -m 644 $$SOURCE_DIR/dom/chrome/xml/*.* $$DEST_DIR/global/xml/ ; \
            install -m 644 $$SOURCE_DIR/security/manager/chrome/pipnss/*.* $$DEST_DIR/pipnss/ ; \
            install -m 644 $$SOURCE_DIR/security/manager/chrome/pippki/*.* $$DEST_DIR/pippki/ ; \
            install -m 644 $$SOURCE_DIR/browser/chrome/branding/*.* $(TARGETDIR_LC)/$$str/locale/branding/ ; \
            install -m 644 $$SOURCE_DIR_2/../branding/*.* $(TARGETDIR_LC)/$$str/locale/branding/ ; \
            install -m 644 $$SOURCE_DIR_2/global/*.* $$DEST_DIR/global/ ; \
            install -m 644 $$SOURCE_DIR_2/global/xml/*.* $$DEST_DIR/global/xml/ ; \
            install -m 644 $$SOURCE_DIR_2/global/xslt/*.* $$DEST_DIR/global/xslt ; \
            install -m 644 $$SOURCE_DIR_2/global/layout/*.* $$DEST_DIR/global/layout ; \
            install -m 644 $$SOURCE_DIR_2/global/security/*.* $$DEST_DIR/global/security ; \
            install -m 644 $$SOURCE_DIR_2/global/dom/*.* $$DEST_DIR/global/dom ; \
            install -m 644 $$SOURCE_DIR_2/global-platform/unix/*.* $$DEST_DIR/global-platform/unix ; \
            install -m 644 $$SOURCE_DIR_2/necko/*.* $$DEST_DIR/necko/ ; \
            install -m 644 $$SOURCE_DIR_2/pipnss/*.* $$DEST_DIR/pipnss/ ; \
            install -m 644 $$SOURCE_DIR_2/pippki/*.* $$DEST_DIR/pippki/ ; \
            install -m 644 $(CURDIR)/manifest/$$str.manifest $(TARGETDIR_LC)/ ; \
	done ;

binary-indep: build install

binary-arch: build install
	dh_testdir
	dh_testroot
	dh_installchangelogs 
	dh_link
	dh_compress
	dh_strip
	dh_fixperms
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

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