# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.168 2008/05/23 18:03:12 fabiankeil Exp $
+# $Id: GNUmakefile.in,v 1.182 2009/09/26 17:12:19 fabiankeil Exp $
#
-# Written by and Copyright (C) 2001 - 2007 the SourceForge
+# Written by and Copyright (C) 2001 - 2008 the SourceForge
# Privoxy team. http://www.privoxy.org/
#
# Based on the Internet Junkbuster originally written
VERSION_POINT = @VERSION_POINT@
CODE_STATUS = @CODE_STATUS@
VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_POINT)
-RPM_VERSION = $(VERSION)
-RPM_PACKAGEV = ""
-SNAPVERSION = $(RPM_VERSION)-$(shell date "+%Y%m%d")
+SNAPVERSION = $(VERSION)-$(shell date "+%Y%m%d")
#############################################################################
RMDIR = rmdir
MKDIR = ./mkinstalldirs
STRIP_PROG = strip
-SED = sed
+SED = sed
GREP = grep
CAT = cat
-RPM = rpm
-RPMBUILD = rpmbuild
-MV = mv
+MV = mv
TAR = tar
LN = ln
TOUCH = touch
G2H_CMD = groff -mandoc -Thtml
TARGET_OS = @host@
PERL = perl
-DOC_DIR = doc/source
+DOC_DIR = doc/source
DOC_TMP = $(DOC_DIR)/tmp
DOC_STATUS = @DOC_STATUS@
#TMPDIR := $(shell mktemp -d /tmp/$(PROGRAM).XXXXXX)
#############################################################################
-# Setup for make distribution rh and suse for now
+# Setup for make distribution for now.
#############################################################################
-TAR_ARCH = /tmp/privoxy-$(RPM_VERSION).tar.gz
-RPM_BASE = @RPM_BASE@
+TAR_ARCH = /tmp/privoxy-$(VERSION).tar.gz
#############################################################################
# We include these files in our distributions
#############################################################################
-CONFIGS = config trust default.action standard.action user.action default.filter user.filter
+CONFIGS = config trust default.action match-all.action user.action default.filter user.filter
# take care that no CVS .cvsignore or other crappy files
# are included here
# and escape every '#' in the find. doh.
`find templates/ -type f | grep -v "CVS" | grep -v "\.\#" | grep -v ".*~" | grep -v ".cvsignore" | grep -v "TAGS"`
DOC_FILES = AUTHORS LICENSE README ChangeLog INSTALL \
- `find doc/text/ -type f | grep -v "CVS" | grep -v "\.\#" | grep -v ".*~" | grep -v ".cvsignore" | grep -v "TAGS"` \
`find doc/webserver/ -name "*.html" | grep -v "\(webserver\|team\)\/index\.html"` \
`find doc/webserver/ -name "*.css"` \
- privoxy.1 \
- doc/pdf/*.pdf
+ privoxy.1
#############################################################################
# Filenames and libraries
#############################################################################
# Phony targets
#############################################################################
-.PHONY: all inifiles redhat-dist redhat-upload solaris-dist suse-dist \
-suse-upload win-dist tarball-dist dok redhat-dok webserver clean clobber tags \
-install conectiva-spec conectiva-dist conectiva-upload CONF_DEST LOG_DEST \
+.PHONY: all inifiles solaris-dist \
+win-dist tarball-dist dok webserver clean clobber tags \
+install CONF_DEST LOG_DEST \
PID_DEST check_doc install-strip uninstall GROUP_T
#############################################################################
config.txt: config
$(SED) -e 's!\trustfile trust!trustfile trust.txt!' \
- -e 's!\jarfile jarfile!jarfile jar.log!' \
-e 's!\logfile logfile!logfile privoxy.log!' \
-e 's!#Win32-only: !!' \
< $< | \
# tar.gz with the current date in the name and as a releasenumber in the
# spec-file. But the main usage is to run it as follows (Red Hat example):
# make SNAPVERSION=1.6x create-snapshot
-# This creates a tar.gz and spec-file for a Red Hat 6.x version.
+# This creates a tar.gz.
#############################################################################
create-snapshot:
@tag=`cvs -d $(CVSROOT) status Makefile | awk ' /Sticky Tag/ { print $$3 } '` 2> /dev/null; \
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' \
- privoxy-rh.spec > $$TMPFILE ; then \
- $(MV) -f $$TMPFILE privoxy-rh.spec; \
- else \
- $(ECHO) "Could not set version info in specfile."; \
- exit 1;\
- fi;\
- if $(SED) -e 's/^\(Version:\).*/\1 $(RPM_VERSION)/g' \
- -e 's/^\(Release:\).*/\1 $(SNAPVERSION)/g' \
- privoxy-suse.spec > $$TMPFILE ; then \
- $(MV) -f $$TMPFILE privoxy-suse.spec; \
- else \
- $(ECHO) "Could not set version info in specfile."; \
- exit 1;\
- fi; \
- $(RM) $$TMPFILE; \
- cd $$TMPDIR/current; \
$(TAR) --exclude ".cvsignore" --exclude "CVS" \
-czf /tmp/$(PROGRAM)-$(VERSION).tar.gz .; \
$(RM) -rf $$TMPDIR
#############################################################################
# looks at the version of Makefile and exports a corresponding source-tree
# example: if the Makefile has the sticky tag v_2_9_13, you'll get
-# privoxy-*-2.4.13.tar.gz. Two different tar files will be written, one for
-# Red Hat and one for SuSe (different spec-files)
+# privoxy-*-2.4.13.tar.gz.
#############################################################################
create-archive:
make SNAPVERSION=$(SNAPVERSION) create-snapshot
-#############################################################################
-# RPM specifice stuff (SuSE or Redhat, ..)
-#############################################################################
-rpm-stuff: dist-check clean clobber
- for dir in RPMS SRPMS BUILD SOURCES SPECS; do \
- if [ ! -w $(RPM_BASE)/$$dir ]; then \
- $(ECHO) "$(RPM_BASE)/$$dir is not writable for you. Maybe try as root."; \
- $(ECHO) "Or add a suitable path to .rpmmacros like."; \
- $(ECHO) "%_topdir /home/foo/rpm-build"; \
- exit 1; \
- fi; \
- done; \
-
-check-release:
- @if [ "$(RPM_PACKAGEV)" = "" ]; then \
- echo ; \
- echo " ERROR: NO RPM_PACKAGEV VALUE"; \
- echo " No value given for RPM_PACKAGEV. Please use:"; \
- echo " make dist-upload RPM_PACKAGEV=release"; \
- echo " where \"release\" is the release number you want to and"; \
- echo " where \"dist\" is the name of the distro (redhat or suse)"; \
- echo ; \
- echo " Ex: make redhat-upload RPM_PACKAGEV=1"; \
- echo ""; \
- echo "ATTENTION: If your distribution use a specific tag on the"; \
- echo " release field (like \"cl\" for Conectiva, and"; \
- echo " \"mdk\" for Mandrake), DO NOT put it on the value"; \
- echo " given to RPM_PACKAGEV. It will be added automaticaly."; \
- echo " Do it like you would do for a redhat package,"; \
- echo " (i.e. just the number)."; \
- echo ; \
- exit 1; \
- fi
-
-
-#############################################################################
-# Create Conectiva specfile from RedHat specfile
-#############################################################################
-conectiva-spec:
- $(RM) privoxy-cl.spec
- chmod a+x genclspec.sh
- ./genclspec.sh
-
-#############################################################################
-# Conectiva distribution for x86
-#############################################################################
-conectiva-dist: rpm-stuff conectiva-spec
-
- $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-suse.spec" --exclude "privoxy-rh.spec" --exclude "PACKAGERS" -czf $(TAR_ARCH) .
- $(RPMBUILD) --clean -ta $(TAR_ARCH)
- if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
-
-conectiva-upload: check-release
- make redhat-upload RPM_PACKAGEV=$(RPM_PACKAGEV)cl
-
-#############################################################################
-# redhat distribution alpha and x86
-#############################################################################
-redhat-dist: rpm-stuff
- echo $(CONFIG_FILES)
- $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-suse.spec" --exclude "privoxy-cl.spec" --exclude "PACKAGERS" -czf $(TAR_ARCH) .
- $(RPMBUILD) --clean -ta $(TAR_ARCH)
- if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
-
-# For testing build issues only! Use redhat-dist for official releases.
-redhat-test:
- echo $(CONFIG_FILES)
- $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-suse.spec" --exclude "privoxy-cl.spec" --exclude "PACKAGERS" -czf $(TAR_ARCH) .
- $(RPMBUILD) --clean -tb $(TAR_ARCH)
- if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
- @echo "WARNING: This target is only for testing. Use redhat-dist for releases!!!"
-
-# anonymously ncftps the rpms to sourceforge
-redhat-upload: check-release
- ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming $(RPM_BASE)/SRPMS/privoxy-$(RPM_VERSION)-$(RPM_PACKAGEV).src.rpm
-# better should use `arch` here instead of ix86 to support other platforms too
- 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) 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
-
-
-#############################################################################
-# Creates a Red Hat sourcepackage from CVS (not from the current sources
-# on disk)
-#############################################################################
-redhat-srpm:
- make create-archive
- $(RPMBUILD) -ts --nodeps $(PROGRAM)-$(VERSION).tar.gz
-
-
-#############################################################################
-# suse distribution. works fine. no need to be root.
-#############################################################################
-suse-dist: rpm-stuff
-# TMPFILE=$$(mktemp -q /tmp/$(PROGRAM).XXXXXX); \
-# if $(SED) -e 's/^\(Version:\).*/\1 $(RPM_VERSION)/g' \
-# -e 's/^\(Release:\).*/\1 $(RPM_PACKAGEV)/g' \
-# privoxy-suse.spec > $$TMPFILE ; then \
-# $(MV) -f $$TMPFILE privoxy-suse.spec; \
-# else \
-# $(ECHO) "Could not set version info in specfile."; \
-# exit 1;\
-# fi
-
- $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-rh.spec" --exclude "privoxy-cl.spec" --exclude "PACKAGERS" -czf $(TAR_ARCH) .
- $(RPMBUILD) --clean -ta $(TAR_ARCH)
- if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
-
-# anonymously ncftps the rpms to sourceforge
-suse-upload: check-release
- ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming $(RPM_BASE)/SRPMS/privoxy-suse-$(RPM_VERSION)-$(RPM_PACKAGEV).src.rpm
-# better should use `arch` here instead of ix86 to support other platforms too
- 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) https://sourceforge.net/project/admin/editpackages.php?group_id=11118
- @$(ECHO) ... and release the files.
- @$(ECHO) -------------------------------------------------------
-
-# handle with care. use with root.
-suse-clean:
- $(RPM) -e junkbuster-suse || true
- $(RM) -r /etc/junkbuster
- $(RM) -r /etc/rc.d/junkbuster*
- $(RM) -r /var/run/junkbuster.pid
- $(RM) -r /var/log/junkbuster
- $(RM) /etc/init.d/junkbuster
- $(RM) /usr/sbin/junkbuster
- $(RM) /usr/sbin/rcjunkbuster
- $(RM) /usr/share/man/man1/junkbuster.1.gz
- $(RPM) -e privoxy-suse || true
- $(RM) -r /etc/privoxy
- $(RM) -r /etc/rc.d/privoxy*
- $(RM) -r /var/run/privoxy.pid
- $(RM) -r /var/log/privoxy
- $(RM) /etc/init.d/privoxy
- $(RM) /usr/sbin/privoxy
- $(RM) /usr/sbin/rcprivoxy
- $(RM) /usr/share/man/man1/privoxy.1.gz
-
#############################################################################
# generic distribution
#############################################################################
gen-clean:
$(RM) privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar*
-#############################################################################
-# solaris distribution. verified on SF machines by swa.
-#############################################################################
-solaris-dist: gen-dist
- @$(ECHO) Done.
-# anonymously ncftps the package to sourceforge
-solaris-upload: gen-upload
- @$(ECHO) Done.
-# use with care
-solaris-clean: gen-clean
- @$(ECHO) Done.
-
-#############################################################################
-# hpux distribution
-#############################################################################
-hpux-dist:
- @$(ECHO) coming soon.
-hpux-upload:
- @$(ECHO) coming soon.
-
-#############################################################################
-# debian distribution
-#############################################################################
-debian-dist:
- @$(ECHO) coming soon.
-debian-upload:
- @$(ECHO) coming soon.
-
-#############################################################################
-# macosx distribution
-#############################################################################
-macosx-dist:
- @$(ECHO) coming soon.
-macosx-upload:
- @$(ECHO) coming soon.
-
-#############################################################################
-# amiga distribution
-#############################################################################
-amiga-dist:
- @$(ECHO) coming soon.
-amiga-upload:
- @$(ECHO) coming soon.
-
-#############################################################################
-# freebsd distribution. verified on SF machines by swa.
-#############################################################################
-freebsd-dist: gen-dist
- @$(ECHO) Done.
-# anonymously ncftps the package to sourceforge
-freebsd-upload: gen-upload
- @$(ECHO) Done.
-# use with care
-freebsd-clean: gen-clean
- @$(ECHO) Done.
-
-#############################################################################
-# Windows distribution
-#############################################################################
-win-dist:
- $(ECHO) Not implemented.
-
-
#############################################################################
# Tarball distribution: No CVS dirs, dotfiles, debian build dir,
# (FIXME:) only parts of the static / generated docs mix in doc/webserver
for i in `find . -type f -a -not \( -path "*/CVS*" -o -name ".*" \
-o -path "*/debian/*" -o -path "*/actions/*" -o -name "*.php" -o \
- -name "PACKAGERS" -o -path "*/pdf/*" \)`; do \
+ -name "PACKAGERS" \)`; do \
files="$$files privoxy-$(VERSION)-$(CODE_STATUS)/$$i"; \
done && \
cd .. && $(TAR) -cvhf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar $$files ; \
#
# Documentation
#
-# converts doc/source/*.sgml into html, text, pdf and man pages
+# converts doc/source/*.sgml into html and man pages
#
#############################################################################
dok-devel:
$(RM) doc/webserver/developer-manual/*.html
$(RM) -r doc/source/developer-manual
- mkdir -p doc/text doc/source/developer-manual
+ mkdir -p 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 && env -u LANG $(WDUMP) tmp.html > ../text/developer-manual.txt && $(RM) -r tmp.html developer-manual
# user manual
dok-user:
$(RM) doc/webserver/user-manual/*.html
$(RM) -r doc/source/user-manual/
- mkdir -p doc/text doc/source/user-manual
+ mkdir -p 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.
$(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 && env -u LANG $(WDUMP) tmp.html > ../text/user-manual.txt && $(RM) -r tmp.html user-manual
# faq
dok-faq:
$(RM) doc/webserver/faq/*.html
$(RM) -r doc/source/faq
- mkdir -p doc/text doc/source/faq
+ mkdir -p 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 && 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:
mkdir -p doc/source/temp && cd doc/source/temp && $(RM) * ;\
nsgmls ../privoxy-man-page.sgml | sgmlspl ../../../utils/docbook2man/docbook2man-spec.pl &&\
perl -pi.bak -e 's/ <URL:.*>//; s/\[ /\[/g' privoxy.1 ;\
+ perl -pi.bak -e "s/\[ /\[/g;s/á/\\\\['a]/g;s/é/\\\\['e]/g" privoxy.1; \
+ perl -pi.bak -e "s/ö/\\\\[:o]/g" privoxy.1; \
+ perl -pi.bak -e 's/([ {])-([a-z])/$$1\\-$$2/g' privoxy.1; \
+ perl -pi.bak -e 's/ --([a-z])/ \\-\\-$$1/g' privoxy.1; \
+ perl -pi.bak -e 's/\\fB--/\\fB\\-\\-/g' privoxy.1; \
$(DB) ../privoxy-man-page.sgml && $(MV) -f privoxy.1 ../../../privoxy.1
# For those with man2html ala RH7s.
# Twice because my version of man2html is pulling in commas and periods in URLs.
$(PERL) -pi.bak -e 's/(<A.*),(">)/$$1$$2/g' tmp.html
$(PERL) -pi.bak -e 's,\.">,">,g' tmp.html
+ $(PERL) -pi.bak -e "s/\['a\]/\á/g;s/\['e\]/\é/g" tmp.html
# Get rid of spurious \a from conversion. (How to do this with perl?)
$(SED) -e 's/\a//g' tmp.html > doc/webserver/man-page/privoxy-man-page.html && $(RM) tmp.*
else
dok: dok-release dok-devel dok-user dok-faq dok-readme dok-webserver dok-authors dok-index
@$(ECHO) Documentation created.
-#
-# an alternative to the above dok. disabled man page creation for the moment
-#
-redhat-dok: dok-release dok-devel dok-user dok-faq redhat-readme dok-webserver dok-authors
- @$(ECHO) Documentation created.
-
-## Make README
-redhat-readme:
- cd doc/source && $(DB)-notoc -V nochunks readme.sgml > tmp.html && $(WDUMP) \
- tmp.html > ../../README && $(RM) -r tmp.html
-
## Make AUTHORS file
dok-authors:
cd doc/source && $(DB) -V nochunks authors.sgml > tmp.html && env -u LANG $(WDUMP) \
$(RM) -r doc/source/*bak doc/source/*/*bak
endif
-# Generate single page html. Used only for creating pdf docs (ATM).
-# Currently using: See http://www.easysw.com/htmldoc/pdf-o-matic.php.
-# If using this generator, remember U-M has a couple of graphics in
-# a parallel directory.
-#
-dok-shtml: dok-release
- mkdir -p doc/source/temp # this directory not in cvs
- cd doc/source && $(DB) -iuser-man -V nochunks user-manual.sgml > temp/privoxy-user-manual.html
- cd doc/source && $(DB) -V nochunks developer-manual.sgml > temp/privoxy-developer-manual.html
- cd doc/source && $(DB) -V nochunks faq.sgml > temp/privoxy-faq.html
-# one could use html2ps and ps2pdf. well, that does not work. htmlps produces incorrect output.
-
-# Make pdf docs from single page html. Requires htmldoc, see
-# (http://www.easysw.com/htmldoc/). Note: 1.8.20 has a TOC bug.
-# PDF docs are uploaded to webserver as zip archive.
-dok-pdf: dok-shtml
- @$(ECHO) -n "starting htmldoc version: ";
- if htmldoc --version ; then : ; \
- else $(ECHO) "WARNING: could not get htmldoc version" ; fi
- cd utils/ldp_print && $(RM) *html *bak *jpg *tmp *pdf *zip
- cp -f doc/source/temp/*html doc/webserver/user-manual/*jpg utils/ldp_print
- cd utils/ldp_print ;\
- $(PERL) -pi.bak -e 's/\.\.\/images\///; s/(<\/?)SUB/$$1small/i;\
- s/\.\.\/user-manual\/index\.html/privoxy-user-manual.pdf/;\
- s/\.\.\/developer-manual\/index\.html/privoxy-developer-manual.pdf/;\
- s/\.\.\/faq\/index\.html/privoxy-faq.pdf/' *.html ;\
- for i in developer-manual user-manual faq; do \
- ./ldp_print privoxy-$$i.html ;\
- $(ECHO) DONE: privoxy-$$i.pdf ;\
- done ;\
- $(MV) *.pdf ../../doc/pdf ;\
- $(RM) -r *html *bak *jpg *pdf *zip ../../doc/source/temp
-
# Create release announcement in text and html, with short and long versions.
# This is a standalone target, and must be invoked directly.
# announce: dok-release
config-file: dok-release
cd doc/source && $(DB)-notoc -iconfig-file -V nochunks config.sgml > __tmp.html &&\
env -u LANG w3m -dump __tmp.html | fmt -w 70 > ../../config.new && $(RM) -r __tmp.*
- $(PERL) -pi.bak \
- -e 's/^1\. \@\@TITLE\@\@/ /i;' \
- -e '/^\d\.\d\.\s+/ && tr/[a-z]/[A-Z]/;' \
- -e 'my $$hit_header;' \
- -e '$$header_len=0 unless $$hit_header;' \
- -e 'if ($$hit_header) {' \
- -e ' print "# ";' \
- -e ' for ($$i=1; $$i < $$header_len; $$i++)' \
- -e ' {print "=";}' \
- -e ' print "\n";' \
- -e '};' \
- -e '$$hit_header=0;' \
- -e '$$hit_header=1 if m/^(\d\.)(\d\.)(\d\.)?\s/ && s/^(\d\.)//;'\
- -e '$$header_len = length($$_);' \
- -e 's/^/# /; /^# #{12,}/ && s/^# #/####/;' \
- -e 's/^.*$$// if $$hit_option;' \
- -e '$$hit_option=0;' \
- -e 's/^\n//;' \
- -e 's/^#\s*-{20,}//;' \
- -e 's/ *$$//;' \
- -e '$$hit_option=1 if s/^#\s+@@//;' config.new
+ $(PERL) -i.bak utils/prepare-configfile.pl config.new
$(RM) *.bak
@$(ECHO) "****************************************************"
#############################################################################
webserver: tidy
@$(ECHO) -------------------------------------------------------
- @$(ECHO) You have run make dok/redhat-dok before, right?
- @$(ECHO) Note that this command scps all stuff to the webserver,
- @$(ECHO) it will not remove obsolete documents.
+ @$(ECHO) You will need to "create" a SF shell first:
+ @$(ECHO) ssh -t USER,PROJECT@shell.sourceforge.net create
+ @$(ECHO) Please make sure your documentation files are up to date.
+ @$(ECHO) Note that this command updates the home page and scps
+ @$(ECHO) all stuff to the webserver, it will not remove obsolete documents.
+ @$(ECHO) You will also need to change the user-manual symlink manually.
@$(ECHO) -------------------------------------------------------
@$(ECHO) Uploading html
@cd doc/webserver; \
upload=`find . -type f -a -not \( -path "*/CVS*" -o -path "*/results*" \)`; \
- $(TAR) c $$upload | ssh ijbswa.sourceforge.net 'cd /home/groups/i/ij/ijbswa/htdocs/; tar xvm 2>&1 | grep -v timestamp'
-
- @$(ECHO) Uploading pdf
- @cd doc/pdf;\
- zip privoxy-pdf-docs *.pdf ;\
- scp -q privoxy-pdf-docs.zip ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/pdf
+ $(TAR) c $$upload | ssh shell.sf.net 'cd /home/groups/i/ij/ijbswa/htdocs/; tar xvm 2>&1 | grep -v timestamp'
@$(ECHO) Fixing permissions
- @ssh ijbswa.sourceforge.net 'chmod -R 775 /home/groups/i/ij/ijbswa/htdocs 2>/dev/null; true'
- @ssh ijbswa.sourceforge.net 'find /home/groups/i/ij/ijbswa/htdocs/ -type f | xargs chmod 664 2>/dev/null; true'
- @ssh ijbswa.sourceforge.net 'chmod 666 /home/groups/i/ij/ijbswa/htdocs/actions/results/actions-feedback.txt 2>/dev/null; true'
+ @ssh shell.sf.net 'chmod -R 775 /home/groups/i/ij/ijbswa/htdocs 2>/dev/null; true'
+ @ssh shell.sf.net 'find /home/groups/i/ij/ijbswa/htdocs/ -type f | xargs chmod 664 2>/dev/null; true'
+ @ssh shell.sf.net 'chmod 666 /home/groups/i/ij/ijbswa/htdocs/actions/results/actions-feedback.txt 2>/dev/null; true'
web-actions: tidy
dok-get:
cd /tmp ;\
- $(WGET) http://privoxy.org/docs/$(DOC_FILE) ;\
+ $(WGET) http://www.privoxy.org/docs/$(DOC_FILE) ;\
$(TAR) -zxvf $(DOC_FILE)
gnu_regex.@OBJEXT@: gnu_regex.c gnu_regex.h config.h
# PCRS
-pcrs.@OBJEXT@: pcrs.c pcrs.h config.h pcre/pcre.h
+pcrs.@OBJEXT@: pcrs.c pcrs.h config.h @STATIC_PCRE_ONLY@pcre/pcre.h
# PCRE
pcre/get.@OBJEXT@: pcre/get.c pcre/config.h pcre/internal.h pcre/pcre.h
$(LD) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
clean:
- $(RM) a.out $(OBJS) $(W32_FILES) $(W32_INIS) $(PROGRAM) default.action `find . -name TAGS -o -name tags` config.base config.tmp
+ $(RM) a.out $(OBJS) $(W32_FILES) $(W32_INIS) $(PROGRAM) default.action \
+ `find . -name TAGS -o -name tags | $(GREP) -v .git` config.base config.tmp
tidy:
$(RM) `find . -name "*~"`
fi ;\
$(ECHO) Installing configuration files to $(DESTDIR)$(CONF_DEST);\
for i in $(CONFIGS); do \
- if [ "$$i" = "default.action" ] || [ "$$i" = "default.filter" ] || [ "$$i" = "standard.action" ]; then \
+ if [ "$$i" = "default.action" ] || [ "$$i" = "default.filter" ] ; then \
$(RM) $(DESTDIR)$(CONF_DEST)/$$i ;\
$(ECHO) Installing fresh $$i;\
$(INSTALL) $$INSTALL_CONF $$i $(DESTDIR)$(CONF_DEST) || exit 1;\
fi ;\
[ ! -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 ;\
+ $(TOUCH) $(DESTDIR)$(LOG_DEST)/logfile || exit 1 ;\
if [ x$$USER != x ]; then \
- $(CHOWN) $$USER $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || \
+ $(CHOWN) $$USER $(DESTDIR)$(LOG_DEST)/logfile || \
$(ECHO) "** WARNING ** current install user different from configured user. Logging may fail!!" ;\
fi ;\
if [ x$$GROUP_T != x ]; then \
- $(CHGRP) $$GROUP_T $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || \
+ $(CHGRP) $$GROUP_T $(DESTDIR)$(LOG_DEST)/logfile || \
$(ECHO) "** WARNING ** current install user different from configured user. Logging may fail!!" ;\
fi ;\
- $(CHMOD) $(RWD_MODE) $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(LOG_DEST)/jarfile || exit 1 ;\
+ $(CHMOD) $(RWD_MODE) $(DESTDIR)$(LOG_DEST)/logfile || 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 | \
$(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 \
- $(ECHO) "Installing init script to /etc/rc.d/init.d/privoxy" ;\
- $(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 $(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." ;\
@$(ECHO) Starting Privoxy uninstallation
@# KILL privoxy if running
@# 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 $(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) &&\
-$(RM) $(DESTDIR)$(MAN_DEST)/privoxy.1*
-$(RM) -r $(DESTDIR)$(DOC_DEST) || $(RM) -r $(DESTDIR)$(prefix)/doc/privoxy
- @# Log and jarfile and pidfile
+ @# Log and pidfile
@$(ECHO) Removing $(PROGRAM) logs
- -$(RM) $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(PID_DEST)/privoxy.pid $(DESTDIR)$(LOG_DEST)/jarfile
+ -$(RM) $(DESTDIR)$(LOG_DEST)/logfile $(DESTDIR)$(PID_DEST)/privoxy.pid
@# Final clean up of unused directories. Special handling of CONF and LOG
# destinations.
fi;\
fi
- @# init scripts and logrotate
+ @# init scripts
@if [ "$(prefix)" = "/usr/local" ] || [ "$(prefix)" = "/usr" ]; then \
$(ECHO) Removing $(PROGRAM) init script ;\
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 \
## end:
# $Log: GNUmakefile.in,v $
+# Revision 1.182 2009/09/26 17:12:19 fabiankeil
+# Remove obsolete redhat, suse and connectiva targets.
+#
+# Revision 1.181 2009/04/04 20:24:29 fabiankeil
+# Let the clean target play nice with git.
+#
+# Revision 1.180 2009/02/28 08:28:14 fabiankeil
+# pcrs.o doesn't depend on pcre/pcre.h if we are linking
+# dynamically. Patch provided by drauh in #2056286.
+#
+# Revision 1.179 2009/02/22 14:48:31 hal9
+# Updates to the 'make webserver' target that recreates the home page and uploads
+# fresh documents to reflect new SF realities, and more explanation of process.
+#
+# Revision 1.178 2009/02/08 18:35:48 fabiankeil
+# Move the match-all section into a separate file
+# (match-all.action) so we can safely overwrite the
+# default actions when updating. Based on Roland's
+# patch #1563977.
+#
+# Revision 1.177 2009/01/13 16:44:32 fabiankeil
+# Delete the standard.action file after moving
+# the pre-settings over to the default actions.
+#
+# Revision 1.176 2008/09/21 13:24:37 fabiankeil
+# Add Roland's man page fixes from 19_manpage_fixup.dpatch.
+#
+# Revision 1.175 2008/08/30 12:03:07 fabiankeil
+# Remove FEATURE_COOKIE_JAR.
+#
+# Revision 1.174 2008/07/18 17:50:47 fabiankeil
+# Fix whitespace.
+#
+# Revision 1.173 2008/06/18 18:28:42 fabiankeil
+# Remove PDF-related stuff.
+#
+# Revision 1.172 2008/06/17 16:16:08 fabiankeil
+# - Stop building text files nobody cares about.
+# - Update copyright year.
+#
+# Revision 1.171 2008/06/13 15:24:57 fabiankeil
+# Move previously inline'd Perl code for the config-file target
+# into a separate file, have it work with older perl releases,
+# clean it up a bit and fix the "underlining" code.
+#
+# 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.