# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.66 2002/04/06 20:28:21 jongfoster Exp $
+# $Id: GNUmakefile.in,v 1.78 2002/04/09 13:37:11 sarantis Exp $
#
# Written by and Copyright (C) 2001 the SourceForge
# Privoxy team. http://www.privoxy.org/
CONFDEST = @prefix@@sysconfdir@
SBIN_DEST = @prefix@@sbindir@
MAN_DEST = @prefix@@mandir@
-
+DOK_WEB_USEM=doc/webserver/user-manual
#############################################################################
# Build tools
`find templates/ -type f | grep -v "CVS" | grep -v "\.\#" | grep -v ".*~" | grep -v ".cvsignore" | grep -v "TAGS"`
DOC_FILES = AUTHORS LICENSE README ChangeLog \
- `find doc/text/ -type f | grep -v "CVS" | grep -v "\.\#" | grep -v ".*~" | grep -v ".cvsignore" | grep -v "TAGS"` privoxy.1
+ `find doc/text/ -type f | grep -v "CVS" | grep -v "\.\#" | grep -v ".*~" | grep -v ".cvsignore" | grep -v "TAGS"` \
+ `find doc/webserver/ -name "*.html"` \
+ `find doc/webserver/ -name "*.css"` \
+ privoxy.1
#############################################################################
# Filenames and libraries
re_filterfile.txt: re_filterfile
$(DOSFILTER) < $< > $@
+
+#############################################################################
+# Pre-dist check:
+#############################################################################
+dist-check:
+ @if [ -d CVS ]; then \
+ $(ECHO) "***************************************************"; \
+ $(ECHO) "*** ***"; \
+ $(ECHO) "*** WARNING ***"; \
+ $(ECHO) "*** ***"; \
+ $(ECHO) "*** The presence of a CVS subdirectory suggests ***"; \
+ $(ECHO) "*** that you are trying to build a distribution ***"; \
+ $(ECHO) "*** package based on a checked out, not an ***"; \
+ $(ECHO) "*** exported copy of the source tree. Please ***"; \
+ $(ECHO) "*** see \"Releasing a new version\" in the ***"; \
+ $(ECHO) "*** developer manual. ***"; \
+ $(ECHO) "*** ***"; \
+ $(ECHO) "***************************************************"; \
+ $(ECHO) "Type \"yes i am sure\" if you are sure that you"; \
+ $(ECHO) -n "want to continue: "; \
+ read answer; \
+ if [ "$$answer" != "yes i am sure" ]; then exit 1; fi \
+ fi;
+
+
#############################################################################
# RPM specifice stuff (SuSE or Redhat, ..)
#############################################################################
-rpm-stuff: clean clobber
+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."; \
exit 1;\
fi
- $(TAR) --exclude "CVS" --exclude "privoxy-suse.spec" -czf $(TAR_ARCH) .
+ $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-suse.spec" -czf $(TAR_ARCH) .
$(RPM) --clean -ta $(TAR_ARCH)
if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
exit 1;\
fi
- $(TAR) --exclude "CVS" --exclude "privoxy-rh.spec" -czf $(TAR_ARCH) .
+ $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-rh.spec" -czf $(TAR_ARCH) .
$(RPM) --clean -ta $(TAR_ARCH)
if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
#############################################################################
# generic distribution
#############################################################################
-gen-dist:
+gen-dist: dist-check
@$(ECHO) ""
@$(ECHO) "You have run autoconf && autoheader && ./configure right?"
@$(ECHO) ""
MISC_FILES = install-sh config.sub configure.in GNUmakefile.in config.h.in config.guess privoxy*
-tarball-dist:
+tarball-dist: dist-check
$(LN) -s current ../privoxy-$(VERSION)-$(CODE_STATUS)
# add source files
for foo in `find . -name "*.c"`; do \
# developer manual
dok-devel: doc/source/ldpOK.dsl
- rm -rf doc/webserver/developer-manual doc/source/developer-manual
+ rm -f doc/webserver/developer-manual/*.html
+ rm -rf doc/source/developer-manual
mkdir -p doc/text doc/source/developer-manual
- cd doc/source/developer-manual && $(DB) ../developer-manual.sgml && cd .. && mv developer-manual ../webserver
+ 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 -rf tmp.html developer-manual
# user manual
dok-user: doc/source/ldpOK.dsl
- rm -rf doc/webserver/user-manual doc/source/user-manual
+ rm -f doc/webserver/user-manual/*.html
+ rm -rf doc/source/user-manual/
mkdir -p doc/text doc/source/user-manual
- cd doc/source/user-manual && $(DB) ../user-manual.sgml && cd .. && mv user-manual ../webserver
+ cd doc/source/user-manual && $(DB) ../user-manual.sgml && cd .. && cp user-manual/*.html ../webserver/user-manual/
cd doc/source && $(DB) -V nochunks user-manual.sgml > tmp.html && $(WDUMP) tmp.html > ../text/user-manual.txt && rm -rf tmp.html user-manual
# faq
dok-faq: doc/source/ldpOK.dsl
- rm -rf doc/webserver/faq doc/source/faq
+ rm -f doc/webserver/faq/*.html
+ rm -rf doc/source/faq
mkdir -p doc/text doc/source/faq
- cd doc/source/faq && $(DB) ../faq.sgml && cd .. && mv faq ../webserver
+ 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 -rf tmp.html faq
# man page
dok-man: doc/source/ldpOK.dsl
- rm -rf doc/man doc/webserver/man-page
- mkdir -p doc/man -p doc/webserver/man-page
+ rm -f doc/man/* doc/webserver/man-page/*.html
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
cd doc/source && $(DB) -V nochunks readme.sgml > tmp.html &&\
$(WDUMP) tmp.html > ../../README && rm -rf tmp.html
-dok: dok-devel dok-user dok-faq dok-man dok-readme
+# webserver files
+dok-webserver: doc/source/ldpOK.dsl
+ cd doc/source/webserver && $(DB) -V nochunks index.sgml > ../../webserver/index.html
+ $(PERL) -pi -e 's/..\/p_doc.css/p_web.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="MSSmartTagsPreventParsing" content="TRUE"><\/HEAD/'\
+ doc/webserver/index.html
+
+# Removed dok-man 04/08/02, hal. Added authors and dok-release. And
+# dok-webserver!
+dok: dok-release dok-devel dok-user dok-faq dok-readme dok-webserver authors
# kludge to force recreation on next run. Rodgrigo?
@rm -f doc/source/ldpOK.dsl
@$(ECHO) Documentation created.
#
-# an alternative to the above dok
-#
-redhat-dok: doc/source/ldpOK.dsl man2html
- mkdir -p doc/text doc/man doc/source/user-manual \
- doc/source/developer-manual doc/source/faq
-## user manual
- rm -rf doc/webserver/user-manual
- cd doc/source/user-manual && $(DB) ../user-manual.sgml && cd .. &&\
- mv user-manual ../webserver
- cd doc/source && $(DB) -V nochunks user-manual.sgml > tmp.html && \
- $(WDUMP) tmp.html > ../text/user-manual.txt && rm -rf tmp.html \
- user-manual
-## developer manual
- rm -rf doc/webserver/developer-manual
- cd doc/source/developer-manual && $(DB) ../developer-manual.sgml &&\
- cd .. && mv developer-manual ../webserver
- cd doc/source && $(DB) -V nochunks developer-manual.sgml > tmp.html && \
- $(WDUMP) tmp.html > ../text/developer-manual.txt && rm -rf tmp.html \
- developer-manual
-## faq
- rm -rf doc/webserver/faq
- cd doc/source/faq && $(DB) ../faq.sgml && cd .. && mv faq ../webserver
- cd doc/source && $(DB) -V nochunks faq.sgml > tmp.html && $(WDUMP) \
- tmp.html > ../text/faq.txt && rm -rf tmp.html faq
-## readme
- $(MAKE) redhat-readme
+# 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 authors
# kludge to force recreation on next run. Rodgrigo?
@rm -f doc/source/ldpOK.dsl
+ @$(ECHO) Documentation created.
# For those with man2html ala RH7's.
man2html:
# kludge to force recreation on next run. Rodgrigo?
@rm -f doc/source/ldpOK.dsl
-#### WIP targets HB ##################
## Make AUTHORS file
authors: doc/source/ldpOK.dsl
cd doc/source && $(DB) -V nochunks authors.sgml > tmp.html && $(WDUMP) \
@rm -f doc/source/ldpOK.dsl
# make a man page, and then (lousy) HTML version.
+# Requires docbook2man (short perl script), see CVS
+# http://sources.redhat.com/docbook-tools/. Also requires openjade and SGMLSpm
+# perl module. This target is not invoked from other dok targets. It is
+# built separately due to dependencies on perl scripts.
man: doc/source/ldpOK.dsl
mkdir -p doc/source/man
cd doc/source/man && docbook2man ../privoxy-man-page.sgml &&\
- $(PERL) -pi -e 's/ <URL:.*>//; s/\[ /\[/g' privoxy.1
+ perl -pi -e 's/ <URL:.*>//; s/\[ /\[/g' privoxy.1
cd doc/source/man && $(DB) ../privoxy-man-page.sgml &&\
mv -f index.html privoxy-man-page.html
- # kludge to force recreation on next run. Rodgrigo?
- @rm -f doc/source/ldpOK.dsl
-
-# Set doc entities for VERSION and CODE_STATUS. Toggle content
-# exceptions accordingly. When 'make dok' gets stable, this
-# needs to go before any doc building (doh).
+ # This html is not used. See make man2html.
+ mv -f doc/source/man/privoxy.1 privoxy.1
+ $(MAKE) man2html
+ # kludge to force recreation on next run. Rodgrigo?
+ @rm -fr doc/source/ldpOK.dsl doc/source/man
+
+# Set doc entities for VERSION and CODE_STATUS in sgml docs. Toggle content
+# exceptions accordingly. This needs to go before any doc building (doh).
make dok-release:
@$(ECHO) Setting doc version and status to $(VERSION), $(CODE_STATUS)
@$(PERL) -pi -e 's/<!entity +p-version.*>/<!entity p-version "$(VERSION)">/;\
s/<!entity +p-status.*>/<!entity p-status "$(CODE_STATUS)">/' \
- doc/source/*sgml
+ doc/source/*sgml doc/source/*/*sgml
ifeq ($(CODE_STATUS),stable)
@$(ECHO) Setting docs to stable $(VERSION)
@$(PERL) -pi -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 doc/source/*/*sgml
else
@$(ECHO) Setting docs to not stable $(VERSION)
@$(PERL) -pi -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 doc/source/*/*sgml
endif
#############################################################################
@$(ECHO) Uploading
@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 xv'
+ $(TAR) c $$upload | ssh ijbswa.sourceforge.net 'cd /home/groups/i/ij/ijbswa/htdocs/; tar xvm 2>&1 | grep -v timestamp'
@$(ECHO) Fixing permissions
- @ssh ijbswa.sourceforge.net 'find /home/groups/i/ij/ijbswa/htdocs/* -type d | xargs chmod 775 2>/dev/null'
- @ssh ijbswa.sourceforge.net 'find /home/groups/i/ij/ijbswa/htdocs/* -type f | xargs chmod 664 2>/dev/null'
+ @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'
+
web-actions: tidy
@$(ECHO) Uploading
@cd doc/webserver/actions; \
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/actions; tar xv'
+ $(TAR) c $$upload | ssh ijbswa.sourceforge.net 'cd /home/groups/i/ij/ijbswa/htdocs/actions; tar xvm'
@$(ECHO) Fixing permissions
- @ssh ijbswa.sourceforge.net 'find /home/groups/i/ij/ijbswa/htdocs/actions/* -type f | xargs chmod 664 2>/dev/null'
+ @ssh ijbswa.sourceforge.net 'find /home/groups/i/ij/ijbswa/htdocs/actions/ -type f | xargs chmod 664 2>/dev/null'
+ @ssh ijbswa.sourceforge.net 'chmod 666 /home/groups/i/ij/ijbswa/htdocs/actions/results/actions-feedback.txt 2>/dev/null'
#############################################################################
# Source file dependencies
$(RM) a.out $(OBJS) $(W32_FILES) $(W32_INIS) $(PROGRAM) `find . -name TAGS -o -name tags`
tidy:
- $(RM) `find . -name "*~" -o -name "#*#"`
+ $(RM) `find . -name "*~"`
+# $(RM) `find . -name "#*#"` # what is this for??
+ $(RM) `find . -name ".\#*"`
clobber: tidy
$(RM) GNUmakefile configure config.h.in config.h config.cache config.status config.log logfile privoxy.log core *.tar.gz *.tar
$(STRIP_PROG) $(PROGRAM)
$(INSTALL) $(INSTALL_D) $(SBIN_DEST)
$(INSTALL) $(INSTALL_D) $(DEST)/user-manual
- $(INSTALL) $(INSTALL_D) $(DEST)/templates
- $(INSTALL) $(INSTALL_D) $(CONFDEST)
+ $(INSTALL) $(INSTALL_D) $(CONFDEST)/templates
+ $(INSTALL) $(INSTALL_D) $(DEST)/$(DOK_WEB_USEM)
$(INSTALL) $(INSTALL_P) $(PROGRAM) $(SBIN_DEST)
- if [ -d "doc/webserver/user-manual" ]; then $(INSTALL) $(INSTALL_T) doc/webserver/user-manual $(DEST); fi
- $(INSTALL) $(INSTALL_T) templates/[a-z]* $(DEST)/templates
+ if [ -d "$(DOK_WEB_USEM)" ]; then $(INSTALL) $(INSTALL_T) $(DOK_WEB_USEM)/[a-z]* $(DEST)/$(DOK_WEB_USEM); fi
+ $(INSTALL) $(INSTALL_T) templates/[a-z]* $(CONFDEST)/templates
$(INSTALL) $(INSTALL_T) config default.action default.filter trust $(CONFDEST)
# FIXME $(ECHO) privoxy.logrotate privoxy.monthly privoxy.weekly
# FIXME: Need new manual! $(GZIP_PROG) -c privoxy.1 > $(MAN_DEST)/privoxy.1.gz
## end:
# $Log: GNUmakefile.in,v $
+# Revision 1.78 2002/04/09 13:37:11 sarantis
+# fix tar options typo
+#
+# Revision 1.77 2002/04/09 13:28:53 swa
+# build suse and gen-dist with html docs
+#
+# Revision 1.76 2002/04/08 22:43:41 oes
+# Fix: Include dotfiles in fixing webserver permissions
+#
+# Revision 1.75 2002/04/08 22:14:59 oes
+# Silencing tar warnings in the web* targets
+#
+# Revision 1.74 2002/04/08 15:22:44 hal9
+# This has finishing touches for dok building. Should be ready to go.
+# -The main doc build is now 'make dok', should work on Redhat too.
+# -Removed man page from main doc build. It is built separately due to
+# perl scripts that most aren't likely to have.
+#
+# Revision 1.73 2002/04/08 14:03:24 oes
+# oes for al: Fix install target
+#
+# Revision 1.72 2002/04/08 13:42:11 oes
+# Added safety check to *-dist targets; fixed permissions for feedback logfile
+#
+# Revision 1.71 2002/04/07 20:32:03 hal9
+# -Add meta data kludge for make dok-webserver via $(PERL).
+# -Add subdirs for 'make dok-release'.
+#
+# Revision 1.70 2002/04/07 08:59:40 swa
+# generated files. do NOT edit.
+# fixed directory bug in makefile.
+#
+# Revision 1.69 2002/04/07 08:10:47 swa
+# create some of the webserver docs
+# automatically (in particular if
+# those docs recycle other documentation
+# fragments). Now committed webserver's
+# index file.
+#
+# Revision 1.68 2002/04/07 07:58:11 swa
+# create some of the webserver docs
+# automatically (in particular if
+# those docs recycle other documentation
+# fragments)
+#
+# Revision 1.67 2002/04/07 05:31:42 hal9
+# Add 'dok-release' target:
+# -Set doc entities to VERSION and CODE_STATUS during make.
+# -Set doc conditional content flags (stable vs non-stable).
+# A separate target for the time being but needs to be incorporated into
+# dok build at some point.
+# -Filter out a spurious ^G from new man page > html converion in man2html.
+#
# Revision 1.66 2002/04/06 20:28:21 jongfoster
# Prettifying groff2html.
# Using GNU Make's conditional makefile feature rather than shell "if"s.