#!/usr/bin/make -f
#
# (C) 2002-2008 Roland Rosenfeld <roland@debian.org>, based on
# Sample debian/rules that uses debhelper.
# This file is public domain software, originally written by Joey Hess. 

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

# These are used for cross-compiling and for saving the configure script
# from having to guess our platform (since we know it already)
DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

DEBDIR=`pwd`/debian/privoxy
BINDIR=$(DEBDIR)/usr/sbin
CONFDIR=$(DEBDIR)/etc/privoxy
TEMPLATEDIR=$(CONFDIR)/templates

# Include dpatch stuff.
include /usr/share/dpatch/dpatch.make

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

build: build-stamp
build-stamp: patch-stamp
	dh_testdir

	autoheader
	autoconf
	env CFLAGS="$(OPTIMIZE) -g" \
		./configure --prefix=/usr --sysconfdir=/etc \
		--mandir=/usr/share/man	$(WITHDEBUG) \
		--enable-zlib
	$(MAKE)

	touch build-stamp

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

	[ ! -f GNUmakefile ] || $(MAKE) clean
	[ ! -f GNUmakefile ] || $(MAKE) distclean
	rm -f configure config.h GNUmakefile
	rm -f privoxy.8

	rm -rf obj
	rm -f ActivityConsole.jar
	rm -f src/java/org/privoxy/activityconsole/*.class

	rm -f doc/source/ldp.dsl
	rm -rf doc/source/temp

	dh_clean -Xrc.privoxy.orig

install: build-stamp
	dh_testdir
	dh_testroot
	dh_clean -k -Xrc.privoxy.orig
	dh_installdirs

	install -d $(BINDIR) $(CONFDIR) $(TEMPLATEDIR)

	install -m 0755 privoxy $(BINDIR)/privoxy

	install -m 0644 config $(CONFDIR)/config
	install -m 0644 default.action $(CONFDIR)/default.action
	install -m 0644 global.action $(CONFDIR)/global.action
	install -m 0644 standard.action $(CONFDIR)/standard.action
	install -m 0644 user.action $(CONFDIR)/user.action
	install -m 0644 neilvandyke.action $(CONFDIR)/neilvandyke.action
	install -m 0644 default.filter $(CONFDIR)/default.filter
	install -m 0644 user.filter $(CONFDIR)/user.filter
	install -m 0644 trust $(CONFDIR)/trust

	cp -r templates $(CONFDIR)/
	rm -f $(TEMPLATEDIR)/*~
	rm -rf $(TEMPLATEDIR)/CVS

#	Remove CVS tags and trailing spaces from config files:
	find $(CONFDIR) -type f \
	| xargs grep -l '\$$[A-Z][^$$]*:[^$$]*\$$' \
	| while read f; do \
	    sed -e 's/\$$\(Id: [^$$]*,v\)[^$$]*\$$/\1/' \
		-e 's/\$$\(Source: [^$$]*\)\$$/\1/' \
		-e 's/\$$\(Log: [^$$]*\)\$$/\1/' \
		-e 's/ *$$//' < $$f > $$f.new; \
	    mv -f $$f.new $$f; \
	done

# Build architecture-independent files here.
binary-indep: build-stamp install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build-stamp install
	dh_testdir
	dh_testroot
#	dh_installdebconf	
#	dh_installdocs -XCVS
#	(cd $(DEBDIR)/usr/share/doc/privoxy/; \
#	 mv privoxy-index.html index.html)
	dh_installexamples
	dh_installmenu
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installpam
#	dh_installmime
	dh_installinit
#	dh_installcron
#	dh_installman
#	dh_installinfo
#	dh_undocumented
#	dh_installchangelogs ChangeLog
	dh_link
	dh_strip
	dh_compress
	dh_fixperms
#	dh_makeshlibs
	dh_installdeb
	dh_perl
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary: binary-indep binary-arch

.PHONY: build clean binary-indep binary-arch binary install patch unpatch \
	clean1
