# Note: Makefile is built automatically from Makefile.in
#
-# $Id: GNUmakefile.in,v 1.30 2002/03/25 12:52:25 swa Exp $
+# $Id: GNUmakefile.in,v 1.40 2002/03/28 04:22:44 hal9 Exp $
#
# Written by and Copyright (C) 2001 the SourceForge
-# Privoxy team. http://ijbswa.sourceforge.net
+# Privoxy team. http://www.privoxy.org/
#
# Based on the Internet Junkbuster originally written
# by and Copyright (C) 1997 Anonymous Coders and
# Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
+#############################################################################
+# Set make command correctly
+#############################################################################
+@SET_MAKE@
+
#############################################################################
# Version number (for RPM)
#############################################################################
DB = $(JADEBIN) -t sgml -ihtml -D.. -d ldpOK.dsl\#html
DB2HTML = @DB2HTML@
DKPREFIX = @DKPREFIX@
+MAN2HTML = @MAN2HTML@
+G2H_CMD = groff -mandoc -Thtml
+TARGET_OS = @host@
# Program to do LF->CRLF
#
C_OBJS = $(C_SRC:.c=.@OBJEXT@)
C_HDRS = $(C_SRC:.c=.h) project.h actionlist.h
+CONFIG_FILES = config trust \
+ default.action \
+ basic.action intermediate.action advanced.action \
+ default.filter \
+ templates/*
+
+DOC_FILES = AUTHORS LICENSE README ChangeLog doc/text/* privoxy.1
+
W32_SRC = @WIN_ONLY@w32log.c w32taskbar.c win32.c
W32_FILES = @WIN_ONLY@w32.res
W32_OBJS = @WIN_ONLY@$(W32_SRC:.c=.@OBJEXT@) $(W32_FILES)
# w3m http://sourceforge.net/project/admin/editpackages.php?group_id=11118
#############################################################################
-# sun solaris distribution
+# generic distribution
#############################################################################
-solaris-dist:
- @$(ECHO) coming soon.
-solaris-upload:
- @$(ECHO) coming soon.
+
+gen-dist:
+ @$(ECHO) ""
+ @$(ECHO) "You have run autoconf && autoheader && ./configure right?"
+ @$(ECHO) ""
+ $(MAKE) $(PROGRAM)
+ $(STRIP_PROG) $(PROGRAM)
+ $(LN) -s current ../privoxy-$(VERSION)-$(CODE_STATUS)
+# add program
+ $(TAR) -C.. -cvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$(PROGRAM)
+# add config files
+ for foo in $(CONFIG_FILES); do \
+ $(TAR) -C.. --exclude "CVS" --exclude "#*" --exclude ".#*" --exclude ".cvsignore" -uvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo; \
+ done;
+# add documentation
+ for foo in $(DOC_FILES); do \
+ $(TAR) -C.. --exclude "CVS" --exclude "#*" --exclude ".#*" --exclude ".cvsignore" -uvhf privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar privoxy-$(VERSION)-$(CODE_STATUS)/$$foo; \
+ done;
+# and zip the archive
+ $(RM) ../privoxy-$(VERSION)-$(CODE_STATUS)
+ $(GZIP_PROG) privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar
+ @$(ECHO) Distribution with binary created.
+
+# anonymously ncftps the tarball to sourceforge
+gen-upload:
+ ncftpput -u anonymous -p ijbswa-developers@lists.sourceforge.net upload.sourceforge.net /incoming privoxy-$(TARGET_OS)-$(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) -------------------------------------------------------
+
+# use with care
+gen-clean:
+ $(RM) privoxy-$(TARGET_OS)-$(VERSION)-$(CODE_STATUS)-src.tar*
+
+#############################################################################
+# solaris distribution
+#############################################################################
+solaris-dist: gen-dist
+ @$(ECHO) Done.
+# anonymously ncftps the tarball to sourceforge
+solaris-upload: gen-upload
+ @$(ECHO) Done.
+# use with care
+solaris-clean: gen-clean
+ @$(ECHO) Done.
#############################################################################
# hpux distribution
amiga-upload:
@$(ECHO) coming soon.
+#############################################################################
+# freebsd distribution
+#############################################################################
+freebsd-dist:
+ @$(ECHO) coming soon.
+freebsd-upload:
+ @$(ECHO) coming soon.
+
#############################################################################
# suse distribution. works fine. no need to be root.
#############################################################################
if [ -f $(TAR_ARCH) ]; then $(RM) $(TAR_ARCH); fi
TMPFILE=$$(mktemp -q /tmp/$(PROGRAM).XXXXXX); \
- if $(SED) -e 's/^\(Version:\).*/\1 $(RPM_VERSION)/g' \
+ if $(SED) -e 's/^\(Version:\).*/\1 $(RPM_VERSIO)/g' \
-e 's/^\(Release:\).*/\1 $(RPM_PACKAGEV)/g' \
privoxy-suse.spec > $$TMPFILE ; then \
$(MV) -f $$TMPFILE privoxy-suse.spec; \
$(LN) -s current ../privoxy-$(VERSION)-$(CODE_STATUS)
$(TAR) -C.. --exclude "CVS" --exclude "#*" --exclude ".#*" --exclude ".cvsignore" -cvhzf privoxy-$(VERSION)-$(CODE_STATUS)-src.tar.gz privoxy-$(VERSION)-$(CODE_STATUS)
$(RM) ../privoxy-$(VERSION)-$(CODE_STATUS)
- @$(ECHO) Tarball (with any binary) created.
+ @$(ECHO) Tarball (without any binary) created.
# anonymously ncftps the tarball to sourceforge
tarball-upload:
# converts doc/source/*.sgml into html, text and man pages
#
#############################################################################
-dok: doc/source/ldpOK.dsl
+dok: doc/source/ldpOK.dsl man2html-swa
mkdir -p doc/text doc/man
# user manual
rm -rf doc/webserver/user-manual
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
+## kludge to force recreation on next run. Rodgrigo?
+ @rm -f doc/source/ldpOK.dsl
+
+man2html-swa:
+ mkdir -p doc/webserver/man-page
+ if [ "$(MAN2HTML)" != "false" ]; then \
+ $(ECHO) "<html><head><title>Privoxy|Doc/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; \
+ $(ECHO) "</body></html>" >> doc/webserver/man-page/privoxy-man-page.html; \
+ else \
+ $(MAKE) groff2html; \
+ fi
-redhat-dok: doc/source/ldpOK.dsl
+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
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
+
doc/source/ldpOK.dsl:
if [ "$(DKPREFIX)" != "none" ]; then \
cp doc/source/ldp.dsl doc/source/ldpOK.dsl; \
fi
+# 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/<A .*Contents<\/A>//; s/<A .*man2html<\/A>/man2html/' doc/webserver/man-page/privoxy-man-page.html; \
+ else \
+ $(MAKE) groff2html; \
+ fi
+
+# Otherwise we get plain groff conversion.
+groff2html:
+ $(G2H_CMD) ./privoxy.1 > doc/webserver/man-page/privoxy-man-page.html
+
+
#############################################################################
#
# Webserver
$(LD) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS)
clean:
- $(RM) a.out core $(OBJS) $(W32_FILES) $(W32_INIS)
+ $(RM) a.out core $(OBJS) $(W32_FILES) $(W32_INIS) $(PROGRAM) junkbuster
clobber: clean
$(RM) $(PROGRAM) cscope.* logfile *.pdb *.lib *.exp `find . -name tags` `find . -name TAGS` config.status config.h.in config.log junkbuster.log privoxy.log config.cache *~ *.tar.gz configure
## end:
# $Log: GNUmakefile.in,v $
+# Revision 1.40 2002/03/28 04:22:44 hal9
+# More on man2html stuff.
+#
+# Revision 1.39 2002/03/28 01:04:14 hal9
+# More man2html stuff for docs.
+#
+# Revision 1.38 2002/03/27 16:02:30 swa
+# have a generic target
+#
+# Revision 1.37 2002/03/27 15:30:26 swa
+# have a consistent appearance
+#
+# Revision 1.36 2002/03/27 14:58:08 swa
+# can be used by mutilple targets
+#
+# Revision 1.35 2002/03/27 14:53:19 swa
+# added solaris-dist
+#
+# Revision 1.34 2002/03/27 10:30:11 swa
+# we want a html man file on the webserver
+#
+# Revision 1.33 2002/03/27 03:05:35 hal9
+# Added man2html target for docs (redhat-dok only for now)
+#
+# Revision 1.32 2002/03/26 22:29:54 swa
+# we have a new homepage!
+#
+# Revision 1.31 2002/03/26 14:00:18 swa
+# fixed make tarball, tarball-dist, tarball-clean
+#
# Revision 1.30 2002/03/25 12:52:25 swa
# new targets
#