merge Debian changes from 3.0.10 to 3.0.12.
[privoxy.git] / debian / rules
1 #!/usr/bin/make -f
2 #
3 # (C) 2002-2008 Roland Rosenfeld <roland@debian.org>, based on
4 # Sample debian/rules that uses debhelper.
5 # This file is public domain software, originally written by Joey Hess. 
6
7 # Uncomment this to turn on verbose mode.
8 #export DH_VERBOSE=1
9
10 # These are used for cross-compiling and for saving the configure script
11 # from having to guess our platform (since we know it already)
12 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
13 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
14
15 DEBDIR=`pwd`/debian/privoxy
16
17 # Include dpatch stuff.
18 include /usr/share/dpatch/dpatch.make
19
20 OPTIMIZE=
21 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
22         OPTIMIZE=-O0
23 else
24         OPTIMIZE=-O2
25 endif
26
27 build: build-stamp
28 build-stamp: patch-stamp
29         dh_testdir
30
31         autoheader
32         autoconf
33         env CFLAGS="$(OPTIMIZE) -g" \
34                 ./configure --prefix=/usr --sysconfdir=/etc \
35                 --mandir=/usr/share/man $(WITHDEBUG) \
36                 --enable-zlib \
37                 --with-docbook=/usr/share/sgml/docbook/stylesheet/dsssl/modular
38         $(MAKE)
39         $(MAKE) dok
40         env -u LANG $(MAKE) man
41         $(MAKE) man2html
42
43         touch build-stamp
44
45 clean: clean1 unpatch
46 clean1:
47         dh_testdir
48         dh_testroot
49         rm -f build-stamp configure-stamp
50
51         [ ! -f GNUmakefile ] || $(MAKE) clean
52         [ ! -f GNUmakefile ] || $(MAKE) distclean
53         rm -f configure config.h GNUmakefile
54         rm -f privoxy.8
55
56         rm -rf obj
57         rm -f ActivityConsole.jar
58         rm -f src/java/org/privoxy/activityconsole/*.class
59
60         rm -f doc/source/ldp.dsl
61         rm -rf doc/source/temp
62
63         dh_clean -Xrc.privoxy.orig
64
65 install: build-stamp
66         dh_testdir
67         dh_testroot
68         dh_clean -k -Xrc.privoxy.orig
69         dh_installdirs
70
71         install -m 0755 privoxy $(DEBDIR)/usr/sbin/privoxy
72
73         install -m 644 config $(DEBDIR)/etc/privoxy/config
74         install -m 0644 default.action $(DEBDIR)/etc/privoxy/default.action
75         install -m 0644 match-all.action $(DEBDIR)/etc/privoxy/match-all.action
76         install -m 0644 user.action $(DEBDIR)/etc/privoxy/user.action
77         install -m 0644 default.filter $(DEBDIR)/etc/privoxy/default.filter
78         install -m 0644 trust $(DEBDIR)/etc/privoxy/trust
79
80         install -m 0755 tools/privoxy-log-parser.pl \
81                 $(DEBDIR)/usr/bin/privoxy-log-parser
82         pod2man tools/privoxy-log-parser.pl \
83                 > $(DEBDIR)/usr/share/man/man1/privoxy-log-parser.1
84
85         cp -r templates $(DEBDIR)/etc/privoxy/
86         rm -f $(DEBDIR)/etc/privoxy/templates/*~
87         rm -rf $(DEBDIR)/etc/privoxy/templates/CVS
88
89 #       Remove CVS tags and trailing spaces from config files:
90         find $(DEBDIR)/etc/privoxy -type f \
91         | xargs grep -l '\$$[A-Z][^$$]*:[^$$]*\$$' \
92         | while read f; do \
93             sed -e 's/\$$\(Id: [^$$]*,v\)[^$$]*\$$/\1/' \
94                 -e 's/\$$\(Source: [^$$]*\)\$$/\1/' \
95                 -e 's/\$$\(Log: [^$$]*\)\$$/\1/' \
96                 -e 's/ *$$//' < $$f > $$f.new; \
97             mv -f $$f.new $$f; \
98         done
99
100 # Build architecture-independent files here.
101 binary-indep: build-stamp install
102 # We have nothing to do by default.
103
104 # Build architecture-dependent files here.
105 binary-arch: build-stamp install
106         dh_testdir
107         dh_testroot
108 #       dh_installdebconf       
109         dh_installdocs -XCVS
110         (cd $(DEBDIR)/usr/share/doc/privoxy/; \
111          mv privoxy-index.html index.html)
112         dh_installexamples
113         dh_installmenu
114         dh_installlogrotate
115 #       dh_installemacsen
116 #       dh_installpam
117 #       dh_installmime
118         dh_installinit
119         dh_installcron
120         dh_installman
121         dh_installinfo
122 #       dh_undocumented
123         dh_installchangelogs ChangeLog
124         dh_link
125         dh_strip
126         dh_compress
127         dh_fixperms
128 #       dh_makeshlibs
129         dh_installdeb
130         dh_perl
131         dh_shlibdeps
132         dh_gencontrol
133         dh_md5sums
134         dh_builddeb
135
136 binary: binary-indep binary-arch
137
138 .PHONY: build clean binary-indep binary-arch binary install patch unpatch \
139         clean1