X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=debian%2Frules;h=5c1b6d1fec0b57befe872943d44ac5f49b87102a;hp=be5438e62be8cd9b03e6b56e2e85dfba70b4d742;hb=ec89cdabc38ea5e6ecde0184cc4b7985edfc2d10;hpb=daecd4737ed179358a8f8b415f1a61b881d3ad1e diff --git a/debian/rules b/debian/rules index be5438e6..5c1b6d1f 100755 --- a/debian/rules +++ b/debian/rules @@ -1,130 +1,105 @@ #!/usr/bin/make -f -# Sample debian/rules that uses debhelper. -# GNU copyright 1997 to 1999 by Joey Hess. - +# +# (c) 2002-2021 Roland Rosenfeld +# # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 +#export DH_OPTIONS=-v -# 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) -DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +export DEB_BUILD_MAINT_OPTIONS = hardening=+all DEBDIR=`pwd`/debian/privoxy -DB2HTML=jw -f docbook -b html -d `pwd`/ldpOK.dsl\#html - - -CFLAGS="-O2" -WITHDEBUG="" -ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) - CFLAGS += -g - WITHDEBUG="--with-debug" -endif - -configure: configure-stamp -configure-stamp: - dh_testdir +%: + dh $@ +override_dh_auto_configure: autoheader autoconf - env CFLAGS=$(CFLAGS) \ - ./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 - touch configure-stamp - -build: build-stamp -build-stamp: configure-stamp - dh_testdir - +override_dh_auto_build: $(MAKE) - -# And now we create the documentation (manually): - $(MAKE) doc/source/ldpOK.dsl - (cd doc/source; \ - $(DB2HTML) -o faq faq.sgml; \ - $(DB2HTML) -o user-manual user-manual.sgml; \ - $(DB2HTML) -o developer-manual developer-manual.sgml; \ - docbook2txt faq.sgml; \ - docbook2txt user-manual.sgml; \ - docbook2txt developer-manual.sgml) - - touch build-stamp - -clean: - dh_testdir - dh_testroot - rm -f build-stamp configure-stamp - - -$(MAKE) clobber - rm -f privoxy - rm -f configure config.h GNUmakefile - rm -f doc/source/ldpOK.dsl - rm -rf doc/source/faq doc/source/user-manual \ - doc/source/developer-manual - rm -f doc/source/*.txt - +# preserve auto build documentation from source package: + tar cf debian/doc.tar README INSTALL AUTHORS 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 dh_clean -install: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - +override_dh_auto_install: 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 + 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 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 - cp -r templates $(DEBDIR)/etc/privoxy/ - rm -f $(DEBDIR)/etc/privoxy/templates/*~ - rm -rf $(DEBDIR)/etc/privoxy/templates/CVS + 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 -# Build architecture-independent files here. -binary-indep: build install -# We have nothing to do by default. + cp -r templates $(DEBDIR)/etc/privoxy/ + rm -f $(DEBDIR)/etc/privoxy/templates/*~ -# Build architecture-dependent files here. -binary-arch: build install - dh_testdir - dh_testroot -# dh_installdebconf +# Remove trailing spaces from config files: + find $(DEBDIR)/etc/privoxy -type f \ + | xargs grep -l ' $$' \ + | while read f; do \ + sed -e 's/ *$$//' < $$f > $$f.new; \ + mv -f $$f.new $$f; \ + done + +override_dh_install: + dh_install + install -m0644 debian/apparmor/usr.sbin.privoxy \ + $(DEBDIR)/etc/apparmor.d/ + dh_apparmor --profile-name=usr.sbin.privoxy + +override_dh_installdocs: dh_installdocs - 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 + (cd $(DEBDIR)/usr/share/doc/privoxy/; \ + mv privoxy-index.html index.html) + (cd $(DEBDIR)/usr/share/doc/privoxy/user-manual; ln -s '../p_doc.css') -binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install configure +override_dh_perl: +# We only need perl-base: + dh_perl -d