X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=debian%2Frules;h=e7745b0caf791601d01b109d4b92625cc5c2d01d;hp=6e7ada55e28a5b86926f5c79ecbac5478e7eddaf;hb=3d8c0631436ee4a0536e013e5d57976db59c15c9;hpb=6aa60a252059f209c5f3fb14502ad1deff7aba61 diff --git a/debian/rules b/debian/rules index 6e7ada55..e7745b0c 100755 --- a/debian/rules +++ b/debian/rules @@ -1,145 +1,105 @@ #!/usr/bin/make -f # -# (C) 2002-2006 Roland Rosenfeld , based on -# Sample debian/rules that uses debhelper. -# This file is public domain software, originally written by Joey Hess. - +# (c) 2002-2021 Roland Rosenfeld +# # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 +#export DH_OPTIONS=-v -# 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) +export DEB_BUILD_MAINT_OPTIONS = hardening=+all DEBDIR=`pwd`/debian/privoxy -# 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 +%: + dh $@ +override_dh_auto_configure: autoheader autoconf - env CFLAGS="$(OPTIMIZE) -g" \ - ./configure --prefix=/usr --sysconfdir=/etc \ - --mandir=/usr/share/man $(WITHDEBUG) \ + dh_auto_configure -- \ + --prefix=/usr \ + --sysconfdir=/etc \ + --mandir=/usr/share/man \ --enable-zlib \ + --enable-no-gifs \ + --enable-external-filters \ + --enable-extended-statistics \ + --enable-pcre-host-patterns \ + --with-mbedtls \ + --with-brotli \ --with-docbook=/usr/share/sgml/docbook/stylesheet/dsssl/modular - $(MAKE) -# create missing doc/pdf directory if necessary: - [ -d doc/pdf ] || mkdir doc/pdf - $(MAKE) dok-pdf - $(MAKE) dok - env -u LANG $(MAKE) man - $(MAKE) man2html - -# remove trailing whitespaces: - for x in developer-manual user-manual faq; do \ - sed -e 's/[ ]*$$//' < doc/text/$$x.txt > doc/text/$$x.nws;\ - mv -f doc/text/$$x.nws doc/text/$$x.txt; \ - done - - touch build-stamp - -clean: clean1 unpatch -clean1: - dh_testdir - dh_testroot - rm -f build-stamp configure-stamp - -$(MAKE) clean - -$(MAKE) distclean +override_dh_auto_build: + $(MAKE) +# preserve auto build documentation from source package: + tar cf debian/doc.tar README INSTALL AUTHORS doc/source doc/webserver + env -u LANG LC_ALL=C.UTF-8 $(MAKE) dok + rm -f doc/webserver/user-manual/*.bak + env -u LANG LC_ALL=C.UTF-8 $(MAKE) man + env -u LANG LC_ALL=C.UTF-8 $(MAKE) man2html + +override_dh_auto_clean: +# restore auto build documentation from source package: + [ ! -f debian/doc.tar ] || tar xf debian/doc.tar + rm -f debian/doc.tar + find doc/source -name \*.html | xargs -r rm -f + [ ! -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 -# rm -rf doc/pdf - dh_clean -Xrc.privoxy.orig -install: build-stamp - dh_testdir - dh_testroot - dh_clean -k -Xrc.privoxy.orig - dh_installdirs - +override_dh_auto_install: install -m 0755 privoxy $(DEBDIR)/usr/sbin/privoxy - - install -m 644 config $(DEBDIR)/etc/privoxy/config + sed -e 's/\(Sample Configuration File for Privoxy\).*/\1/;' < config \ + > $(DEBDIR)/usr/share/privoxy/config install -m 0644 default.action $(DEBDIR)/etc/privoxy/default.action - install -m 0644 global.action $(DEBDIR)/etc/privoxy/global.action - install -m 0644 standard.action $(DEBDIR)/etc/privoxy/standard.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 regression-tests.action \ + $(DEBDIR)/etc/privoxy/regression-tests.action install -m 0644 default.filter $(DEBDIR)/etc/privoxy/default.filter + install -m 0644 user.filter $(DEBDIR)/etc/privoxy/user.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 + + install -m 0755 tools/privoxy-regression-test.pl \ + $(DEBDIR)/usr/bin/privoxy-regression-test + pod2man tools/privoxy-regression-test.pl \ + > $(DEBDIR)/usr/share/man/man1/privoxy-regression-test.1 + cp -r templates $(DEBDIR)/etc/privoxy/ rm -f $(DEBDIR)/etc/privoxy/templates/*~ - rm -rf $(DEBDIR)/etc/privoxy/templates/CVS -# Remove CVS tags and trailing spaces from config files: +# Remove trailing spaces from config files: find $(DEBDIR)/etc/privoxy -type f \ - | xargs grep -l '\$$[A-Z][^$$]*:[^$$]*\$$' \ + | xargs grep -l ' $$' \ | while read f; do \ - sed -e 's/\$$\(Id: [^$$]*,v\)[^$$]*\$$/\1/' \ - -e 's/\$$\(Source: [^$$]*\)\$$/\1/' \ - -e 's/\$$\(Log: [^$$]*\)\$$/\1/' \ - -e 's/ *$$//' < $$f > $$f.new; \ + sed -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. +override_dh_install: + dh_install + install -m0644 debian/apparmor/usr.sbin.privoxy \ + $(DEBDIR)/etc/apparmor.d/ + dh_apparmor --profile-name=usr.sbin.privoxy -# Build architecture-dependent files here. -binary-arch: build-stamp install - dh_testdir - dh_testroot -# dh_installdebconf - dh_installdocs -XCVS +override_dh_installdocs: + dh_installdocs (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 -Xpdf - dh_fixperms -# dh_makeshlibs - dh_installdeb -# dh_perl - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb - -binary: binary-indep binary-arch + (cd $(DEBDIR)/usr/share/doc/privoxy/user-manual; ln -s '../p_doc.css') -.PHONY: build clean binary-indep binary-arch binary install patch unpatch \ - clean1 +override_dh_perl: +# We only need perl-base: + dh_perl -d