X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;f=GNUmakefile.in;h=5e33315ed68c7da935b2755727ce149821dcd69f;hb=c0b441cfb694cb04a4409030bd4301b95cd14056;hp=1965a8572d11f8b03b7c09a7dd690be00fd3cb0a;hpb=a9f9270220f0768cb9508ea976f372d0dbc6a131;p=privoxy.git diff --git a/GNUmakefile.in b/GNUmakefile.in index 1965a857..5e33315e 100644 --- a/GNUmakefile.in +++ b/GNUmakefile.in @@ -1,6 +1,6 @@ # Note: Makefile is built automatically from Makefile.in # -# $Id: GNUmakefile.in,v 1.78 2002/04/09 13:37:11 sarantis Exp $ +# $Id: GNUmakefile.in,v 1.93 2002/04/27 04:55:53 morcego 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@ ############################################################################# @@ -82,7 +80,7 @@ LN = ln 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@ @@ -210,7 +208,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 ############################################################################# @@ -263,7 +261,7 @@ dist-check: $(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; @@ -282,26 +280,59 @@ rpm-stuff: dist-check 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 -f 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 ".cvsignore" --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 @@ -326,12 +357,12 @@ suse-dist: rpm-stuff exit 1;\ fi - $(TAR) --exclude ".cvsignore" --exclude "CVS" --exclude "privoxy-rh.spec" -czf $(TAR_ARCH) . + $(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 @@ -373,14 +404,14 @@ gen-dist: dist-check $(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) @@ -464,50 +495,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 ############################################################################# -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 --exclude "PACKAGERS" 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 ############################################################################# # @@ -572,14 +588,13 @@ dok-readme: doc/source/ldpOK.dsl # 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<\/HEAD/;\ s/<\/HEAD/\n<\/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! -dok: dok-release dok-devel dok-user dok-faq dok-readme dok-webserver authors +# Main documentation target. +dok: dok-release dok-devel dok-user dok-faq dok-readme dok-webserver dok-authors # kludge to force recreation on next run. Rodgrigo? @rm -f doc/source/ldpOK.dsl @$(ECHO) Documentation created. @@ -587,7 +602,7 @@ dok: dok-release dok-devel dok-user dok-faq dok-readme dok-webserver authors # # 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 +redhat-dok: dok-release dok-devel dok-user dok-faq redhat-readme dok-webserver dok-authors # kludge to force recreation on next run. Rodgrigo? @rm -f doc/source/ldpOK.dsl @$(ECHO) Documentation created. @@ -597,10 +612,10 @@ man2html: mkdir -p doc/webserver/man-page 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 + $(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 -f tmp.* else $(MAKE) groff2html endif @@ -613,21 +628,20 @@ redhat-readme: doc/source/ldpOK.dsl @rm -f doc/source/ldpOK.dsl ## Make AUTHORS file -authors: doc/source/ldpOK.dsl +dok-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. +# 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/ //; s/\[ /\[/g' privoxy.1 + 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. @@ -638,23 +652,46 @@ man: doc/source/ldpOK.dsl # 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///;\ + @$(PERL) -pi.bak -e 's///;\ s///' \ 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///;\ + @$(PERL) -pi.bak -e 's///;\ s///' \ 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///;\ + @$(PERL) -pi.bak -e 's///;\ s///' \ 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 > /dev/null 2>&1 + cd doc/pdf && db2pdf --pdf -s ldpOK.dsl developer-manual.sgml && mv developer-manual.pdf privoxy-developer-manual.pdf > /dev/null 2>&1 + cd doc/pdf && db2pdf --pdf -s ldpOK.dsl faq.sgml && mv faq.pdf privoxy-faq.pdf > /dev/null 2>&1 + rm -f doc/pdf/*.sgml doc/pdf/*.dsl doc/pdf/*.out doc/pdf/*.tex doc/pdf/*.log doc/pdf/*.aux + # kludge to force recreation on next run. Rodgrigo? + @rm -f doc/source/ldpOK.dsl + +# the layout and style with db2pdf sucks, here is an alternative +dok-pdf2: doc/source/ldpOK.dsl 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. + # kludge to force recreation on next run. Rodgrigo? + @rm -f doc/source/ldpOK.dsl + ############################################################################# # # Webserver @@ -763,7 +800,8 @@ tidy: $(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 + $(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/ldpOK.dsl + # # FIXME: What is all this? # @@ -801,6 +839,61 @@ install: all ## end: # $Log: GNUmakefile.in,v $ +# 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 #