# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.77 2002/04/09 13:28:53 swa Exp $
+# $Id: GNUmakefile.in,v 1.87 2002/04/23 14:10:59 swa Exp $
#
# Written by and Copyright (C) 2001 the SourceForge
# Privoxy team. http://www.privoxy.org/
VERSION_POINT = @VERSION_POINT@
CODE_STATUS = @CODE_STATUS@
VERSION = $(VERSION_MAJOR).$(VERSION_MINOR).$(VERSION_POINT)
-# will automatically be postfixed with -$(RPM_PACKAGEV) in the SPECfile
RPM_VERSION = $(VERSION)
-RPM_PACKAGEV = @VERSION_RPM_PACKAGE@
#############################################################################
WDUMP = @WDUMP@ -dump
JADECAT = @JADECAT@
JADEBIN = @JADEBIN@
-DB = $(JADEBIN) $(JADECAT) -t sgml -ihtml -D.. -d ldpOK.dsl\#html
+DB = $(JADEBIN) $(JADECAT) -ihtml -t sgml -D.. -d ldpOK.dsl\#html
DB2HTML = @DB2HTML@
DKPREFIX = @DKPREFIX@
MAN2HTML = @MAN2HTML@
$(ECHO) "*** ***"; \
$(ECHO) "***************************************************"; \
$(ECHO) "Type \"yes i am sure\" if you are sure that you"; \
- $(ECHO) -n "want to continue: "; \
+ $(ECHO) -n "really want to proceed: "; \
read answer; \
if [ "$$answer" != "yes i am sure" ]; then exit 1; fi \
fi;
# redhat distribution alpha and x86
#############################################################################
redhat-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-rh.spec > $$TMPFILE ; then \
- $(MV) -f $$TMPFILE privoxy-rh.spec; \
- else \
- $(ECHO) "Could not set version info in specfile."; \
- exit 1;\
- fi
$(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
+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 ; \
+ exit 1; \
+ fi
+
# anonymously ncftps the rpms to sourceforge
-redhat-upload:
+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
if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
# anonymously ncftps the rpms to sourceforge
-suse-upload:
+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
#############################################################################
-# Tarball distribution. Only source files. No binaries.
+# Tarball distribution: No CVS dirs, dotfiles, debian build dir,
+# (FIXME:) only parts of the static / generated docs mix in doc/webserver
#############################################################################
-MISC_FILES = install-sh config.sub configure.in GNUmakefile.in config.h.in config.guess privoxy*
-
-tarball-dist: dist-check
+tarball-dist: dist-check clean clobber
$(LN) -s current ../privoxy-$(VERSION)-$(CODE_STATUS)
-# add source files
- for foo in `find . -name "*.c"`; do \
- (cd .. && $(TAR) -uvhf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
-# add header files
- for foo in `find . -name "*.h"`; do \
- (cd .. && $(TAR) -uvhf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
-# add config files
- for foo in $(CONFIG_FILES); do \
- (cd .. && $(TAR) -uvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
-# add misc files
- for foo in $(MISC_FILES); do \
- (cd .. && $(TAR) -uvhf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
-# add documentation
- for foo in $(DOC_FILES); do \
- (cd .. && $(TAR) -uvhf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
+
+ for i in `find . -type f -a -not \( -path "*/CVS*" -o -name ".*" \
+ -o -path "*/debian/*" -o -path "*/actions/*" -o -name "*.php" \)`; do \
+ files="$$files privoxy-$(VERSION)-$(CODE_STATUS)/$$i"; \
+ done && \
+ cd .. && $(TAR) cvhf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar $$files ; \
+
# and zip the archive
- $(RM) ../privoxy-$(VERSION)-$(CODE_STATUS)
+ $(RM) ../privoxy-$(VERSION)-$(CODE_STATUS)
$(GZIP_PROG) ../privoxy-$(VERSION)-$(CODE_STATUS)-src.tar
@$(ECHO) Tarball distribution created.
# anonymously ncftps the tarball to sourceforge
tarball-upload:
- ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming privoxy-$(VERSION)-$(CODE_STATUS)-src.tar.gz
+ 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) ... and release the files.
@$(ECHO) -------------------------------------------------------
-# handle with care
tarball-clean:
- $(RM) privoxy-$(VERSION)-$(CODE_STATUS)-src.tar.gz
+ $(RM) ../privoxy-$(VERSION)-$(CODE_STATUS)-src.tar.gz
#############################################################################
#
# 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/;\
+ $(PERL) -pi.bak -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
+ doc/webserver/index.html && rm -f doc/source/webserver/*.bak
-# Removed dok-man 04/08/02, hal. Added authors and dok-release. And
-# dok-webserver!
+# Main documentation target.
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
mkdir -p doc/webserver/man-page
ifneq ($(MAN2HTML),false)
$(MAN2HTML) privoxy.1 |grep -v "^Content-type" > tmp.html
- $(PERL) -pi -e 's/<A .*Contents<\/A>//; s/<A .*man2html<\/A>/man2html/' tmp.html
- $(PERL) -pi -e 's/(<\/HEAD>)/<LINK REL=\"STYLESHEET\" TYPE=\"text\/css\" HREF=\"..\/p_doc.css\"><\/HEAD>/' tmp.html
-# Get rid of spurious \a from converion. (How to do this with perl?)
- $(SED) -e 's/\a//g' tmp.html > doc/webserver/man-page/privoxy-man-page.html && rm -f 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
+# 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 -f tmp.*
else
$(MAKE) groff2html
endif
@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.
+# Requires docbook2man (short perl script), see comments
+# in privoxy-man-page.sgml. 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.bak -e 's/ <URL:.*>//; s/\[ /\[/g' privoxy.1
cd doc/source/man && $(DB) ../privoxy-man-page.sgml &&\
mv -f index.html privoxy-man-page.html
# This html is not used. See make man2html.
# 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:
+dok-release:
@$(ECHO) Setting doc version and status to $(VERSION), $(CODE_STATUS)
- @$(PERL) -pi -e 's/<!entity +p-version.*>/<!entity p-version "$(VERSION)">/;\
+ @$(PERL) -pi.bak -e 's/<!entity +p-version.*>/<!entity p-version "$(VERSION)">/;\
s/<!entity +p-status.*>/<!entity p-status "$(CODE_STATUS)">/' \
doc/source/*sgml doc/source/*/*sgml
+ rm -fr doc/source/*bak doc/source/*/*bak
ifeq ($(CODE_STATUS),stable)
@$(ECHO) Setting docs to stable $(VERSION)
- @$(PERL) -pi -e 's/<!entity +% +p-stable.*>/<!entity % p-stable "INCLUDE">/;\
+ @$(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 -fr doc/source/*bak doc/source/*/*bak
else
@$(ECHO) Setting docs to not stable $(VERSION)
- @$(PERL) -pi -e 's/<!entity +% +p-stable.*>/<!entity % p-stable "IGNORE">/;\
+ @$(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 -fr doc/source/*bak doc/source/*/*bak
endif
+dok-pdf: doc/source/ldpOK.dsl dok-release
+ cp doc/source/*.sgml doc/pdf
+ cp doc/source/*.dsl doc/pdf
+ cd doc/pdf && db2pdf --pdf -s ldpOK.dsl user-manual.sgml && mv user-manual.pdf privoxy-user-manual.pdf
+ cd doc/pdf && db2pdf --pdf -s ldpOK.dsl developer-manual.sgml && mv developer-manual.pdf privoxy-developer-manual.pdf
+ cd doc/pdf && db2pdf --pdf -s ldpOK.dsl faq.sgml && mv faq.pdf privoxy-faq.pdf
+ rm -f doc/pdf/*.sgml doc/pdf/*.dsl doc/pdf/*.out doc/pdf/*.tex doc/pdf/*.log doc/pdf/*.aux
+
#############################################################################
#
# Webserver
@$(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 xvm'
+ $(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 666 /home/groups/i/ij/ijbswa/htdocs/actions/results/actions-feedback.txt 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
## end:
# $Log: GNUmakefile.in,v $
+# Revision 1.87 2002/04/23 14:10:59 swa
+# now create pdf documents
+#
+# Revision 1.86 2002/04/15 04:30:27 hal9
+# Missed two -pi.bak's on perl/cygwin problem.
+#
+# Revision 1.85 2002/04/14 01:05:34 hal9
+# Revert dok-webserver change for SF logo.
+#
+# Revision 1.84 2002/04/13 22:43:25 hal9
+# -Fix dok-webserver for SF logo (more perl).
+# -Change all perl -pi to perl -pi.bak for Cygwin problem.
+#
+# Revision 1.83 2002/04/12 09:39:25 oes
+# Excluding yet more files from tarball; making dist warning yet more scary
+#
+# Revision 1.82 2002/04/11 21:07:11 oes
+# Excluding more files from tarball build
+#
+# Revision 1.81 2002/04/11 14:40:27 oes
+# Fixed typo -- Thanks, Moritz!
+#
+# Revision 1.80 2002/04/11 12:50:00 oes
+# Fixed tarball-dist target
+#
+# Revision 1.79 2002/04/11 06:49:28 oes
+# webserver target: silenced timestamp warnings resulting from uploading westwards, made permissions fixing independant of screwed local dir permissions, suppress (false alarm) make error if not owner of feedback log
+#
+# 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
#