# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.169 2008/06/09 17:28:31 fabiankeil Exp $
+# $Id: GNUmakefile.in,v 1.175 2008/08/30 12:03:07 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
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@
`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
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: !!' \
< $< | \
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
$(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) "****************************************************"
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
-
@$(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'
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 | \
-$(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.
## end:
# $Log: GNUmakefile.in,v $
+# 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.