X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=GNUmakefile.in;h=91468d0b464e9b7960ac143a0089ae3cc3a06453;hb=dbe412cddd49ee8c2398fc7ca2649b69b47af450;hp=af641f7378ebce7f7acf7499e34bb416a6117bf5;hpb=c013b6371dc1e3b327e9bd7a2b1f27f05c29b2bc;p=privoxy.git
diff --git a/GNUmakefile.in b/GNUmakefile.in
index af641f73..91468d0b 100644
--- a/GNUmakefile.in
+++ b/GNUmakefile.in
@@ -1,6 +1,6 @@
# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.54 2002/04/03 14:54:07 oes Exp $
+# $Id: GNUmakefile.in,v 1.101 2002/05/15 12:28:46 oes Exp $
#
# Written by and Copyright (C) 2001 the SourceForge
# Privoxy team. http://www.privoxy.org/
@@ -42,9 +42,7 @@ VERSION_MINOR = @VERSION_MINOR@
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@
#############################################################################
@@ -55,7 +53,7 @@ DEST = @prefix@
CONFDEST = @prefix@@sysconfdir@
SBIN_DEST = @prefix@@sbindir@
MAN_DEST = @prefix@@mandir@
-
+DOK_WEB_USEM=doc/webserver/user-manual
#############################################################################
# Build tools
@@ -80,13 +78,17 @@ MV = mv
TAR = tar
LN = ln
WDUMP = @WDUMP@ -dump
+JADECAT = @JADECAT@
JADEBIN = @JADEBIN@
-DB = $(JADEBIN) -t sgml -ihtml -D.. -d ldpOK.dsl\#html
+DB = $(JADEBIN) $(JADECAT) -ihtml -t sgml -D.. -d ldp.dsl\#html
DB2HTML = @DB2HTML@
-DKPREFIX = @DKPREFIX@
MAN2HTML = @MAN2HTML@
G2H_CMD = groff -mandoc -Thtml
TARGET_OS = @host@
+PERL = perl
+DOC_DIR = doc/source
+DOC_TMP = $(DOC_DIR)/tmp
+
#User Group paras
USER = @USER@
@@ -99,7 +101,7 @@ GROUP = @GROUP@
# - Jon
#DOSFILTER = $(SED) -e $$'s,$$,\r,'
#DOSFILTER = gawk -v ORS='\r\n' '{print $0;}'
-DOSFILTER = perl -p -e 's/\n/\r\n/'
+DOSFILTER = $(PERL) -p -e 's/\n/\r\n/'
#############################################################################
# Setup for make distribution rh and suse for now
@@ -121,7 +123,10 @@ CONFIG_FILES = config trust \
`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
@@ -150,12 +155,9 @@ PCRE_SRC = @STATIC_PCRE_ONLY@pcre/get.c pcre/maketables.c pcre/study.c pcre/
PCRE_OBJS = @STATIC_PCRE_ONLY@$(PCRE_SRC:.c=.@OBJEXT@)
PCRE_HDRS = @STATIC_PCRE_ONLY@pcre/config.h pcre/chartables.c pcre/internal.h pcre/pcre.h
-# No REGEX (Either because dynamically linked pcreposix, or no regex at all):
+# No REGEX (maybe because dynamically linked pcreposix):
REGEX_SRC =
-# GNU REGEX:
-@GNU_REGEX_ONLY@REGEX_SRC = gnu_regex.c
-# PCRE REGEX:
-@PCRE_REGEX_ONLY@@STATIC_PCRE_ONLY@REGEX_SRC = pcre/pcreposix.c
+@STATIC_PCRE_ONLY@REGEX_SRC = pcre/pcreposix.c
REGEX_OBJS = $(REGEX_SRC:.c=.@OBJEXT@)
REGEX_HDRS = $(REGEX_SRC:.c=.h)
@@ -208,7 +210,7 @@ all: $(PROGRAM)
#############################################################################
.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
+install conectiva-spec conectiva-dist conectiva-upload
#############################################################################
@@ -242,10 +244,35 @@ trust.txt: trust
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 "really want to proceed: "; \
+ 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."; \
@@ -255,26 +282,59 @@ rpm-stuff: clean clobber
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) .
+ $(RPM) --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
- 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 "CVS" --exclude "privoxy-suse.spec" -czf $(TAR_ARCH) .
+ $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-suse.spec" --exclude "privoxy-cl.spec" --exclude "PACKAGERS" -czf $(TAR_ARCH) .
$(RPM) --clean -ta $(TAR_ARCH)
if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); 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
@@ -289,22 +349,22 @@ redhat-upload:
# 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 "CVS" --exclude "privoxy-rh.spec" -czf $(TAR_ARCH) .
+# 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) .
$(RPM) --clean -ta $(TAR_ARCH)
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
@@ -316,29 +376,29 @@ suse-upload:
# handle with care. use with root.
suse-clean:
- rpm -e junkbuster-suse || true
- rm -rf /etc/junkbuster
- rm -rf /etc/rc.d/junkbuster*
- rm -rf /var/run/junkbuster.pid
- rm -rf /var/log/junkbuster
- rm -f /etc/init.d/junkbuster
- rm -f /usr/sbin/junkbuster
- rm -f /usr/sbin/rcjunkbuster
- rm -f /usr/share/man/man1/junkbuster.1.gz
- rpm -e privoxy-suse || true
- rm -rf /etc/privoxy
- rm -rf /etc/rc.d/privoxy*
- rm -rf /var/run/privoxy.pid
- rm -rf /var/log/privoxy
- rm -f /etc/init.d/privoxy
- rm -f /usr/sbin/privoxy
- rm -f /usr/sbin/rcprivoxy
- rm -f /usr/share/man/man1/privoxy.1.gz
+ $(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-dist:
+gen-dist: dist-check
@$(ECHO) ""
@$(ECHO) "You have run autoconf && autoheader && ./configure right?"
@$(ECHO) ""
@@ -346,14 +406,14 @@ gen-dist:
$(STRIP_PROG) $(PROGRAM)
$(LN) -s current ../privoxy-$(VERSION)-$(CODE_STATUS)
# add program
- (cd .. && $(TAR) -cvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$(PROGRAM))
+ (cd .. && $(TAR) -cvhf --exclude "PACKAGERS" privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$(PROGRAM))
# 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;) \
+ (cd .. && $(TAR) -uvhf --exclude "PACKAGERS" privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
done;
# add documentation
for foo in $(DOC_FILES); do \
- (cd .. && $(TAR) -uvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
+ (cd .. && $(TAR) -uvhf --exclude "PACKAGERS" privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
done;
# and zip the archive
$(RM) ../privoxy-$(VERSION)-$(CODE_STATUS)
@@ -437,44 +497,35 @@ win-dist:
#############################################################################
-# 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
#############################################################################
-tarball-dist: clean clobber
+
+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-$(TARGET_OS)-$(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-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
-# add misc files
- for foo in configure.in GNUMakefile.in ; do \
- (cd .. && $(TAR) -uvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo;) \
- done;
-# add documentation
- for foo in $(DOC_FILES); do \
- (cd .. && $(TAR) -uvhf privoxy-$(TARGET_OS)-$(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" -o -name "PACKAGERS" \)`; 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)
- $(GZIP_PROG) ../privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar
+ $(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
#############################################################################
#
@@ -484,94 +535,155 @@ tarball-clean:
#
#############################################################################
-# our style file
-doc/source/ldpOK.dsl:
- if [ "$(DKPREFIX)" != "none" ]; then \
- sed -e "s@/usr/share/sgml/docbook/dsssl-stylesheets@$(DKPREFIX)@g" doc/source/ldp.dsl > doc/source/ldpOK.dsl; \
- else \
- cp doc/source/ldp.dsl doc/source/ldpOK.dsl; \
- fi
-
-# Otherwise we get plain groff conversion.
-groff2html:
- $(G2H_CMD) ./privoxy.1 > doc/webserver/man-page/privoxy-man-page.html
-
-## developer manual
-dok-devel: doc/source/ldpOK.dsl
- mkdir -p doc/text
- rm -rf doc/webserver/developer-manual
- cd doc/source && $(DB2HTML) -s ldpOK.dsl developer-manual.sgml && mv developer-manual ../webserver
- cd doc/source && $(DB2HTML) -s ldpOK.dsl --nochunks developer-manual.sgml > tmp.html && lynx -dump tmp.html > ../text/developer-manual.txt && rm -rf tmp.html developer-manual
-
-## user manual
-dok-user: doc/source/ldpOK.dsl
- mkdir -p doc/text
- rm -rf doc/webserver/user-manual
- cd doc/source && $(DB2HTML) -s ldpOK.dsl user-manual.sgml && mv user-manual ../webserver
- cd doc/source && $(DB2HTML) -s ldpOK.dsl --nochunks user-manual.sgml > tmp.html && lynx -dump tmp.html > ../text/user-manual.txt && rm -rf tmp.html user-manual
-
-## faq
-dok-faq: doc/source/ldpOK.dsl
- mkdir -p doc/text
- rm -rf doc/webserver/faq
- cd doc/source && $(DB2HTML) -s ldpOK.dsl faq.sgml && mv faq ../webserver
- cd doc/source && $(DB2HTML) -s ldpOK.dsl --nochunks faq.sgml > tmp.html && lynx -dump tmp.html > ../text/faq.txt && rm -rf tmp.html faq
-
-## man page
-dok-man: doc/source/ldpOK.dsl
- mkdir -p doc/man
- mkdir -p doc/webserver/man-page
- if [ "$(MAN2HTML)" != "false" ]; then \
- $(ECHO) "
Privoxy|Doc/Man pageNAME
" > doc/webserver/man-page/privoxy-man-page.html; \
- man ./privoxy.1 | $(MAN2HTML) -bare \
- >> doc/webserver/man-page/privoxy-man-page.html; \
- $(ECHO) "" >> doc/webserver/man-page/privoxy-man-page.html; \
- else \
- $(MAKE) groff2html; \
- fi
-
-dok: dok-devel dok-user dok-faq dok-man
-## kludge to force recreation on next run. Rodgrigo?
- @rm -f doc/source/ldpOK.dsl
+# developer manual
+dok-devel:
+ $(RM) doc/webserver/developer-manual/*.html
+ $(RM) -r doc/source/developer-manual
+ mkdir -p doc/text 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 && $(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
+ 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) -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
+ 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) -r tmp.html faq
+
+# man page
+dok-man:
+ $(RM) doc/man/* doc/webserver/man-page/*.html
+ifneq ($(MAN2HTML),false)
+ $(ECHO) "Privoxy Man pageNAME
" > doc/webserver/man-page/privoxy-man-page.html
+ man ./privoxy.1 | $(MAN2HTML) -bare >> doc/webserver/man-page/privoxy-man-page.html
+ $(ECHO) "" >> doc/webserver/man-page/privoxy-man-page.html
+else
+ $(MAKE) groff2html
+endif
+
+# readme page
+dok-readme:
+ cd doc/source && $(DB) -V nochunks readme.sgml > tmp.html &&\
+ $(WDUMP) tmp.html > ../../README && $(RM) -r tmp.html
+
+# webserver files
+dok-webserver:
+ cd doc/source/webserver && $(DB) -V nochunks index.sgml > ../../webserver/index.html
+ $(PERL) -pi.bak -e 's/..\/p_doc.css/p_web.css/;\
+ s/<\/HEAD/\n<\/HEAD/;\
+ s/<\/HEAD/\n<\/HEAD/;\
+ s/\.\d\. //'\
+ doc/webserver/index.html && $(RM) doc/source/webserver/*.bak
+
+# Main documentation target.
+dok: dok-release dok-devel dok-user dok-faq dok-readme dok-webserver dok-authors
@$(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
-# kludge to force recreation on next run. Rodgrigo?
- @rm -f doc/source/ldpOK.dsl
+# 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.
# For those with man2html ala RH7's.
man2html:
mkdir -p doc/webserver/man-page
- if [ "$(MAN2HTML)" != "false" ]; then \
- $(MAN2HTML) privoxy.1 |grep -v "^Content-type" > doc/webserver/man-page/privoxy-man-page.html; \
- perl -pi -e 's///; s//man2html/' doc/webserver/man-page/privoxy-man-page.html; \
- else \
- $(MAKE) groff2html; \
- fi
+ifneq ($(MAN2HTML),false)
+ $(MAN2HTML) privoxy.1 |grep -v "^Content-type" > tmp.html
+ $(PERL) -pi.bak -e 's///; s//man2html/' tmp.html
+ $(PERL) -pi.bak -e 's/(<\/HEAD>)/<\/HEAD>/' tmp.html
+# Get rid of spurious from conversion. (How to do this with perl?)
+ $(SED) -e 's///g' tmp.html > doc/webserver/man-page/privoxy-man-page.html && $(RM) tmp.*
+else
+ $(MAKE) groff2html
+endif
+
+# Otherwise we get plain groff conversion.
+groff2html:
+ $(G2H_CMD) ./privoxy.1 | $(SED) -e 's@@@' > doc/webserver/man-page/privoxy-man-page.html
+
+## Make README
+redhat-readme:
+ cd doc/source && $(DB) -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 && $(WDUMP) \
+ tmp.html > ../../AUTHORS && $(RM) tmp.html
+
+# make a man page, and then (lousy) HTML version.
+# 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:
+ mkdir -p doc/source/man
+ cd doc/source/man && docbook2man ../privoxy-man-page.sgml &&\
+ perl -pi.bak -e 's/ //; 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.
+ mv -f doc/source/man/privoxy.1 privoxy.1
+ $(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).
+dok-release:
+ @$(ECHO) Setting doc version and status to $(VERSION), $(CODE_STATUS)
+ @$(PERL) -pi.bak -e 's///;\
+ s///' \
+ doc/source/*sgml doc/source/*/*sgml
+ $(RM) -r doc/source/*bak doc/source/*/*bak
+ifeq ($(CODE_STATUS),stable)
+ @$(ECHO) Setting docs to stable $(VERSION)
+ @$(PERL) -pi.bak -e 's///;\
+ s///' \
+ doc/source/*sgml doc/source/*/*sgml
+ $(RM) -r doc/source/*bak doc/source/*/*bak
+else
+ @$(ECHO) Setting docs to not stable $(VERSION)
+ @$(PERL) -pi.bak -e 's///;\
+ s///' \
+ doc/source/*sgml doc/source/*/*sgml
+ $(RM) -r doc/source/*bak doc/source/*/*bak
+endif
+
+dok-pdf: dok-release
+ $(RM) doc/pdf/*.pdf
+ cp -f doc/source/*.sgml doc/pdf
+ cp -f doc/source/*.dsl doc/pdf
+ cd doc/pdf && db2pdf --pdf -s ldp.dsl user-manual.sgml && mv user-manual.pdf privoxy-user-manual.pdf > /dev/null 2>&1
+ cd doc/pdf && db2pdf --pdf -s ldp.dsl developer-manual.sgml && mv developer-manual.pdf privoxy-developer-manual.pdf > /dev/null 2>&1
+ cd doc/pdf && db2pdf --pdf -s ldp.dsl faq.sgml && mv faq.pdf privoxy-faq.pdf > /dev/null 2>&1
+ $(RM) doc/pdf/*.sgml doc/pdf/*.dsl doc/pdf/*.out doc/pdf/*.tex doc/pdf/*.log doc/pdf/*.aux
+
+# the layout and style with db2pdf sucks, here is an alternative
+dok-pdf2: dok-release
+ mkdir -p doc/source/temp # this directory not in cvs
+ cd doc/source && $(DB) -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.
+
+# 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
+ mkdir -p $(DOC_TMP)
+ cd $(DOC_TMP) && cp -f ../announce.sgml . && $(DB) -iannounce-big announce.sgml &&\
+ mv -f index.html announce.html && $(WDUMP) announce.html > announce.txt
+ cd $(DOC_TMP) && $(DB) announce.sgml &&\
+ mv -f index.html announce-mini.html && $(WDUMP) announce-mini.html > announce-mini.txt &&\
+ mv -f *html *txt ../../..
+ rm -fr $(DOC_TMP)
#############################################################################
#
@@ -580,21 +692,33 @@ man2html:
# moves dokumentation to webserver
#
#############################################################################
-webserver:
+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) -------------------------------------------------------
- cd doc/webserver && scp -Cr . ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
- @$(ECHO) Fixing permissions
- @ssh ijbswa.sourceforge.net chmod -R g+rw /home/groups/i/ij/ijbswa/htdocs/ 2> /dev/null
-webquick:
- cd doc/webserver/actions && scp -Cr . ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/actions
+ @$(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 2>&1 | grep -v timestamp'
+
@$(ECHO) Fixing permissions
- @ssh ijbswa.sourceforge.net chmod -R g+rw /home/groups/i/ij/ijbswa/htdocs/actions 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 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 'chmod 666 /home/groups/i/ij/ijbswa/htdocs/actions/results/actions-feedback.txt 2>/dev/null'
#############################################################################
# Source file dependencies
@@ -661,10 +785,17 @@ $(PROGRAM): $(OBJS) $(W32_FILES)
$(LD) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
clean:
- $(RM) a.out $(OBJS) $(W32_FILES) $(W32_INIS) $(PROGRAM) `find . -iname TAGS`
+ $(RM) a.out $(OBJS) $(W32_FILES) $(W32_INIS) $(PROGRAM) `find . -name TAGS -o -name tags`
+
+tidy:
+ $(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 privoxy-cl.spec doc/source/ldp.dsl
-clobber:
- $(RM) GNUmakefile configure config.h.in config.h config.cache config.status config.log logfile privoxy.log core *~ *.tar.gz *.tar \#*\#
#
# FIXME: What is all this?
#
@@ -684,16 +815,22 @@ install: all
$(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
$(INSTALL) $(INSTALL_P) privoxy.init /etc/init.d/privoxy
+coffee:
+ @perl -e 'print pack "C*", (31,139,8,8,153,63,226,60,2,3,99,111,102,102,101,101,0,109,143,205,13,192,32,8,133,\
+ 239,78,241,110,234,1,28,160,171,152,208,53,26,117,247,22,165,73,137,125,9,1,62,126,2,128,169,5,243,143,\
+ 13,139,49,164,65,100,149,152,102,73,141,88,73,178,116,205,100,69,253,36,102,81,49,83,236,19,225,171,131,\
+ 214,172,163,73,4,168,123,115,71,126,247,122,94,128,178,227,95,154,12,86,215,122,197,249,146,187,54,220,125,\
+ 193,51,228,11,1,0,0);'|zcat
#############################################################################
@@ -702,6 +839,187 @@ install: all
## end:
# $Log: GNUmakefile.in,v $
+# Revision 1.101 2002/05/15 12:28:46 oes
+# Trying to keep Hal happy :)
+#
+# Revision 1.100 2002/05/08 13:48:18 hal9
+# Ooops, that trashed JB v2.0.2 comment. Fixed.
+#
+# Revision 1.99 2002/05/08 13:42:07 hal9
+# This fixes the numbering problem on index.html in contact info section (.1.). Using
+# perl, since its way too convoluted to try to fix proper with docbook.
+#
+# Revision 1.98 2002/05/03 14:33:06 oes
+# Replaced ldp(OK).dsl handling with generation via autoconf; handle all file exeptions to src tarball via find
+#
+# Revision 1.97 2002/04/27 20:27:43 swa
+# no longer needed due to new
+# PACKAGE_VERSION process
+#
+# Revision 1.96 2002/04/27 17:44:32 morcego
+# - Correcting typo in my name (Rodrigo, not Rodgrigo) :-)
+# - Using the RM macro everywhere rm is called (either we use, or don't)
+# - Same for RPM
+#
+# Revision 1.95 2002/04/27 15:37:25 swa
+# replacing directory in document creation process
+# no longer necessary.
+#
+# Revision 1.94 2002/04/27 08:23:29 swa
+# pdf process reviewed and cleaned up
+#
+# Revision 1.93 2002/04/27 04:55:53 morcego
+# privoxy-cl.spec now gets removed by clobber target
+#
+# Revision 1.92 2002/04/27 04:53:40 morcego
+# Adding --exclude "PACKAGERS" to every tar command that applies (not for
+# webserver target)
+#
+# Revision 1.91 2002/04/27 04:44:51 morcego
+# GNUmakefile.in: The tarball created on redhat-dist and suse-dist now ignore
+# the PACKAGERS file, as well privoxy-cl.spec (in case it was created)
+# GNUmakefile.in: New targets -> conectiva-spec, conectiva-dist and
+# conectiva-upload
+# genclspec.sh : New file to generate, from privoxy-rh.spec, a specfile
+# for Conectiva Linux
+#
+# Revision 1.90 2002/04/26 17:46:53 swa
+# be consistent
+#
+# Revision 1.89 2002/04/26 17:20:54 swa
+# just produce single html files to proces them later with Destiller or somesuch. looks prettier.
+#
+# Revision 1.88 2002/04/25 19:13:57 morcego
+# Removed RPM release number declaration on configure.in
+# Changed makefile to use given value for RPM_PACKAGEV when on uploading
+# targets (will produce an error, explaining who to do it, if no value
+# if provided).
+#
+# 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
+#
+# 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.
+# (The shell "if"s were hiding errors)
+# "perl" -> "$(PERL)"
+# Spaces->tabs in a couple of places.
+#
+# Revision 1.65 2002/04/06 05:16:39 hal9
+# -Add 'authors' and 'man' targets for AUTHORS and man-page (WIP).
+# -Both of these will soon be generated files.
+#
+# Revision 1.64 2002/04/04 22:14:51 oes
+# No longer rely on find honoring -iname
+#
+# Revision 1.63 2002/04/04 21:06:22 swa
+# cosmetics.
+#
+# Revision 1.62 2002/04/04 20:49:50 swa
+# attempt to consolidate the
+# different dokbook versions.
+#
+# Revision 1.61 2002/04/04 19:18:21 swa
+# readme was leftover directory. use w3m instead
+# of lynx to be consistent among developers. use
+# consistent target naming.
+#
+# Revision 1.60 2002/04/04 12:25:41 oes
+# Tidy webserver upload w/o *~ files, CVS dirs and logfiles and with proper dir and file permissions
+#
+# Revision 1.59 2002/04/04 08:32:45 swa
+# wrong name for tarball-dist target. further fixed content of tarball dist
+#
+# Revision 1.58 2002/04/04 06:32:58 hal9
+# New dok targets for make readme.
+#
+# Revision 1.57 2002/04/04 00:36:36 gliptak
+# always use pcre for matching
+#
+# Revision 1.56 2002/04/03 22:28:03 gliptak
+# Removed references to gnu_regex
+#
+# Revision 1.55 2002/04/03 19:54:29 swa
+# freebsd tested to work. attempt to move tarball dist target forward
+#
# Revision 1.54 2002/04/03 14:54:07 oes
# Standard clean and clobber semantics II
#