# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.190 2010/11/14 11:26:26 fabiankeil Exp $
+# $Id: GNUmakefile.in,v 1.195 2011/01/22 12:33:11 fabiankeil Exp $
#
# Written by and Copyright (C) 2001-2010 members of the
# Privoxy team. http://www.privoxy.org/
SBIN_DEST = @sbindir@
MAN_DIR = @mandir@
MAN_DEST = $(MAN_DIR)/man1
+MAN_PAGE = privoxy.1
SHARE_DEST = @datadir@
DOC_DEST = $(SHARE_DEST)/doc/privoxy
VAR_DEST = @localstatedir@
DOC_FILES = AUTHORS LICENSE README ChangeLog INSTALL \
`find doc/webserver/ -name "*.html" | grep -v "\(webserver\|team\)\/index\.html"` \
`find doc/webserver/ -name "*.css"` \
- privoxy.1
+ $(MAN_PAGE)
#############################################################################
# Filenames and libraries
# Strip master copy comments from default.action:
#############################################################################
default.action: default.action.master
- $(GREP) -v '^#MASTER#' $< > $@
+ $(GREP) -v '^#MASTER#' default.action.master > $@
#############################################################################
# Win32 config files
# man page, one variation. Try to use the next target, just 'make man'.
dok-man:
$(RM) doc/man/* doc/webserver/man-page/*.html
-ifneq ($(MAN2HTML),false)
+ ifneq ($(MAN2HTML),false)
$(ECHO) "<html><head><title>Privoxy Man page</title><link rel=\"stylesheet\" type=\"text/css\" href=\"../p_web.css\"></head><body><H2>NAME</H2>" > doc/webserver/man-page/privoxy-man-page.html
- man ./privoxy.1 | $(MAN2HTML) -bare >> doc/webserver/man-page/privoxy-man-page.html
+ man ./$(MAN_PAGE) | $(MAN2HTML) -bare >> doc/webserver/man-page/privoxy-man-page.html
$(ECHO) "</body></html>" >> doc/webserver/man-page/privoxy-man-page.html
-else
+ else
$(MAKE) groff2html
-endif
+ endif
# Build man page from sgml. This requires the SGMLSpm perl module.
# See CPAN, or your favorite perl repository. This is the preferred
man: dok-release
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
+ perl -pi.bak -e 's/ <URL:.*>//; s/\[ /\[/g' $(MAN_PAGE) ;\
+ perl -pi.bak -e "s/\[ /\[/g;s/á/\\\\['a]/g;s/é/\\\\['e]/g" $(MAN_PAGE); \
+ perl -pi.bak -e "s/ö/\\\\[:o]/g" $(MAN_PAGE); \
+ perl -pi.bak -e 's/([ {])-([a-z])/$$1\\-$$2/g' $(MAN_PAGE); \
+ perl -pi.bak -e 's/ --([a-z])/ \\-\\-$$1/g' $(MAN_PAGE); \
+ perl -pi.bak -e 's/\\fB--/\\fB\\-\\-/g' $(MAN_PAGE); \
+ $(DB) ../privoxy-man-page.sgml && $(MV) -f $(MAN_PAGE) ../../../$(MAN_PAGE)
# For those with man2html ala RH7s.
man2html:
mkdir -p doc/webserver/man-page
-ifneq ($(MAN2HTML),false)
- $(MAN2HTML) privoxy.1 |grep -v "^Content-type" > tmp.html
+ ifneq ($(MAN2HTML),false)
+ $(MAN2HTML) $(MAN_PAGE) |grep -v "^Content-type" > tmp.html
$(PERL) -pi.bak -e 's/<A .*Contents<\/A>//; s/<A .*man2html<\/A>/man2html/' tmp.html
$(PERL) -pi.bak -e 's/(<\/HEAD>)/<LINK REL=\"STYLESHEET\" TYPE=\"text\/css\" HREF=\"..\/p_doc.css\"><\/HEAD>/' tmp.html
# Twice because my version of man2html is pulling in commas and periods in URLs.
$(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
+ else
$(MAKE) groff2html
-endif
+ endif
# Otherwise we get plain groff conversion.
groff2html:
- $(G2H_CMD) ./privoxy.1 | $(SED) -e 's@</head>@<link REL="STYLESHEET" TYPE="text/css" HREF="../p_doc.css"></head>@' > doc/webserver/man-page/privoxy-man-page.html
+ $(G2H_CMD) ./$(MAN_PAGE) | $(SED) -e 's@</head>@<link REL="STYLESHEET" TYPE="text/css" HREF="../p_doc.css"></head>@' > doc/webserver/man-page/privoxy-man-page.html
# readme page and INSTALL file
s/<!entity +p-status.*>/<!entity p-status "$(CODE_STATUS)">/' \
doc/source/*sgml doc/source/*/*sgml
$(RM) -r doc/source/*bak doc/source/*/*bak
-ifeq ($(CODE_STATUS),stable)
+ ifeq ($(CODE_STATUS),stable)
@$(ECHO) Setting docs to stable $(VERSION)
@$(PERL) -pi.bak -e 's/<!entity +% +p-stable.*>/<!entity % p-stable "INCLUDE">/;\
s/<!entity +% +p-not-stable.*>/<!entity % p-not-stable "IGNORE">/' \
doc/source/*sgml doc/source/*/*sgml
$(RM) -r doc/source/*bak doc/source/*/*bak
-else
+ else
@$(ECHO) Setting docs to not stable $(VERSION)
@$(PERL) -pi.bak -e 's/<!entity +% +p-stable.*>/<!entity % p-stable "IGNORE">/;\
s/<!entity +% +p-not-stable.*>/<!entity % p-not-stable "INCLUDE">/' \
doc/source/*sgml doc/source/*/*sgml
$(RM) -r doc/source/*bak doc/source/*/*bak
-endif
+ endif
# Create release announcement in text and html, with short and long versions.
# This is a standalone target, and must be invoked directly.
@$(ECHO) You will need to "create" a SF shell first:
@$(ECHO) ssh -t SF-USER-ID,ijbswa@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) Note that this command updates the home page and copys
@$(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) Note that a botched upload can result in the documentation
+ @$(ECHO) on the website becoming unreachable! Also the CSS files
+ @$(ECHO) currently seem to end up at the wrong place.
@$(ECHO) -------------------------------------------------------
+ @$(ECHO) Replacing the user-manual symlink
+ @$(SSH) shell.sourceforge.net "cd /home/groups/i/ij/ijbswa/htdocs && rm user-manual \
+ && mkdir -p $(VERSION)/user-manual && ln -s $(VERSION)/user-manual user-manual"
+
@$(ECHO) Uploading html
@cd doc/webserver; \
upload=`find . -type f -a -not \( -path "*/CVS*" -o -path "*/results*" \)`; \
$(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 $(DESTDIR)$(MAN_DEST)/privoxy.1
- -$(INSTALL) $(INSTALL_T) privoxy.1 $(DESTDIR)$(MAN_DEST)/privoxy.1
+ @$(ECHO) Installing man page to $(DESTDIR)$(MAN_DEST)/$(MAN_PAGE)
+ -$(INSTALL) $(INSTALL_T) $(MAN_PAGE) $(DESTDIR)$(MAN_DEST)/$(MAN_PAGE)
@# Change the config file default directories according to the configured ones
@$(ECHO) Rewriting config for this installation
@# man page and docs
@$(ECHO) Removing $(PROGRAM) docs
- -$(RM) $(DESTDIR)$(MAN_DEST)/privoxy.1*
+ -$(RM) $(DESTDIR)$(MAN_DEST)/$(MAN_PAGE)*
-$(RM) -r $(DESTDIR)$(DOC_DEST) || $(RM) -r $(DESTDIR)$(prefix)/doc/privoxy
@# Log and pidfile