X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=GNUmakefile.in;h=8feea7b59d86ea5ad8bd670841b63063e40b8464;hb=9d75c45feecceb6d1cabf06bb1e97accc4b091e2;hp=8cbc7757b0d51df72bc5233cd97e7a13b27dccb4;hpb=d59209bed4a1bc99f1f625c92eee1f5852c56677;p=privoxy.git diff --git a/GNUmakefile.in b/GNUmakefile.in index 8cbc7757..8feea7b5 100644 --- a/GNUmakefile.in +++ b/GNUmakefile.in @@ -1,6 +1,6 @@ # Note: Makefile is built automatically from Makefile.in # -# $Id: GNUmakefile.in,v 1.61 2002/04/04 19:18:21 swa Exp $ +# $Id: GNUmakefile.in,v 1.75 2002/04/08 22:14:59 oes Exp $ # # Written by and Copyright (C) 2001 the SourceForge # Privoxy team. http://www.privoxy.org/ @@ -55,7 +55,7 @@ DEST = @prefix@ CONFDEST = @prefix@@sysconfdir@ SBIN_DEST = @prefix@@sbindir@ MAN_DEST = @prefix@@mandir@ - +DOK_WEB_USEM=doc/webserver/user-manual ############################################################################# # Build tools @@ -88,6 +88,7 @@ DKPREFIX = @DKPREFIX@ MAN2HTML = @MAN2HTML@ G2H_CMD = groff -mandoc -Thtml TARGET_OS = @host@ +PERL = perl #User Group paras USER = @USER@ @@ -100,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 @@ -240,10 +241,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 "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."; \ @@ -336,7 +362,7 @@ suse-clean: ############################################################################# # generic distribution ############################################################################# -gen-dist: +gen-dist: dist-check @$(ECHO) "" @$(ECHO) "You have run autoconf && autoheader && ./configure right?" @$(ECHO) "" @@ -440,7 +466,7 @@ win-dist: 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 \ @@ -498,99 +524,134 @@ doc/source/ldpOK.dsl: # Otherwise we get plain groff conversion. groff2html: - $(G2H_CMD) ./privoxy.1 > doc/webserver/man-page/privoxy-man-page.html + $(G2H_CMD) ./privoxy.1 | $(SED) -e 's@@@' > doc/webserver/man-page/privoxy-man-page.html # 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 - if [ "$(MAN2HTML)" != "false" ]; then \ - $(ECHO) "Privoxy|Doc/Man page

NAME

" > 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 + rm -f doc/man/* doc/webserver/man-page/*.html +ifneq ($(MAN2HTML),false) + $(ECHO) "Privoxy Man page

NAME

" > 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: doc/source/ldpOK.dsl 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<\/HEAD/;\ + s/<\/HEAD/\n<\/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: 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 -e 's///; s//man2html/' tmp.html + $(PERL) -pi -e 's/(<\/HEAD>)/<\/HEAD>/' tmp.html +# Get rid of spurious  from converion. (How to do this with perl?) + $(SED) -e 's///g' tmp.html > doc/webserver/man-page/privoxy-man-page.html && rm -f tmp.html +else + $(MAKE) groff2html +endif ## Make README redhat-readme: doc/source/ldpOK.dsl cd doc/source && $(DB) -V nochunks readme.sgml > tmp.html && $(WDUMP) \ - tmp.html > ../../README && rm -rf tmp.html - # kludge to force recreation on next run. Rodgrigo? + tmp.html > ../../README && rm -rf tmp.html + # kludge to force recreation on next run. Rodgrigo? + @rm -f doc/source/ldpOK.dsl + +## Make AUTHORS file +authors: doc/source/ldpOK.dsl + cd doc/source && $(DB) -V nochunks authors.sgml > tmp.html && $(WDUMP) \ + tmp.html > ../../AUTHORS && rm -f tmp.html + # kludge to force recreation on next run. Rodgrigo? @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/ //; 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 + # 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///;\ + s///' \ + doc/source/*sgml doc/source/*/*sgml +ifeq ($(CODE_STATUS),stable) + @$(ECHO) Setting docs to stable $(VERSION) + @$(PERL) -pi -e 's///;\ + s///' \ + doc/source/*sgml doc/source/*/*sgml +else + @$(ECHO) Setting docs to not stable $(VERSION) + @$(PERL) -pi -e 's///;\ + s///' \ + doc/source/*sgml doc/source/*/*sgml +endif + ############################################################################# # # Webserver @@ -608,20 +669,22 @@ webserver: tidy @$(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' @$(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 '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' 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 @@ -688,7 +751,7 @@ $(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 "*~" -o -name "#*#"` @@ -714,11 +777,11 @@ 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 @@ -732,6 +795,71 @@ install: all ## end: # $Log: GNUmakefile.in,v $ +# 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