#!/usr/bin/make -f
+#
+# (C) 2002-2008 Roland Rosenfeld <roland@debian.org>, based on
# Sample debian/rules that uses debhelper.
-# GNU copyright 1997 to 1999 by Joey Hess.
+# This file is public domain software, originally written by Joey Hess.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
-# This is the debhelper compatibility version to use.
-export DH_COMPAT=3
-
# 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)
DEBDIR=`pwd`/debian/privoxy
-CFLAGS="-O2"
-WITHDEBUG=""
-ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -g
- WITHDEBUG="--with-debug"
+# Include dpatch stuff.
+include /usr/share/dpatch/dpatch.make
+
+OPTIMIZE=
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+ OPTIMIZE=-O0
+else
+ OPTIMIZE=-O2
endif
-configure: configure-stamp
-configure-stamp:
+build: build-stamp
+build-stamp: patch-stamp
dh_testdir
autoheader
autoconf
- env CFLAGS=$(CFLAGS) \
+ env CFLAGS="$(OPTIMIZE) -g" \
./configure --prefix=/usr --sysconfdir=/etc \
- --mandir=/usr/share/man --with-docbook=no \
- $(WITHDEBUG)
-
- touch configure-stamp
-
-build: build-stamp
-
-build-stamp: configure-stamp
- dh_testdir
-
+ --mandir=/usr/share/man $(WITHDEBUG) \
+ --enable-zlib \
+ --with-docbook=/usr/share/sgml/docbook/stylesheet/dsssl/modular
$(MAKE)
+ $(MAKE) dok
+ env -u LANG $(MAKE) man
+ $(MAKE) man2html
touch build-stamp
-clean:
+clean: clean1 unpatch
+clean1:
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
- -$(MAKE) clean
- rm -f privoxy
- rm -f configure config.h config.h.in config.log config.cache \
- config.status GNUmakefile
+ [ ! -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
+ dh_clean -Xrc.privoxy.orig
-install: build
+install: build-stamp
dh_testdir
dh_testroot
- dh_clean -k
+ dh_clean -k -Xrc.privoxy.orig
dh_installdirs
install -m 0755 privoxy $(DEBDIR)/usr/sbin/privoxy
- sed -e 's/^\(\(trust\|proxy\)-info-url\|admin-address\)/#\1/' \
- -e 's#^confdir \.#confdir /etc/privoxy#' \
- -e 's#^logdir \.#logdir /var/log/privoxy#' \
- < config > $(DEBDIR)/etc/privoxy/config
+ install -m 644 config $(DEBDIR)/etc/privoxy/config
install -m 0644 default.action $(DEBDIR)/etc/privoxy/default.action
+ install -m 0644 match-all.action $(DEBDIR)/etc/privoxy/match-all.action
+ install -m 0644 user.action $(DEBDIR)/etc/privoxy/user.action
install -m 0644 default.filter $(DEBDIR)/etc/privoxy/default.filter
install -m 0644 trust $(DEBDIR)/etc/privoxy/trust
+ install -m 0755 tools/privoxy-log-parser.pl \
+ $(DEBDIR)/usr/bin/privoxy-log-parser
+ pod2man tools/privoxy-log-parser.pl \
+ > $(DEBDIR)/usr/share/man/man1/privoxy-log-parser.1
+
cp -r templates $(DEBDIR)/etc/privoxy/
rm -f $(DEBDIR)/etc/privoxy/templates/*~
rm -rf $(DEBDIR)/etc/privoxy/templates/CVS
- cp -r doc/webserver/user-manual $(DEBDIR)/usr/share/doc/privoxy/
- cp -r doc/webserver/faq $(DEBDIR)/usr/share/doc/privoxy/
- cp -r doc/webserver/developer-manual $(DEBDIR)/usr/share/doc/privoxy/
-
+# Remove CVS tags and trailing spaces from config files:
+ find $(DEBDIR)/etc/privoxy -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 install
+binary-indep: build-stamp install
# We have nothing to do by default.
# Build architecture-dependent files here.
-binary-arch: build install
+binary-arch: build-stamp install
dh_testdir
dh_testroot
# dh_installdebconf
- dh_installdocs
+ dh_installdocs -XCVS
+ (cd $(DEBDIR)/usr/share/doc/privoxy/; \
+ mv privoxy-index.html index.html)
dh_installexamples
dh_installmenu
dh_installlogrotate
dh_fixperms
# dh_makeshlibs
dh_installdeb
-# dh_perl
+ dh_perl
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
-.PHONY: build clean binary-indep binary-arch binary install configure
+
+.PHONY: build clean binary-indep binary-arch binary install patch unpatch \
+ clean1