Move previously inline'd Perl code for the config-file target
[privoxy.git] / GNUmakefile.in
index 2a721ce..5d3001c 100644 (file)
@@ -1,8 +1,8 @@
 # Note:  Makefile is built automatically from Makefile.in
 #
-# $Id: GNUmakefile.in,v 1.145 2006/09/08 02:32:00 hal9 Exp $
+# $Id: GNUmakefile.in,v 1.170 2008/06/12 16:38:50 fabiankeil Exp $
 #
-# Written by and Copyright (C) 2001 - 2004 the SourceForge
+# Written by and Copyright (C) 2001 - 2007 the SourceForge
 # Privoxy team. http://www.privoxy.org/
 #
 # Based on the Internet Junkbuster originally written
@@ -55,6 +55,7 @@ SNAPVERSION   = $(RPM_VERSION)-$(shell date "+%Y%m%d")
 USER         = @USER@
 GROUP     = @GROUP@
 
+datarootdir  = @datarootdir@
 prefix       = @prefix@
 exec_prefix  = @exec_prefix@
 CONF_BASE    = @sysconfdir@
@@ -153,7 +154,7 @@ DOC_STATUS = @DOC_STATUS@
 #DOSFILTER  = $(SED) -e $$'s,$$,\r,'
 #DOSFILTER  = gawk -v ORS='\r\n' '{print $0;}'
 DOSFILTER  = $(PERL) -p -e 's/\n/\r\n/'
-CVSROOT    = :pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa
+CVSROOT    = :pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa
 #TMPDIR     := $(shell mktemp -d /tmp/$(PROGRAM).XXXXXX)
 
 #############################################################################
@@ -185,7 +186,7 @@ DOC_FILES = AUTHORS LICENSE README ChangeLog INSTALL \
 #############################################################################
 
 C_SRC  = actions.c cgi.c cgiedit.c cgisimple.c deanimate.c encode.c \
-         errlog.c filters.c gateway.c jbsockets.c jcc.c killpopup.c \
+         errlog.c filters.c gateway.c jbsockets.c jcc.c \
          list.c loadcfg.c loaders.c miscutil.c parsers.c ssplit.c \
          urlmatch.c
 
@@ -246,7 +247,7 @@ OTHER_CFLAGS =
 CFLAGS = @CFLAGS@ @CPPFLAGS@ $(OTHER_CFLAGS) $(SPECIAL_CFLAGS) -Wall \
          @STATIC_PCRE_ONLY@ -Ipcre 
 
-LDFLAGS = $(DEBUG_CFLAGS) $(SPECIAL_CFLAGS)
+LDFLAGS = @LDFLAGS@ $(DEBUG_CFLAGS) $(SPECIAL_CFLAGS)
 
 
 #############################################################################
@@ -333,12 +334,12 @@ dist-check:
 # This creates a tar.gz and spec-file for a Red Hat 6.x version.
 #############################################################################
 create-snapshot:
-       TMPDIR=$(shell mktemp -d /tmp/$(PROGRAM).XXXXXX)
        @tag=`cvs -d $(CVSROOT) status Makefile | awk ' /Sticky Tag/ { print $$3 } '` 2> /dev/null; \
        [ x"$$tag" = x"(none)" ] && tag=HEAD; \
        echo "*** Creating package from $$tag!"; \
-       cd $(TMPDIR) ; cvs -Q -d $(CVSROOT) export -r $$tag current || echo "Um... export aborted."
-       @cd $(TMPDIR)/current; \
+       TMPDIR=$(shell mktemp -d /tmp/$(PROGRAM).XXXXXX); \
+       cd $$TMPDIR ; cvs -Q -d $(CVSROOT) export -r $$tag current || echo "Um... export aborted."; \
+       cd $$TMPDIR/current; \
        TMPFILE=$$(mktemp -q /tmp/$(PROGRAM).XXXXXX); \
        if $(SED) -e 's/^\(Version:\).*/\1 $(RPM_VERSION)/g' \
                -e 's/^\(Release:\).*/\1 $(SNAPVERSION)/g' \
@@ -356,17 +357,12 @@ create-snapshot:
                $(ECHO) "Could not set version info in specfile."; \
                exit 1;\
        fi; \
-       $(RM) $(TMPFILE); \
-       cd $(TMPDIR)/current; \
-       $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude \
-               "privoxy-suse.spec" -czf $(TMPDIR)/$(PROGRAM)-rh-$(VERSION).tar.gz .; \
-       $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude \
-               "privoxy-rh.spec" -czf $(TMPDIR)/$(PROGRAM)-suse-$(VERSION).tar.gz .
-       @$(MV) -f $(TMPDIR)/$(PROGRAM)-rh-$(VERSION).tar.gz .
-       @$(MV) -f $(TMPDIR)/$(PROGRAM)-suse-$(VERSION).tar.gz .
-       @$(RM) -rf $(TMPDIR)
-       @echo "Resulting files are $(PROGRAM)-rh-$(VERSION).tar.gz and"
-       @echo "                    $(PROGRAM)-suse-$(VERSION).tar.gz"
+       $(RM) $$TMPFILE; \
+       cd $$TMPDIR/current; \
+       $(TAR) --exclude ".cvsignore" --exclude "CVS" \
+               -czf /tmp/$(PROGRAM)-$(VERSION).tar.gz .; \
+       $(RM) -rf $$TMPDIR
+       @echo "Resulting file is /tmp/$(PROGRAM)-$(VERSION).tar.gz"
 
 
 #############################################################################
@@ -457,7 +453,7 @@ redhat-upload: check-release
        ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming $(RPM_BASE)/RPMS/*/privoxy-$(RPM_VERSION)-$(RPM_PACKAGEV).*.rpm
        @$(ECHO) -------------------------------------------------------
        @$(ECHO) Now goto
-       @$(ECHO) http://sourceforge.net/project/admin/editpackages.php?group_id=11118
+       @$(ECHO) https://sourceforge.net/project/admin/editpackages.php?group_id=11118
        @$(ECHO) ... and release the files.
        @$(ECHO) -------------------------------------------------------
      # w3m http://sourceforge.net/project/admin/editpackages.php?group_id=11118
@@ -469,7 +465,6 @@ redhat-upload: check-release
 #############################################################################
 redhat-srpm: 
        make create-archive
-       $(MV) $(PROGRAM)-rh-$(VERSION).tar.gz $(PROGRAM)-$(VERSION).tar.gz
        $(RPMBUILD) -ts --nodeps $(PROGRAM)-$(VERSION).tar.gz
 
 
@@ -488,7 +483,7 @@ suse-dist: rpm-stuff
 #      fi
 
        $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-rh.spec" --exclude "privoxy-cl.spec" --exclude "PACKAGERS" -czf $(TAR_ARCH) .
-       $(RPM) --clean -ta  $(TAR_ARCH)
+       $(RPMBUILD) --clean -ta  $(TAR_ARCH)
        if [ -f $(TAR_ARCH) ]; then  $(RM) $(TAR_ARCH); fi
 
 # anonymously ncftps the rpms to sourceforge
@@ -498,7 +493,7 @@ suse-upload: check-release
        ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming $(RPM_BASE)/RPMS/*/privoxy-suse-$(RPM_VERSION)-$(RPM_PACKAGEV).*.rpm
        @$(ECHO) -------------------------------------------------------
        @$(ECHO) Now goto
-       @$(ECHO) http://sourceforge.net/project/admin/editpackages.php?group_id=11118
+       @$(ECHO) https://sourceforge.net/project/admin/editpackages.php?group_id=11118
        @$(ECHO) ... and release the files.
        @$(ECHO) -------------------------------------------------------
 
@@ -553,7 +548,7 @@ gen-upload:
        ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming ../privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar.gz
        @$(ECHO) -------------------------------------------------------
        @$(ECHO) Now goto
-       @$(ECHO) http://sourceforge.net/project/admin/editpackages.php?group_id=11118
+       @$(ECHO) https://sourceforge.net/project/admin/editpackages.php?group_id=11118
        @$(ECHO) ... and release the files.
        @$(ECHO) -------------------------------------------------------
 
@@ -649,7 +644,7 @@ tarball-upload:
        ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming ../privoxy-$(VERSION)-$(CODE_STATUS)-src.tar.gz
        @$(ECHO) -------------------------------------------------------
        @$(ECHO) Now goto
-       @$(ECHO) http://sourceforge.net/project/admin/editpackages.php?group_id=11118
+       @$(ECHO) https://sourceforge.net/project/admin/editpackages.php?group_id=11118
        @$(ECHO) ... and release the files.
        @$(ECHO) -------------------------------------------------------
 
@@ -660,7 +655,7 @@ tarball-clean:
 #
 # Documentation
 #
-# converts doc/source/*.sgml into html, text and man pages
+# converts doc/source/*.sgml into html, text, pdf and man pages
 #
 #############################################################################
 
@@ -670,7 +665,7 @@ dok-devel:
        $(RM) -r doc/source/developer-manual
        mkdir -p doc/text doc/source/developer-manual
        cd doc/source/developer-manual && $(DB) ../developer-manual.sgml && cd .. && cp developer-manual/*.html ../webserver/developer-manual/
-       cd doc/source && $(DB) -V nochunks developer-manual.sgml > tmp.html && $(WDUMP) tmp.html > ../text/developer-manual.txt && $(RM) -r tmp.html developer-manual
+       cd doc/source && $(DB) -V nochunks developer-manual.sgml > tmp.html && env -u LANG $(WDUMP) tmp.html > ../text/developer-manual.txt && $(RM) -r tmp.html developer-manual
 
 # user manual
 dok-user: 
@@ -678,11 +673,11 @@ dok-user:
        $(RM) -r doc/source/user-manual/
        mkdir -p doc/text doc/source/user-manual
        cd doc/source/user-manual && $(DB) -iuser-man ../user-manual.sgml && cd .. && cp user-manual/*.html ../webserver/user-manual/
-       @#FIXME: temp fix so same stylesheet gets in more than one place so it works \
-       @# for all doc set-ups, including the 'user manual' config option in local \
-       @#system where it MUST be in same directory as html.
+       # FIXME: temp fix so same stylesheet gets in more than one place so it works
+       # for all doc set-ups, including the 'user manual' config option in local
+       system where it MUST be in same directory as html.
        $(PERL) -pi.bak -e 's/<\/head/\n<LINK REL=\"STYLESHEET\" TYPE=\"text\/css\" HREF=\"p_doc.css\">\n<\/head/i' doc/webserver/user-manual/*html
-       cd doc/source && $(DB) -iuser-man -V nochunks user-manual.sgml > tmp.html && $(WDUMP) tmp.html > ../text/user-manual.txt && $(RM) -r tmp.html user-manual
+       cd doc/source && $(DB) -iuser-man -V nochunks user-manual.sgml > tmp.html && env -u LANG $(WDUMP) tmp.html > ../text/user-manual.txt && $(RM) -r tmp.html user-manual
 
 # faq
 dok-faq: 
@@ -690,7 +685,7 @@ dok-faq:
        $(RM) -r doc/source/faq
        mkdir -p doc/text doc/source/faq
        cd doc/source/faq && $(DB) ../faq.sgml && cd .. && cp faq/*.html ../webserver/faq/
-       cd doc/source && $(DB) -V nochunks faq.sgml > tmp.html && $(WDUMP) tmp.html > ../text/faq.txt && $(RM) -r tmp.html faq
+       cd doc/source && $(DB) -V nochunks faq.sgml > tmp.html && env -u LANG $(WDUMP) tmp.html > ../text/faq.txt && $(RM) -r tmp.html faq
 
 # man page, one variation. Try to use the next target, just 'make man'. 
 dok-man: 
@@ -737,9 +732,9 @@ groff2html:
 # readme page and INSTALL file
 dok-readme: dok-release
        cd doc/source && $(DB)-notoc -V nochunks readme.sgml > tmp.html &&\
-       $(WDUMP) tmp.html > ../../README ;\
+       env -u LANG $(WDUMP) tmp.html > ../../README ;\
        $(DB)-notoc -V nochunks install.sgml > tmp.html &&\
-       $(WDUMP) tmp.html > ../../INSTALL ;\
+       env -u LANG $(WDUMP) tmp.html > ../../INSTALL ;\
        $(RM) tmp.*
 
 # index.sgml is used to create both the Home Page, and a local index
@@ -749,7 +744,7 @@ dok-readme: dok-release
 dok-webserver: 
        cd doc/source/webserver && $(DB)-notoc -ip-homepage -V nochunks index.sgml > ../../webserver/index.html
        $(PERL) -pi.bak -e 's/..\/p_doc.css/p_doc.css/;\
-     s/<\/HEAD/\n<meta name=\"description\" content=\"Privoxy helps consumers reduce unwanted junk email and protect their privacy from direct marketing companies.\"><\/HEAD/;\
+       s/<\/HEAD/\n<meta name=\"description\" content=\"Privoxy helps users to protect their privacy.\"><\/HEAD/;\
        s/<\/HEAD/\n<meta name="MSSmartTagsPreventParsing" content="TRUE"><\/HEAD/;\
        s/\.\d\. //;\
        s/__copy/&copy;/'\
@@ -759,7 +754,7 @@ dok-webserver:
 dok-index: 
        cd doc/source/webserver && $(DB)-notoc -ip-index -V nochunks index.sgml > ../../webserver/privoxy-index.html
        $(PERL) -pi.bak -e 's/..\/p_doc.css/p_doc.css/;\
-     s/<\/HEAD/\n<meta name=\"description\" content=\"Privoxy helps consumers reduce unwanted junk email and protect their privacy from direct marketing companies.\"><\/HEAD/;\
+       s/<\/HEAD/\n<meta name=\"description\" content=\"Privoxy helps users to protect their privacy.\"><\/HEAD/;\
        s/<\/HEAD/\n<meta name="MSSmartTagsPreventParsing" content="TRUE"><\/HEAD/;\
        s/\.\d\. //;\
        s/__copy/&copy;/' \
@@ -782,7 +777,7 @@ redhat-readme:
 
 ## Make AUTHORS file
 dok-authors: 
-       cd doc/source && $(DB) -V nochunks authors.sgml > tmp.html && $(WDUMP) \
+       cd doc/source && $(DB) -V nochunks authors.sgml > tmp.html && env -u LANG $(WDUMP) \
          tmp.html > ../../AUTHORS && $(RM) tmp.html
 
 # Set doc entities for VERSION and CODE_STATUS in sgml docs. Toggle content
@@ -858,23 +853,9 @@ dok-pdf: dok-shtml
 # requires the shell util 'fmt'.
 config-file: dok-release
        cd doc/source && $(DB)-notoc -iconfig-file -V nochunks config.sgml > __tmp.html &&\
-       w3m -dump __tmp.html |fmt -w 70 > ../../config.new && $(RM) -r __tmp.*
-       $(PERL) -pi.bak -e 's/^1\. \@\@TITLE\@\@/     /i;\
-                     /^\d\.\d\.\s+/ && tr/[a-z]/[A-Z]/;\
-                     $$header_len=0 unless $$hit_header;\
-                     if ($$hit_header) {\
-                        print "#  ";\
-                        for ($$i=1; $$i < $$header_len; $$i++) {print "=";}\
-                        print "\n";\
-                     };\
-                     $$hit_header=0;\
-                     $$hit_header=1 if m/^(\d\.)(\d\.)(\d\.)?\s/ && s/^(\d\.)//;\
-                     $$header_len = length($$_);\
-                                s/^/#  /;  /^#  #{12,}/ && s/^#  #/####/;\
-                     s/^.*$$// if $$hit_option;\
-                     $$hit_option=0;\
-                     s/^\n//;  s/^#\s*-{20,}//; s/ *$$//;\
-                     $$hit_option=1 if s/^#\s+@@//;'   config.new
+       env -u LANG w3m -dump __tmp.html | fmt -w 70 > ../../config.new && $(RM) -r __tmp.*
+       $(PERL) -i.bak utils/prepare-configfile.pl config.new
+
        $(RM) *.bak
        @$(ECHO)  "****************************************************"
        @$(ECHO)  "The output file is config.new."
@@ -885,7 +866,7 @@ config-file: dok-release
        @$(ECHO)  "probably got hammered."
        @$(ECHO)  "****************************************************"
 
-# config file, alternate verison using lynx (perl stuff unfinished). Lynx
+# config file, alternate version using lynx (perl stuff unfinished). Lynx
 # does not do so good a job.
 config-file-alt: 
        cd doc/source && $(ECHO) -e ".h2 JUSTIFY\\nJUSTIFY:FALSE" > __tmp.lynx_cfg &&\
@@ -947,7 +928,7 @@ dok-put:
 
 dok-get:
        cd /tmp ;\
-       $(WGET) http://privoxy.org/docs/$(DOC_FILE) ;\
+       $(WGET) http://www.privoxy.org/docs/$(DOC_FILE) ;\
        $(TAR) -zxvf $(DOC_FILE)
 
 
@@ -956,22 +937,21 @@ dok-get:
 #############################################################################
 
 actions.@OBJEXT@:   actions.c   actions.h   config.h $(PROJECT_H_DEPS) errlog.h jcc.h list.h loaders.h miscutil.h actionlist.h ssplit.h
-cgi.@OBJEXT@:       cgi.c       cgi.h       config.h $(PROJECT_H_DEPS) cgiedit.h cgisimple.h list.h pcrs.h encode.h ssplit.h jcc.h filters.h actions.h errlog.h miscutil.h
-cgiedit.@OBJEXT@:   cgiedit.c   cgiedit.h   config.h $(PROJECT_H_DEPS) cgi.h list.h pcrs.h encode.h ssplit.h jcc.h filters.h actions.h errlog.h miscutil.h
-cgisimple.@OBJEXT@: cgisimple.c cgisimple.h config.h $(PROJECT_H_DEPS) cgi.h list.h pcrs.h encode.h ssplit.h jcc.h filters.h actions.h errlog.h miscutil.h
+cgi.@OBJEXT@:       cgi.c       cgi.h       config.h $(PROJECT_H_DEPS) cgiedit.h cgisimple.h jbsockets.h list.h pcrs.h encode.h ssplit.h jcc.h filters.h actions.h errlog.h miscutil.h
+cgiedit.@OBJEXT@:   cgiedit.c   cgiedit.h   config.h $(PROJECT_H_DEPS) cgi.h list.h pcrs.h encode.h ssplit.h jcc.h filters.h actionlist.h actions.h errlog.h miscutil.h
+cgisimple.@OBJEXT@: cgisimple.c cgisimple.h config.h $(PROJECT_H_DEPS) cgi.h list.h pcrs.h encode.h ssplit.h jcc.h filters.h actions.h errlog.h miscutil.h urlmatch.h
 deanimate.@OBJEXT@: deanimate.c deanimate.h config.h $(PROJECT_H_DEPS)
 encode.@OBJEXT@:    encode.c    encode.h    config.h
 errlog.@OBJEXT@:    errlog.c    errlog.h    config.h $(PROJECT_H_DEPS) @WIN_ONLY@w32log.h
-filters.@OBJEXT@:   filters.c   filters.h   config.h $(PROJECT_H_DEPS) errlog.h encode.h gateway.h jbsockets.h jcc.h loadcfg.h parsers.h ssplit.h cgi.h deanimate.h @WIN_ONLY@win32.h 
+filters.@OBJEXT@:   filters.c   filters.h   config.h $(PROJECT_H_DEPS) errlog.h encode.h gateway.h jbsockets.h jcc.h loadcfg.h parsers.h ssplit.h cgi.h deanimate.h urlmatch.h @WIN_ONLY@win32.h 
 gateway.@OBJEXT@:   gateway.c   gateway.h   config.h $(PROJECT_H_DEPS) errlog.h jbsockets.h jcc.h loadcfg.h
 jbsockets.@OBJEXT@: jbsockets.c jbsockets.h config.h $(PROJECT_H_DEPS) filters.h
-jcc.@OBJEXT@:       jcc.c       jcc.h       config.h $(PROJECT_H_DEPS) errlog.h filters.h gateway.h jbsockets.h killpopup.h loadcfg.h loaders.h miscutil.h parsers.h @WIN_ONLY@w32log.h win32.h w32svrapi.h cgi.h
-killpopup.@OBJEXT@: killpopup.c killpopup.h config.h $(PROJECT_H_DEPS) jcc.h loadcfg.h
+jcc.@OBJEXT@:       jcc.c       jcc.h       config.h $(PROJECT_H_DEPS) errlog.h filters.h gateway.h jbsockets.h loadcfg.h loaders.h miscutil.h parsers.h @WIN_ONLY@w32log.h win32.h w32svrapi.h cgi.h
 list.@OBJEXT@:      list.c      list.h      config.h $(PROJECT_H_DEPS) list.h miscutil.h
-loadcfg.@OBJEXT@:   loadcfg.c   loadcfg.h   config.h $(PROJECT_H_DEPS) errlog.h filters.h gateway.h jbsockets.h jcc.h killpopup.h loaders.h miscutil.h parsers.h @WIN_ONLY@w32log.h win32.h
+loadcfg.@OBJEXT@:   loadcfg.c   loadcfg.h   config.h $(PROJECT_H_DEPS) errlog.h filters.h gateway.h jbsockets.h jcc.h loaders.h miscutil.h parsers.h @WIN_ONLY@w32log.h win32.h
 loaders.@OBJEXT@:   loaders.c   loaders.h   config.h $(PROJECT_H_DEPS) errlog.h encode.h filters.h gateway.h jcc.h loadcfg.h miscutil.h parsers.h ssplit.h
 miscutil.@OBJEXT@:  miscutil.c  miscutil.h  config.h
-parsers.@OBJEXT@:   parsers.c   parsers.h   config.h $(PROJECT_H_DEPS) errlog.h encode.h filters.h jbsockets.h jcc.h loadcfg.h loaders.h miscutil.h ssplit.h
+parsers.@OBJEXT@:   parsers.c   parsers.h   config.h $(PROJECT_H_DEPS) errlog.h filters.h jbsockets.h jcc.h loadcfg.h loaders.h miscutil.h ssplit.h
 ssplit.@OBJEXT@:    ssplit.c    ssplit.h    config.h miscutil.h
 urlmatch.@OBJEXT@:  urlmatch.c  urlmatch.h  config.h $(PROJECT_H_DEPS) errlog.h miscutil.h ssplit.h
 
@@ -1006,9 +986,13 @@ w32.res: w32.rc w32res.h icons/ico00001.ico icons/ico00002.ico icons/ico00003.ic
 
 # AmigaOS
 @AMIGAOS_ONLY@OBJS += amiga.o
+@AMIGAOS_ONLY@ifeq ($(shell $(CC) -dumpmachine), m68k-amigaos)
 @AMIGAOS_ONLY@CFLAGS += -D__AMIGAVERSION__=\"$(VERSION_MAJOR).$(VERSION_MINOR)$(VERSION_POINT)\" -D__AMIGADATE__=\"`date +%d.%m.%Y`\" -W -m68020 -noixemul -fbaserel -msmall-code
 @AMIGAOS_ONLY@LDFLAGS += -m68020 -noixemul -fbaserel
 @AMIGAOS_ONLY@LIBS = -lm /gg/lib/libb/libm020/libnix/swapstack.o
+@AMIGAOS_ONLY@else
+@AMIGAOS_ONLY@CFLAGS += -D__AMIGAVERSION__=\"$(VERSION_MAJOR).$(VERSION_MINOR)$(VERSION_POINT)\" -D__AMIGADATE__=\"`date +%d.%m.%Y`\" -Wextra -D__USE_INLINE__ -D__NO_INTUITION_RJ_MACROS
+@AMIGAOS_ONLY@endif
 @AMIGAOS_ONLY@amiga.o: amiga.c amiga.h config.h
 
 
@@ -1020,7 +1004,7 @@ clean:
 
 tidy:
        $(RM) `find . -name "*~"`
-#      $(RM) `find . -name "#*#"` # what is this for??
+       $(RM) `find . -name "#*#"` # Emacs backup files
        $(RM) `find . -name ".\#*"`
 
 clobber: tidy
@@ -1092,14 +1076,15 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
 
        @$(ECHO) "Creating directories, and preparing $(PROGRAM_V) installation"
        $(CHMOD) $(DIR_MODE) $(MKDIR)
-       @$(MKDIR) $(SBIN_DEST) $(prefix) $(CONF_DEST) $(CONF_DEST)/templates $(SHARE_DEST) \
-               $(LOG_DEST) $(PID_DEST)
+       @$(MKDIR) $(DESTDIR)$(SBIN_DEST) $(DESTDIR)$(prefix) $(DESTDIR)$(CONF_DEST) \
+               $(DESTDIR)$(CONF_DEST)/templates $(DESTDIR)$(SHARE_DEST) \
+               $(DESTDIR)$(LOG_DEST) $(DESTDIR)$(PID_DEST)
        @# Install the executable binary, strip if invoked as install-strip
        @test -n "$(STRIP)" &&\
        $(ECHO) Installing $(PROGRAM) stripped executable to $(SBIN_DEST) ||\
-       $(ECHO) Installing $(PROGRAM) executable to $(SBIN_DEST)
-       $(INSTALL) $(INSTALL_P) $(STRIP) $(PROGRAM) $(SBIN_DEST)
-     
+       $(ECHO) Installing $(PROGRAM) executable to $(DESTDIR)$(SBIN_DEST)
+       $(INSTALL) $(INSTALL_P) $(STRIP) $(PROGRAM) $(DESTDIR)$(SBIN_DEST)
+
        @# Install the DOCS and man page. install-sh only does one file at a time.
        @# FIXME: only handles jpegs.
        -@if [ $(check_doc) = 0 ]; then \
@@ -1107,30 +1092,30 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
        else \
                DOC=$(prefix)/doc/privoxy ;\
        fi;\
-       $(MKDIR) $$DOC $$DOC/user-manual $$DOC/faq $$DOC/developer-manual \
-            $$DOC/man-page $$DOC/images $(MAN_DEST) ;\
+       $(MKDIR) $(DESTDIR)$$DOC $(DESTDIR)$$DOC/user-manual $(DESTDIR)$$DOC/faq $(DESTDIR)$$DOC/developer-manual \
+            $(DESTDIR)$$DOC/man-page $(DESTDIR)$$DOC/images $(DESTDIR)$(MAN_DEST) ;\
        if [ -d "$(DOK_WEB)" ]; then \
-               $(ECHO) Installing FAQ, Manual, and other docs to $$DOC;\
+               $(ECHO) Installing FAQ, Manual, and other docs to $(DESTDIR)$$DOC;\
           for i in user-manual developer-manual faq; do \
                for ii in $(DOK_WEB)/$$i/*html; do \
-                    $(INSTALL) $(INSTALL_T) $$ii $$DOC/$$i;\
+                    $(INSTALL) $(INSTALL_T) $$ii $(DESTDIR)$$DOC/$$i;\
                done ;\
           done ;\
                for i in $(DOK_WEB)/user-manual/*jpg; do \
-               $(INSTALL) $(INSTALL_T) $$i $$DOC/user-manual;\
+               $(INSTALL) $(INSTALL_T) $$i $(DESTDIR)$$DOC/user-manual;\
           done ;\
-               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/man-page/*html $$DOC/man-page;\
-               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/privoxy-index.html $$DOC/index.html;\
-               $(INSTALL) $(INSTALL_T) AUTHORS $$DOC;\
-               $(INSTALL) $(INSTALL_T) LICENSE $$DOC;\
-               $(INSTALL) $(INSTALL_T) README $$DOC;\
-               $(INSTALL) $(INSTALL_T) ChangeLog $$DOC;\
-               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/p_doc.css $$DOC;\
-               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/p_doc.css $$DOC/user-manual;\
+               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/man-page/*html $(DESTDIR)$$DOC/man-page;\
+               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/privoxy-index.html $(DESTDIR)$$DOC/index.html;\
+               $(INSTALL) $(INSTALL_T) AUTHORS $(DESTDIR)$$DOC;\
+               $(INSTALL) $(INSTALL_T) LICENSE $(DESTDIR)$$DOC;\
+               $(INSTALL) $(INSTALL_T) README $(DESTDIR)$$DOC;\
+               $(INSTALL) $(INSTALL_T) ChangeLog $(DESTDIR)$$DOC;\
+               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/p_doc.css $(DESTDIR)$$DOC;\
+               $(INSTALL) $(INSTALL_T) $(DOK_WEB)/p_doc.css $(DESTDIR)$$DOC/user-manual;\
        fi
        @# Not all platforms support gzipped man pages.
-       @$(ECHO) Installing man page to $(MAN_DEST)/privoxy.1
-       -$(INSTALL) $(INSTALL_T) privoxy.1  $(MAN_DEST)/privoxy.1
+       @$(ECHO) Installing man page to $(DESTDIR)$(MAN_DEST)/privoxy.1
+       -$(INSTALL) $(INSTALL_T) privoxy.1  $(DESTDIR)$(MAN_DEST)/privoxy.1
 
        @# Change the config file default directories according to the configured ones
        @$(ECHO) Rewriting config for this installation
@@ -1138,8 +1123,8 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
                $(CAT) config >config~ ;\
                $(MV) config.base config ;\
        fi
-       $(SED) 's+confdir .+confdir $(CONF_DEST)+' config | \
-       $(SED) 's+logdir .+logdir $(LOG_DEST)+' >config.tmp
+       $(SED) 's+^confdir \.+confdir $(CONF_DEST)+' config | \
+       $(SED) 's+^logdir \.+logdir $(LOG_DEST)+' >config.tmp
        -@if [ $(check_doc) = 0 ]; then \
       $(SED) 's+^#\?user-manual .*+user-manual $(DOC_DEST)/user-manual/+' config.tmp >config.updated ;\
        else \
@@ -1151,9 +1136,9 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
        @# Install the config support files. Test for root install, and abort 
        @# if there is no privoxy user, and no other user was enabled during 
        @# configure. Later, install init script if appropriate.
-       @$(ECHO) Installing templates to $(CONF_DEST)/templates
+       @$(ECHO) Installing templates to $(DESTDIR)$(CONF_DEST)/templates
        @for i in `find templates -type f`; do \
-               $(INSTALL) $(INSTALL_T) $$i $(CONF_DEST)/templates ;\
+               $(INSTALL) $(INSTALL_T) $$i $(DESTDIR)$(CONF_DEST)/templates ;\
        done
 
        @# FIXME: group/user validation is overly convoluted.
@@ -1191,40 +1176,44 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
                fi ;\
                INSTALL_CONF="$(INSTALL_R)" ;\
        fi ;\
-       $(ECHO) Installing configuration files to $(CONF_DEST);\
+       $(ECHO) Installing configuration files to $(DESTDIR)$(CONF_DEST);\
        for i in $(CONFIGS); do \
-               if [ -s "$(CONF_DEST)/$$i" ] ; then \
+               if [ "$$i" = "default.action" ] || [ "$$i" = "default.filter" ] || [ "$$i" = "standard.action" ]; then \
+                       $(RM) $(DESTDIR)$(CONF_DEST)/$$i ;\
+                       $(ECHO) Installing fresh $$i;\
+                       $(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
+               elif [ -s "$(CONF_DEST)/$$i" ]; then \
                        $(ECHO) Installing $$i as $$i.new ;\
-                       $(INSTALL) $$INSTALL_CONF $$i $(CONF_DEST)/$$i.new || exit 1;\
+                       $(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST)/$$i.new || exit 1;\
                        NEW=1;\
                else \
-                       $(INSTALL) $$INSTALL_CONF $$i $(CONF_DEST) || exit 1;\
+                       $(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
                fi ;\
        done ;\
        if [ -n "$$NEW" ]; then \
-               $(CHMOD) $(RWD_MODE) $(CONF_DEST)/*.new || exit 1 ;\
+               $(CHMOD) $(RWD_MODE) $(DESTDIR)$(CONF_DEST)/*.new || exit 1 ;\
                $(ECHO) "Warning: Older config files are preserved. Check new versions for changes!" ;\
        fi ;\
-       [ ! -f $(LOG_DEST)/logfile ] && $(ECHO) Creating logfiles in $(LOG_DEST) || \
-               $(ECHO) Checking logfiles in $(LOG_DEST) ;\
-               $(TOUCH) $(LOG_DEST)/logfile $(LOG_DEST)/jarfile || exit 1 ;\
+       [ ! -f $(DESTDIR)$(LOG_DEST)/logfile ] && $(ECHO) Creating logfiles in $(DESTDIR)$(LOG_DEST) || \
+               $(ECHO) Checking logfiles in $(DESTDIR)$(LOG_DEST) ;\
+               $(TOUCH) $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || exit 1 ;\
        if [ x$$USER != x ]; then \
-               $(CHOWN) $$USER $(LOG_DEST)/logfile $(LOG_DEST)/jarfile || \
+               $(CHOWN) $$USER $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || \
                $(ECHO) "** WARNING ** current install user different from configured user. Logging may fail!!" ;\
        fi ;\
        if [ x$$GROUP_T != x ]; then \
-               $(CHGRP) $$GROUP_T $(LOG_DEST)/logfile $(LOG_DEST)/jarfile || \
+               $(CHGRP) $$GROUP_T $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || \
                $(ECHO) "** WARNING ** current install user different from configured user. Logging may fail!!" ;\
        fi ;\
-       $(CHMOD) $(RWD_MODE) $(LOG_DEST)/logfile $(LOG_DEST)/jarfile || exit 1 ;\
+       $(CHMOD) $(RWD_MODE) $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || exit 1 ;\
        if [ "$(prefix)" = "/usr/local" ] || [ "$(prefix)" = "/usr" ]; then \
                if [ -f /etc/slackware-version ] && [ -d /etc/rc.d/ ] && [ -w /etc/rc.d/ ] ; then \
                $(SED) 's+%PROGRAM%+$(PROGRAM)+' slackware/rc.privoxy.orig | \
                $(SED) 's+%SBIN_DEST%+$(SBIN_DEST)+' | \
                $(SED) 's+%CONF_DEST%+$(CONF_DEST)+' | \
-               $(SED) 's+%USER%+$$USER+' | \
+               $(SED) 's+%USER%+$(USER)+' | \
                $(SED) 's+%GROUP%+$(GROUP_T)+' >slackware/rc.privoxy ;\
-                       $(INSTALL) $(INSTALL_P) slackware/rc.privoxy /etc/rc.d/ ;\
+                       $(INSTALL) $(INSTALL_P) slackware/rc.privoxy $(DESTDIR)/etc/rc.d/ ;\
                $(ECHO) "Installing for Slackware." ;\
                $(ECHO) "Dont forget to add the rc.privoxy to rc.local if you want it started at every boot" ;\
                elif [ -f /etc/redhat-release ] && [ -d /etc/rc.d/init.d/ ] && [ -w /etc/rc.d/init.d/ ] ; then \
@@ -1232,14 +1221,14 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
                        $(SED) 's,^PRIVOXY_BIN=.*,PRIVOXY_BIN="/usr/local/sbin/$(PROGRAM)",' privoxy.init |\
                        $(SED) 's,^PRIVOXY_CONF=.*,PRIVOXY_CONF="$(CONF_DEST)/config",' |\
                        $(SED) "s,^PRIVOXY_USER=.*,PRIVOXY_USER=$$USER," > init.tmp ;\
-                       $(INSTALL) $(INSTALL_P) init.tmp /etc/rc.d/init.d/privoxy && $(RM) init.tmp;\
-                       $(MKDIR) /etc/logrotate.d/ ;\
-                       $(ECHO) "Installing logrotate script to /etc/logrotate.d/" ;\
-                       $(INSTALL) -m 0644 privoxy.logrotate /etc/logrotate.d/privoxy ;\
-               elif [ -d /etc/init.d ] && [ -w /etc/init.d ] ; then \
-                       $(ECHO) "Installing generic init script to /etc/init.d/privoxy" ;\
+                       $(INSTALL) $(INSTALL_P) init.tmp $(DESTDIR)/etc/rc.d/init.d/privoxy && $(RM) init.tmp;\
+                       $(MKDIR) $(DESTDIR)/etc/logrotate.d/ ;\
+                       $(ECHO) "Installing logrotate script to $(DESTDIR)/etc/logrotate.d/" ;\
+                       $(INSTALL) -m 0644 privoxy.logrotate $(DESTDIR)/etc/logrotate.d/privoxy ;\
+               elif [ -d $(DESTDIR)/etc/init.d ] && [ -w $(DESTDIR)/etc/init.d ] ; then \
+                       $(ECHO) "Installing generic init script to $(DESTDIR)/etc/init.d/privoxy" ;\
                        $(ECHO) "Please check that the PATHs are correct, and edit if needed." ;\
-                       $(INSTALL) $(INSTALL_P) privoxy-generic.init /etc/init.d/privoxy ;\
+                       $(INSTALL) $(INSTALL_P) privoxy-generic.init $(DESTDIR)/etc/init.d/privoxy ;\
                fi ;\
        else \
                $(ECHO) "No init script installed, install it manually if needed" ;\
@@ -1247,96 +1236,100 @@ install: CONF_DEST LOG_DEST PID_DEST check_doc GROUP_T
        $(RM) config.base config.tmp
        @# mmmmm, good.
        @$(ECHO) "$(PROGRAM_V) installation succeeded!"
-       @$(ECHO) "The Privoxy configuration files have been installed in $(CONF_DEST)"
+       @$(ECHO) "The Privoxy configuration files have been installed in $(DESTDIR)$(CONF_DEST)"
 
 # rmdir is used as a precaution since it will not remove non-empty
 # directories. RH init script creates lock file and pid file.
 uninstall: CONF_DEST LOG_DEST PID_DEST check_doc
        @$(ECHO) Starting Privoxy uninstallation
        @# KILL privoxy if running
-       -@if [ -f /etc/redhat-release ] && [ -x /etc/rc.d/init.d/privoxy ]; then \
-               /etc/rc.d/init.d/privoxy stop >/dev/null 2>/dev/null ;\
+       @# XXX: the chkconfig line may need a DESTDIR prefix.
+       -@if [ -f $(DESTDIR)/etc/redhat-release ] && [ -x $(DESTDIR)/etc/rc.d/init.d/privoxy ]; then \
+               $(DESTDIR)/etc/rc.d/init.d/privoxy stop >/dev/null 2>/dev/null ;\
                chkconfig --del $(PROGRAM) 2>/dev/null;\
        fi
-       -@test -f $(PID_DEST)/privoxy.pid && $(ECHO) Stopping $(PROGRAM) &&\
-         $(KILL) `$(CAT) $(PID_DEST)/privoxy.pid` || :
-       -@test -f /var/run/privoxy.pid && $(ECHO) Stopping $(PROGRAM) &&\
-          $(KILL) `$(CAT) /var/run/privoxy.pid ` || :
+       -@test -f $(DESTDIR)$(PID_DEST)/privoxy.pid && $(ECHO) Stopping $(PROGRAM) &&\
+         $(KILL) `$(CAT) $(DESTDIR)$(PID_DEST)/privoxy.pid` || :
+       -@test -f $(DESTDIR)/var/run/privoxy.pid && $(ECHO) Stopping $(PROGRAM) &&\
+          $(KILL) `$(CAT) $(DESTDIR)/var/run/privoxy.pid ` || :
 
        @# Program binary
        @$(ECHO) Removing $(PROGRAM) binary
-       $(RM) $(SBIN_DEST)/$(PROGRAM) $(SBIN_DEST)/$(PROGRAM)~
+       $(RM) $(DESTDIR)$(SBIN_DEST)/$(PROGRAM) $(SBIN_DEST)/$(PROGRAM)~
 
        @# config files and dir, and maybe old install backups
-       -@if [ -d $(CONF_DEST) ]; then \
-               $(ECHO) Saving $(PROGRAM) config files to /tmp/$(PROGRAM)-save ;\
-               $(MKDIR) /tmp/$(PROGRAM)-save ;\
-               cd $(CONF_DEST) ;\
-               for i in $(CONFIGS); do \
-                       [ -f $$i ] && $(CP) $$i /tmp/$(PROGRAM)-save ;\
+       -@if [ -d $(DESTDIR)$(CONF_DEST) ]; then \
+               $(ECHO) Saving $(PROGRAM) config files to $(DESTDIR)/tmp/$(PROGRAM)-save ;\
+               $(MKDIR) $(DESTDIR)/tmp/$(PROGRAM)-save ;\
+               cd $(DESTDIR)$(CONF_DEST) ;\
+               for i in $(DESTDIR)$(CONFIGS); do \
+                       [ -f $$i ] && $(CP) $$i $(DESTDIR)/tmp/$(PROGRAM)-save ;\
                done ;\
        fi
        @$(ECHO) Removing $(PROGRAM) config files
-       -@for i in $(CONFIGS); do \
+       -@for i in $(DESTDIR)$(CONFIGS); do \
                test -f $(CONF_DEST)/$$i && $(ECHO) Removing $$i ;\
-               $(RM) $(CONF_DEST)/$$i $(CONF_DEST)/$$i~ $(CONF_DEST)/$$i.new ;\
+               $(RM) $(DESTDIR)$(CONF_DEST)/$$i $(DESTDIR)$(CONF_DEST)/$$i~ $(DESTDIR)$(CONF_DEST)/$$i.new ;\
        done
-       -@test -d $(CONF_DEST)/templates && $(RM) -r $(CONF_DEST)/templates &&\
-       $(ECHO) "Removing $(CONF_DEST)/templates/*"
+       -@test -d $(DESTDIR)$(CONF_DEST)/templates && $(RM) -r $(DESTDIR)$(CONF_DEST)/templates &&\
+       $(ECHO) "Removing $(DESTDIR)$(CONF_DEST)/templates/*"
 
        @# man page and docs
        @$(ECHO) Removing $(PROGRAM) docs
-       -$(RM) $(MAN_DEST)/privoxy.1*
-       -$(RM) -r $(DOC_DEST) || $(RM) -r $(prefix)/doc/privoxy
+       -$(RM) $(DESTDIR)$(MAN_DEST)/privoxy.1*
+       -$(RM) -r $(DESTDIR)$(DOC_DEST) || $(RM) -r $(DESTDIR)$(prefix)/doc/privoxy
 
        @# Log and jarfile and pidfile
        @$(ECHO) Removing $(PROGRAM) logs
-       -$(RM) $(LOG_DEST)/logfile $(PID_DEST)/privoxy.pid $(LOG_DEST)/jarfile
+       -$(RM) $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(PID_DEST)/privoxy.pid $(DESTDIR)$(LOG_DEST)/jarfile
 
        @# Final clean up of unused directories. Special handling of CONF and LOG
      # destinations.
        @$(ECHO) Removing $(PROGRAM) directories
-       @for i in $(LOG_DEST) $(CONF_DEST); do \
+       @for i in $(DESTDIR)$(LOG_DEST) $(DESTDIR)$(CONF_DEST); do \
                if test -d $$i; then \
                        $(ECHO) Removing $$i ;\
                        $(RMDIR) $$i || $(ECHO) "$$i is not empty, not removed" ;\
                fi;\
        done
        @if [  ! "$(prefix)" = "/usr/local" ] ;then \
-               for i in $(MAN_DEST) $(MAN_DIR) $(SHARE_DEST)/doc $(SHARE_DEST) $(SBIN_DEST); do \
+               for i in $(DESTDIR)$(MAN_DEST) $(DESTDIR)$(MAN_DIR) $(DESTDIR)$(SHARE_DEST)/doc \
+                         $(DESTDIR)$(SHARE_DEST) $(DESTDIR)$(SBIN_DEST); do \
                        if test -d $$i; then \
                                $(ECHO) Removing $$i ;\
                                $(RMDIR) $$i || $(ECHO) "$$i is not empty, not removed" ;\
                        fi;\
                done;\
-               if test $(LOG_DEST) != /var/log/privoxy && test -d $(prefix)/var/log; then \
-                       $(ECHO) Removing $(prefix)/var/log ;\
-                       $(RMDIR) $(prefix)/var/log || $(ECHO) "$(prefix)/var/log is not empty, not removed";\
+               if test $(LOG_DEST) != /var/log/privoxy && test -d $(DESTDIR)$(prefix)/var/log; then \
+                       $(ECHO) Removing $(DESTDIR)$(prefix)/var/log ;\
+                       $(RMDIR) $(DESTDIR)$(prefix)/var/log || $(ECHO) "$(DESTDIR)$(prefix)/var/log is not empty, not removed";\
                fi ;\
-               if test $(PID_DEST) != /var/run && test -d $(prefix)/var/run; then \
-                       $(ECHO) Removing $(prefix)/var/run ;\
-                       $(RMDIR) $(prefix)/var/run || $(ECHO) "$(prefix)/var/run is not empty, not removed";\
+               if test $(PID_DEST) != /var/run && test -d $(DESTDIR)$(prefix)/var/run; then \
+                       $(ECHO) Removing $(DESTDIR)$(prefix)/var/run ;\
+                       $(RMDIR) $(DESTDIR)$(prefix)/var/run || $(ECHO) "$(DESTDIR)$(prefix)/var/run is not empty, not removed";\
                fi ;\
-               if test $(prefix)/var != /var && test -d $(prefix)/var; then \
-                       $(ECHO) Removing $(prefix)/var ;\
-                       $(RMDIR) $(prefix)/var || $(ECHO) "$(prefix)/var is not empty, not removed" ;\
+               if test $(prefix)/var != /var && test -d $(DESTDIR)$(prefix)/var; then \
+                       $(ECHO) Removing $(DESTDIR)$(prefix)/var ;\
+                       $(RMDIR) $(DESTDIR)$(prefix)/var || $(ECHO) "$(DESTDIR)$(prefix)/var is not empty, not removed" ;\
                fi ;\
-               if test $(prefix) != / && test $(prefix) != /usr && test -d $(prefix); then \
-                       $(ECHO) Removing $(prefix) ;\
-                       $(ECHO) Removing installation directory $(prefix) ;\
-                       $(RMDIR) $(prefix) || $(ECHO) "$(prefix) is not empty, not removed" ;\
+               if test $(prefix) != / && test $(prefix) != /usr && test -d $(DESTDIR)$(prefix); then \
+                       $(ECHO) Removing $(DESTDIR)$(prefix) ;\
+                       $(ECHO) Removing installation directory $(DESTDIR)$(prefix) ;\
+                       $(RMDIR) $(DESTDIR)$(prefix) || $(ECHO) "$(DESTDIR)$(prefix) is not empty, not removed" ;\
                fi;\
        fi
 
        @# init scripts and logrotate
        @if [ "$(prefix)" = "/usr/local" ] || [ "$(prefix)" = "/usr" ]; then \
                $(ECHO) Removing $(PROGRAM) init script ;\
-               if [ -f /etc/slackware-version ] && [ -d /etc/rc.d/ ]  && [ -w /etc/rc.d/ ] ; then \
-                       $(RM) /etc/rc.d/rc.privoxy ;\
-               elif [ -f /etc/redhat-release ] && [ -d /etc/rc.d/init.d/ ]  && [ -w /etc/rc.d/init.d/ ] ; then \
-                       $(RM) /etc/rc.d/init.d/privoxy /etc/logrotate.d/privoxy;\
-               elif [ -d /etc/init.d ] && [ -w /etc/init.d ] ; then \
-                       $(RM) /etc/init.d/privoxy ;\
+               if [ -f $(DESTDIR)/etc/slackware-version ] && \
+                       [ -d $(DESTDIR)/etc/rc.d/ ]  && [ -w $(DESTDIR)/etc/rc.d/ ] ; then \
+                       $(RM) $(DESTDIR)/etc/rc.d/rc.privoxy ;\
+               elif [ -f $(DESTDIR)/etc/redhat-release ] && [ -d $(DESTDIR)/etc/rc.d/init.d/ ] \
+                       && [ -w $(DESTDIR)/etc/rc.d/init.d/ ] ; then \
+                       $(RM) $(DESTDIR)/etc/rc.d/init.d/privoxy $(DESTDIR)/etc/logrotate.d/privoxy;\
+               elif [ -d $(DESTDIR)/etc/init.d ] && [ -w $(DESTDIR)/etc/init.d ] ; then \
+                       $(RM) $(DESTDIR)/etc/init.d/privoxy ;\
                else \
                        $(ECHO) "Unable to remove privoxy init script, not installed or permission denied" ;\
                fi ;\
@@ -1344,11 +1337,13 @@ uninstall: CONF_DEST LOG_DEST PID_DEST check_doc
        @$(ECHO) Privoxy uninstalled, bye
 
 coffee:
-        @perl -e 'print pack "C*", (31,139,8,8,153,63,226,60,2,3,99,111,102,102,101,101,0,109,143,205,13,192,32,8,133,\
-                  239,78,241,110,234,1,28,160,171,152,208,53,26,117,247,22,165,73,137,125,9,1,62,126,2,128,169,5,243,143,\
-                  13,139,49,164,65,100,149,152,102,73,141,88,73,178,116,205,100,69,253,36,102,81,49,83,236,19,225,171,131,\
-                  214,172,163,73,4,168,123,115,71,126,247,122,94,128,178,227,95,154,12,86,215,122,197,249,146,187,54,220,125,\
-                  193,51,228,11,1,0,0);'|zcat
+        @perl  -e 'print pack "C*", (31,139,8,8,153,63,226,60,2,3,99,111,102,102,101,'  \
+               -e '101,0,109,143,205,13,192,32,8,133,239,78,241,110,234,1,28,160,171,'  \
+               -e '152,208,53,26,117,247,22,165,73,137,125,9,1,62,126,2,128,169,5,243,' \
+               -e '143,13,139,49,164,65,100,149,152,102,73,141,88,73,178,116,205,100,'  \
+               -e '69,253,36,102,81,49,83,236,19,225,171,131,214,172,163,73,4,168,123,' \
+               -e '115,71,126,247,122,94,128,178,227,95,154,12,86,215,122,197,249,146,' \
+               -e '187,54,220,125,193,51,228,11,1,0,0);' | zcat
 
 #############################################################################
 
@@ -1357,6 +1352,97 @@ coffee:
 ## end:
 
 # $Log: GNUmakefile.in,v $
+# Revision 1.170  2008/06/12 16:38:50  fabiankeil
+# Add third-level domain to URL in dok-get target.
+#
+# Revision 1.169  2008/06/09 17:28:31  fabiankeil
+# - Recommend https for releasing files.
+# - Fix a warning about datarootdir being ignored.
+#
+# Revision 1.168  2008/05/23 18:03:12  fabiankeil
+# - Shorten meta description inserted in dok-webserver
+#   and dok-index target.
+# - In config-file target, unset LANG for w3m as we
+#   might otherwise end up with multi-byte characters.
+#
+# Revision 1.167  2008/05/23 14:39:09  fabiankeil
+# Silence dok-user complaint about @# not being found.
+#
+# Revision 1.166  2008/05/23 14:04:57  fabiankeil
+# - Get config-file target working with more recent Perl
+#   versions. The generated file is still messed up, though.
+# - Fix comment typo.
+#
+# Revision 1.165  2008/05/22 16:57:23  fabiankeil
+# Fix coffee machine.
+#
+# Revision 1.164  2008/05/22 10:26:26  fabiankeil
+# - Remove parsers.@OBJEXT@'s dependency on encode.h.
+# - Include Emacs backup files in tidy target again.
+#
+# Revision 1.163  2008/05/04 18:01:53  fabiankeil
+# Dependency fixes: cgisimple.c and filters.c depend on urlmatch.h.
+#
+# Revision 1.162  2008/03/30 13:31:42  fabiankeil
+# Add DESTDIR support for the uninstall target.
+#
+# Revision 1.161  2008/03/30 13:19:13  fabiankeil
+# Add DESTDIR support for the install target. Closes PR#1910612.
+# Patch by Radoslaw Zielinski with minor modifications.
+#
+# Revision 1.160  2008/03/27 18:27:19  fabiankeil
+# Remove kill-popups action.
+#
+# Revision 1.159  2008/03/21 11:13:53  fabiankeil
+# Only gather host information if it's actually needed.
+# Also move the code out of accept_connection() so it's less likely
+# to delay other incoming connections if the host is misconfigured.
+#
+# Revision 1.158  2007/12/11 21:29:25  fabiankeil
+# Fix dependency list for cgiedit.c.
+#
+# Revision 1.157  2007/12/10 02:28:02  hal9
+# Unset $LANG for text processing of docs so we get pure text.
+#
+# Revision 1.156  2007/11/15 03:17:43  hal9
+# Some workaround changes to the config file perl stuff and comments, which is
+# broken here all by itself on perl 5.8.8.
+#
+# Revision 1.155  2007/09/22 16:23:25  fabiankeil
+# Update copyright line.
+#
+# Revision 1.154  2007/02/07 11:52:40  fabiankeil
+# Fix suse-dist as described in BR#1654052.
+# (I didn't test it, but it's done the same
+# way in redhat-dist which is known to work).
+#
+# Revision 1.153  2007/01/07 07:36:36  joergs
+# Added AmigaOS4 support.
+#
+# Revision 1.152  2006/12/13 14:53:51  etresoft
+# Include any existing LDFLAGS environment when linking so that a MacOS X Universal Binary can be created.
+#
+# Revision 1.151  2006/11/30 01:08:55  hal9
+# Fix problem with variable declarations in the Slackware section. Thanks to higuita.
+#
+# Revision 1.150  2006/10/25 11:55:45  fabiankeil
+# Fix sed regexes for rewriting "confdir ." and "logdir .".
+# Thanks to Darel Henman for reporting this.
+#
+# Revision 1.149  2006/10/11 01:40:28  hal9
+# Apply patch from  Neil McCalden to fix syntax issue.
+#
+# Revision 1.148  2006/09/26 10:57:58  hal9
+# Including Karsten's patch to fix make create-snapshot.
+#
+# Revision 1.147  2006/09/13 01:25:16  hal9
+# Make sure install forces in new default.action, default.filter, and
+# standard.filter. These are privoxy files, not user files.
+#
+# Revision 1.146  2006/09/08 23:57:19  hal9
+# User manual images are now user-manual doc directory, and fix make install
+# target accordingly.
+#
 # Revision 1.145  2006/09/08 02:32:00  hal9
 # Various changes to implement building and installing docs to be compatible
 # with the new "user-manual" settings in config from Roland. Docbook does not