C.5. The Export makefile in doc/export/

This makefile tars, zips, and names the distribution files, and puts them in the doc/distribution directory. It is located at doc/export/Makefile.

# Makefile
#
# Builds the documentation distribution.


HELPBKS	= cogent-set
HELPDIR	= usr/cogent/help
HELPVER = help4 help6

HTMLBKS	= cogent-set

INDS	= gamguide-book gamref1-book gamref2-book \
          phgamguide-book phgamref1-book phgamref2-book \
          sqlgamma-book \
          qse-book dhw-book dh-book ccw-book api-book sr-book \
          drcf-book drdn-book drpb-book drsd-book drmb-book \
          hi-book tl-book gl-book tu-book \
          p1-art p2-art p3-art p4-art p5-art p6-art p7-art

PHVER = 4.0
GTKVER = 0.9


all: html help pdf examples version


#####  Tars and Gzips the QNX Helpviewer Docs (HELPBKS)  #####

.PHONY: help

help:
	for h in $(HELPVER); do \
	for m in $(HELPBKS); do \
		if [ -f ../o/$$m/$$h/HTML.index ]; then \
		  mkdir -p $$h; \
		  rm -Rf tmp; \
		  mkdir -p tmp/$(HELPDIR)/$$m; \
		  (cd ../o/$$m/$$h; tar -cf- *) | (cd tmp/$(HELPDIR)/$$m; tar -xf-); \
		  cp setup_$$m tmp/setup; \
		  chmod +x tmp/setup; \
		  cp install_msg_$$m tmp/install_msg; \
		  cp ../i/cogent_set/cogent-set.title tmp/$(HELPDIR)/cogent-set.toc; \
		  (cd tmp; tar -zcf ../$$h/$$m-$$h.tgz install_msg setup usr); \
		  rm -f .$$m-$$h; \
		fi \
	done; \
	done


#####  Tars and Gzips the HTML docs (HTMLBKS)  #####

.PHONY: html

html:
	for m in $(HTMLBKS); do \
		if [ -f ../o/$$m/html/xhstyle.css ]; then \
		  mkdir -p html; \
		  if [ $$m == cogent-set ]; then \
	  		  rm -Rf html/cogentdocs; \
			  mkdir -p html/cogentdocs; \
			  (cd ../o/$$m/html; tar -cf- *) | (cd html/cogentdocs; tar -xf-); \
			  (cd html; tar -zcf cogentdocs-html.tgz cogentdocs); \
		  else \
			  rm -Rf html/$$m*; \
			  mkdir -p html/$$m; \
			  (cd ../o/$$m/html; tar -cf- *) | (cd html/$$m; tar -xf-); \
			  (cd html; tar -zcf $$m-html.tgz $$m); \
		  fi; \
		  rm -f .$$m-html; \
		  rm -f .cogentdocs-html; \
		fi \
	done


#####  Zips individual books in Postscript format.  #####

.PHONY: ps
ps:
	mkdir -p ps
	for m in $(INDS); do \
		if [ -f ../o/$$m/ps/main.ps ]; then \
			cp ../$$m/ps/$$m.ps ps; \
			gzip -f ps/$$m.ps; \
		fi \
	done

# Zips individual books in PDF format.

.PHONY: pdf

pdf:
	mkdir -p pdf
	for m in $(INDS); do \
		if [ -f ../o/$$m/pdf/main.pdf ]; then \
			cp ../o/$$m/pdf/main.pdf pdf/$$m.pdf; \
			zip pdf/$$m.pdf.zip pdf/$$m.pdf; \
			rm -f .$$m-pdf; \
		fi \
	done


#####  Tars and Gzips the Gamma/Photon and Gamma/GTK examples.  #####

.PHONY: examples

examples:
	mkdir -p examples

	mkdir -p ../i/phgamma/gamma_ph-$(PHVER)-examples
	cd ../i/phgamma; \
        cp  -R *.g *.txt *.bmp *.kdef *.html *.gif README \
            QNX4-WidgetFiles QNX6-WidgetFiles gamma_ph-$(PHVER)-examples; \
        tar -zcf ../../export/examples/phgamexamples.tgz gamma_ph-$(PHVER)-examples; \
	rm -Rf gamma_ph-$(PHVER)-examples
	rm -f .phgamex

	mkdir -p ../i/gtkgamma/code/gtk/gamma_gtk-$(GTKVER)-examples
	mkdir -p ../i/gtkgamma/code/gtk/gamma_gtk-$(GTKVER)-examples/testfns
	cd ../i/gtkgamma/code/gtk; \
	cp test.g testgtkrc marble.xpm gtkenums.h README gamma_gtk-$(GTKVER)-examples; \
	cp testfns/*.g gamma_gtk-$(GTKVER)-examples/testfns; \
        tar -zcf ../../../../export/examples/gtkgamexamples.tgz \
             gamma_gtk-$(GTKVER)-examples; \
	rm -Rf gamma_gtk-$(GTKVER)-examples
	rm -f .gtkgamex


#####  Copies each output file to the distribution/ directory,
#####  renaming it, adding revision and version numbers to its name.

.PHONY: version

version: .cogentdocs-html \
         .cogent-set-help4 .cogent-set-help6 \
         .phgamex .gtkgamex \
         .gam-book-pdf .phgam-book-pdf .sqlgamma-book-pdf \
         .gamguide-book-pdf .gamref1-book-pdf .gamref2-book-pdf \
         .phgamguide-book-pdf .phgamref1-book-pdf .phgamref2-book-pdf \
         .qse-book-pdf .ccw-book-pdf .dhw-book-pdf .dh-book-pdf \
         .tl-book-pdf .hi-book-pdf .api-book-pdf .sr-book-pdf \
         .tu-book-pdf .gl-book-pdf \
         .drcf-book-pdf .drdn-book-pdf .drpb-book-pdf \
         .drmb-book-pdf .drsd-book-pdf \
         .p1-art-pdf .p2-art-pdf .p3-art-pdf \
         .p4-art-pdf .p5-art-pdf .p6-art-pdf .p7-art-pdf 


.cogentdocs-html: 
	rm -f ../distribution/CogentDocs*HTML*; \
	cp html/cogentdocs-html.tgz \
           ../distribution/$$(../bin/revnum CogentDocs vsn-cogall HTML).tgz; \
	touch .cogentdocs-html

.cogent-set-help4: 
	rm -f ../distribution/CogentDocs*QNX4Help*; \
	cp help4/cogent-set-help4.tgz \
           ../distribution/$$(../bin/revnum CogentDocs vsn-cogqnx4 QNX4Help).tgz; \
	touch .cogent-set-help4

.cogent-set-help6: 
	rm -f ../distribution/CogentDocs*QNX6Help*; \
	cp help6/cogent-set-help6.tgz \
           ../distribution/$$(../bin/revnum CogentDocs vsn-cogqnx6 QNX6Help).tgz; \
	touch .cogent-set-help6

.gamguide-book-pdf:
.gamref1-book-pdf:
.gamref2-book-pdf:
.gam-book-pdf: .gamguide-book-pdf .gamref1-book-pdf .gamref2-book-pdf
	rm -f ../distribution/Gamma-*PDF*; \
	zip ../distribution/$$(../bin/revnum Gamma \
            vsn-gamma PDF).zip \
            pdf/gamguide-book.pdf \
            pdf/gamref1-book.pdf \
            pdf/gamref2-book.pdf; \
	touch .gam-book-pdf .gamguide-book-pdf \
              .gamref1-book-pdf .gamref2-book-pdf

.phgamguide-book-pdf:
.phgamref1-book-pdf:
.phgamref2-book-pdf:
.phgam-book-pdf: .phgamguide-book-pdf .phgamref1-book-pdf .phgamref2-book-pdf
	rm -f ../distribution/GammaPhoton-*PDF*; \
	zip ../distribution/$$(../bin/revnum GammaPhoton \
            vsn-phgamma PDF).zip \
            pdf/phgamguide-book.pdf \
            pdf/phgamref1-book.pdf \
            pdf/phgamref2-book.pdf; \
	touch .phgam-book-pdf .phgamguide-book-pdf \
              .phgamref1-book-pdf .phgamref2-book-pdf

.sqlgamma-book-pdf: 
	rm -f ../distribution/GammaMySQL-*PDF*; \
	cp pdf/sqlgamma-book.pdf.zip \
           ../distribution/$$(../bin/revnum GammaMySQL \
           vsn-sqlgamma PDF).zip; \
	touch .sqlgamma-book-pdf

.phgamex: 
	rm -f ../distribution/GammaPhoton*Examples*; \
	cp examples/phgamexamples.tgz \
           ../distribution/$$(../bin/revnum GammaPhoton \
           vsn-phgamma Examples).tgz; \
	touch .phgamex

.gtkgamex: 
	rm -f ../distribution/GammaGTK*Examples*; \
	cp examples/gtkgamexamples.tgz \
           ../distribution/$$(../bin/revnum GammaGTK \
           vsn-gtkgamma Examples).tgz; \
	touch .gtkgamex

.tu-book-pdf: 
	rm -f ../distribution/ToolsDemo*; \
	cp pdf/tu-book.pdf.zip \
           ../distribution/$$(../bin/revnum ToolsDemo \
           vsn-tu-book PDF).zip; \
	touch .tu-book-pdf

.api-book-pdf: 
	rm -f ../distribution/CogentAPI*; \
	cp pdf/api-book.pdf.zip \
           ../distribution/$$(../bin/revnum CogentAPI \
           vsn-api-book PDF).zip; \
	touch .api-book-pdf

.qse-book-pdf: 
	rm -f ../distribution/QuickStartExcel*PDF*; \
	cp pdf/qse-book.pdf.zip \
           ../distribution/$$(../bin/revnum QuickStartExcel \
           vsn-qse-book PDF).zip; \
	touch .qse-book-pdf

.ccw-book-pdf: 
	rm -f ../distribution/ConnectWindows*PDF*; \
	cp pdf/ccw-book.pdf.zip \
           ../distribution/$$(../bin/revnum ConnectWindows \
           vsn-ccw-book PDF).zip; \
	touch .ccw-book-pdf

.dhw-book-pdf: 
	rm -f ../distribution/DataHubWindows*; \
	cp pdf/dhw-book.pdf.zip \
           ../distribution/$$(../bin/revnum DataHubWindows \
           vsn-dhw-book PDF).zip; \
	touch .dhw-book-pdf

.dh-book-pdf: 
	rm -f ../distribution/DataHubLinuxQNX*; \
	cp pdf/dh-book.pdf.zip \
           ../distribution/$$(../bin/revnum DataHubLinuxQNX \
           vsn-dh-book PDF).zip; \
	touch .dh-book-pdf

.hi-book-pdf: 
	rm -f ../distribution/Historian*; \
	cp pdf/hi-book.pdf.zip \
           ../distribution/$$(../bin/revnum Historian \
           vsn-hi-book PDF).zip; \
	touch .hi-book-pdf

.tl-book-pdf: 
	rm -f ../distribution/TextLogger*; \
	cp pdf/tl-book.pdf.zip \
           ../distribution/$$(../bin/revnum TextLogger \
           vsn-tl-book PDF).zip; \
	touch .tl-book-pdf

.gl-book-pdf: 
	rm -f ../distribution/Glossary*; \
	cp pdf/gl-book.pdf.zip \
           ../distribution/$$(../bin/revnum Glossary \
           vsn-gl-book PDF).zip; \
	touch .gl-book-pdf

.drcf-book-pdf: 
	rm -f ../distribution/DR_CIF*; \
	cp pdf/drcf-book.pdf.zip \
           ../distribution/$$(../bin/revnum DR_CIF \
           vsn-drcf-book PDF).zip; \
	touch .drcf-book-pdf

.drdn-book-pdf: 
	rm -f ../distribution/DR_5136DNP*; \
	cp pdf/drdn-book.pdf.zip \
           ../distribution/$$(../bin/revnum DR_5136DNP \
           vsn-drdn-book PDF).zip; \
	touch .drdn-book-pdf

.drpb-book-pdf: 
	rm -f ../distribution/DR_5136PFB*; \
	cp pdf/drpb-book.pdf.zip \
           ../distribution/$$(../bin/revnum DR_5136PFB \
           vsn-drpb-book PDF).zip; \
	touch .drpb-book-pdf

.drmb-book-pdf: 
	rm -f ../distribution/DR_SA85*PDF*; \
	cp pdf/drmb-book.pdf.zip \
           ../distribution/$$(../bin/revnum DR_SA85 \
           vsn-drmb-book PDF).zip; \
	touch .drmb-book-pdf

.drsd-book-pdf: 
	rm -f ../distribution/DR_5136SD*PDF*; \
	cp pdf/drsd-book.pdf.zip \
           ../distribution/$$(../bin/revnum DR_5136SD \
           vsn-drsd-book PDF).zip; \
	touch .drsd-book-pdf

.sr-book-pdf: pdf/sr-book.pdf.zip 
	rm -f ../distribution/SRR*; \
	cp pdf/sr-book.pdf.zip \
           ../distribution/$$(../bin/revnum SRR \
           vsn-sr-book PDF).zip; \
	touch .sr-book-pdf

.p1-art-pdf: 
	rm -f ../distribution/PaperCadburyProject*; \
	cp pdf/p1-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperCadburyProject \
           vsn-p1-art PDF).zip; \
	touch .p1-art-pdf

.p2-art-pdf: 
	rm -f ../distribution/PaperConnectQNXWindows*; \
	cp pdf/p2-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperConnectQNXWindows \
           vsn-p2-art PDF).zip; \
	touch .p2-art-pdf

.p3-art-pdf: 
	rm -f ../distribution/PaperHotStandbyInTouch*; \
	cp pdf/p3-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperHotStandbyInTouch \
           vsn-p3-art PDF).zip; \
	touch .p3-art-pdf

.p4-art-pdf: 
	rm -f ../distribution/PaperGammaDiscussion*; \
	cp pdf/p4-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperGammaDiscussion \
           vsn-p4-art PDF).zip; \
	touch .p4-art-pdf

.p5-art-pdf: 
	rm -f ../distribution/PaperSyncAsyncMessages*; \
	cp pdf/p5-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperSyncAsyncMessages \
           vsn-p5-art PDF).zip; \
	touch .p5-art-pdf

.p6-art-pdf: 
	rm -f ../distribution/PaperRealtimeData*; \
	cp pdf/p6-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperRealtimeData \
           vsn-p6-art PDF).zip; \
	touch .p6-art-pdf

.p7-art-pdf: 
	rm -f ../distribution/PaperBenchMarks*; \
	cp pdf/p7-art.pdf.zip \
           ../distribution/$$(../bin/revnum PaperBenchMarks \
           vsn-p7-art PDF).zip; \
	touch .p7-art-pdf

empty:
	rm -Rf help html pdf tmp examples *~