Annotation of db/prgsrc/Makefile, revision 1.97
1.84 boris 1: HOSTNAME=$(shell hostname)
2: ifeq ($(HOSTNAME),bilbo)
3: ROOT=/home/znatoki
4: endif
1.6 boris 5: ifndef ROOT
1.83 boris 6: ROOT = $(HOME)
1.6 boris 7: endif
1.1 boris 8: PERL = perl
9: TMPSAV = /tmp
10: PMODE = 775
11: LMODE = 664
1.83 boris 12: KULICHKI=chgk-db-boris@ledorub.chgk.info
1.80 boris 13: RSYNC = rsync -ruvptCe ssh --delete --progress
1.16 boris 14: SCP=scp
1.83 boris 15: DESTSRCDIR=~chgk-db/public_html/dimrub/src/
1.23 roma7 16: SRCDIR=../baza
1.48 roma7 17: DICTDIR=../dict
1.40 boris 18: IMAGEDIR=$(SRCDIR)/images
1.93 boris 19: SOUNDDIR=$(SRCDIR)/sounds
1.83 boris 20: DESTIMAGEDIR=~chgk-db/public_html/images/db
1.40 boris 21: INSTALLIMAGEDIR=$(ROOT)/public_html/images/db
1.93 boris 22: DESTSOUNDDIR=~chgk-db/public_html/sounds/db
23: INSTALLSOUNDDIR=$(ROOT)/public_html/sounds/db
1.83 boris 24: DESTPRGSRC=~chgk-db/db/prgsrc
25: DESTCGIBIN=~chgk-db/public_html/cgi-bin
1.1 boris 26: DUMPDIR=../dump
1.17 boris 27: DESTDUMPDIR=/var/tmp/
1.97 ! roma7 28: TABLES= Questions Tournaments word2question nf nests Authors P2Q equalto People P2T
1.38 roma7 29: INDEXWRITER= rubash@yandex.ru, roma7@zaba.ru
1.34 boris 30: #INDEXWRITER= boris
31: AUTHORCHECKER = roma7@zaba.ru
32: #AUTHORCHECKER = boris
33: DELIVERER = roma7@zaba.ru, boris
1.35 boris 34: #DELIVERER = boris
1.34 boris 35: UPDATELOG = $(DUMPDIR)/update.log
36: UAUTHORS=$(DUMPDIR)/uauthors
37: UNSORTED=$(DUMPDIR)/unsorted
1.89 boris 38: RSPARAMS= 2000 150
1.39 boris 39: TIMESTAMP= $(DUMPDIR)/timestamp
1.1 boris 40:
41: DBSCRIPTS = mkdb.pl \
42: updatem.pl \
43: updatedb.pl \
44: changecities.pl\
45: createindex.pl\
46: updateindex.pl \
1.8 boris 47: addlinks.pl \
1.9 boris 48: deletefiles.pl\
1.10 boris 49: renamefile.pl \
1.11 boris 50: makecheck.pl\
51: mkRS.pl\
1.14 boris 52: delRS.pl\
1.11 boris 53: updateRS.pl\
54: updateRS1.pl\
1.15 boris 55: updateRS2.pl\
56: updateRS3.pl\
1.11 boris 57: dumpRS.pl\
1.45 roma7 58: findequal.pl\
1.11 boris 59: dumpin2out.pl\
60: dump2dump.pl\
61: checkPBS.pl\
1.34 boris 62: loaddump.pl \
1.57 boris 63: makeauthors.pl\
1.96 roma7 64: makeeditors.pl\
65: makepeople.pl\
1.77 boris 66: chronicles.pl\
1.78 boris 67: stats.pl \
68: validate.pl
1.11 boris 69:
70: LIBS = chgkfiles.pm \
1.10 boris 71: common.pl\
72: chgk.cnf\
1.11 boris 73: dbchgk.pm\
74: check.pl
1.10 boris 75:
1.1 boris 76:
1.70 boris 77: CGISCRIPTS = db.cgi\
1.92 boris 78: dbdefs.pl \
79: cw.pl
1.1 boris 80:
1.12 boris 81:
82: HTMLS = contribute.html \
83: copyright.html \
84: copyright_mozg.html \
85: credits.html \
86: dbmain.html \
87: footer.html \
88: guestbook.html \
89: index.html \
90: random.html \
91: reklama.html \
1.58 boris 92: reklama_bottom.html\
1.90 roma7 93: dbxml.php\
1.12 boris 94: search.html
95:
96:
1.13 boris 97:
1.1 boris 98: DBBIN = ../bin
99: MANDIR = ../man
1.10 boris 100: LIBDIR = ../lib
1.6 boris 101: CGIBIN = $(ROOT)/public_html/cgi-bin
1.13 boris 102: HTMLDIR = $(ROOT)/public_html/dimrub/db
1.1 boris 103:
1.40 boris 104: TEXTS = $(wildcard $(SRCDIR)/*.txt) $(SRCDIR)/index
1.94 boris 105: IMAGES = $(wildcard $(IMAGEDIR)/*.gif) $(wildcard $(IMAGEDIR)/*.jpg)
106: SOUNDS = $(wildcard $(SOUNDDIR)/*.mp3) $(wildcard $(SOUNDDIR)/*.mid)
1.40 boris 107: IMAGENAMES= $(notdir $(IMAGES))
1.93 boris 108: SOUNDNAMES= $(notdir $(SOUNDS))
1.40 boris 109:
110:
111:
1.10 boris 112: BININSTALL = ${DBSCRIPTS:%=$(DBBIN)/%}
1.1 boris 113: CGIINSTALL = ${CGISCRIPTS:%.cgi=$(CGIBIN)/%.cgi}
1.10 boris 114: LIBINSTALL = ${LIBS:%=$(LIBDIR)/%}
1.13 boris 115: HTMLINSTALL = ${HTMLS:%.html=$(HTMLDIR)/%.html}
1.40 boris 116: IMAGEINSTALL = ${IMAGENAMES:%=$(INSTALLIMAGEDIR)/%}
1.93 boris 117: SOUNDINSTALL = ${SOUNDNAMES:%=$(INSTALLSOUNDDIR)/%}
1.40 boris 118:
1.84 boris 119:
1.93 boris 120: all: $(LIBINSTALL) $(BININSTALL) $(CGIINSTALL) $(HTMLINSTALL) \
121: $(IMAGEINSTALL) $(SOUNDINSTALL)
1.40 boris 122:
1.10 boris 123:
1.1 boris 124:
1.39 boris 125:
1.1 boris 126:
1.11 boris 127: $(DBBIN)/%.pl: %.pl
1.1 boris 128: ${PERL} -c $<
129: - pod2man --center "Internet Club DB" $< > $*.1
130: - install -m $(LMODE) $*.1 $(MANDIR)/man1
1.10 boris 131: - rm $*.1
1.1 boris 132: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
133: cp $< $@
134: chmod $(PMODE) $@
135: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
1.33 boris 136:
1.1 boris 137: $(CGIBIN)/%.cgi: %.cgi
138: ${PERL} -c $<
139: - pod2man --center "Internet Club DB" $< > $*.1
140: - install -m $(LMODE) $*.1 $(MANDIR)/man1
1.10 boris 141: - rm $*.1
1.1 boris 142: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
143: cp $< $@
144: chmod $(PMODE) $@
145: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
146:
147:
1.10 boris 148:
149: $(LIBDIR)/%.pm: %.pm
150: ${PERL} -c $<
151: - pod2man --center "Internet Club DB" $< > $*.3
152: - install -m $(LMODE) $*.3 $(MANDIR)/man3
153: - rm $*.3
1.11 boris 154: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
155: cp $< $@
156: chmod $(LMODE) $@
157: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
158:
159:
160: $(LIBDIR)/%.pl: %.pl
161: ${PERL} -c $<
162: - pod2man --center "Internet Club DB" $< > $*.3
163: - install -m $(LMODE) $*.3 $(MANDIR)/man3
164: - rm $*.3
165: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
166: cp $< $@
167: chmod $(LMODE) $@
168: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
169:
170:
171: $(LIBDIR)/%.cnf: %.cnf
172: ${PERL} -c $<
173: - pod2man --center "Internet Club DB" $< > $*.5
174: - install -m $(LMODE) $*.5 $(MANDIR)/man5
175: - rm $*.5
1.10 boris 176: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
177: cp $< $@
178: chmod $(LMODE) $@
179: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
180:
181:
1.12 boris 182: $(HTMLDIR)/%.html: %.html
183: cp $< $@
184:
1.10 boris 185:
1.40 boris 186: $(INSTALLIMAGEDIR)/%: $(IMAGEDIR)/%
187: cp $< $@
1.1 boris 188:
1.93 boris 189:
190: $(INSTALLSOUNDDIR)/%: $(SOUNDDIR)/%
191: cp $< $@
192:
193:
194:
1.1 boris 195: srcdeliver:
196: $(RSYNC) $(SRCDIR) $(KULICHKI):$(DESTSRCDIR)
197:
198:
1.40 boris 199: imagedeliver:
1.49 boris 200: cvs update $(SRCDIR)
1.60 boris 201: $(RSYNC) $(IMAGEDIR)/ $(KULICHKI):$(DESTIMAGEDIR)/
1.40 boris 202:
1.93 boris 203: sounddeliver:
204: cvs update $(SRCDIR)
205: $(RSYNC) $(SOUNDDIR)/ $(KULICHKI):$(DESTSOUNDDIR)/
206:
1.1 boris 207: prgdeliver:
208: $(RSYNC) ./ $(KULICHKI):$(DESTPRGSRC)
209:
1.93 boris 210: dbdeliver: imagedeliver sounddeliver
1.51 roma7 211: echo "Starting delivering" | mail -s"Starting delivering" $(DELIVERER)
1.91 boris 212: mysqldump --default-character-set=koi8r --add-drop-table -u piataev chgk $(TABLES) > $(DUMPDIR)/chgkdump
1.59 boris 213: echo "delete from hash;" >> $(DUMPDIR)/chgkdump
1.95 roma7 214: echo "CREATE FULLTEXT INDEX fti ON Questions (Question, Answer, PassCriteria, Comments);" >> $(DUMPDIR)/chgkdump
1.16 boris 215: gzip $(DUMPDIR)/chgkdump
216: $(SCP) $(DUMPDIR)/chgkdump.gz $(KULICHKI):$(DESTDUMPDIR)
1.46 boris 217: echo "Delivered" | mail -s"Database delivered" $(DELIVERER)
1.12 boris 218:
1.24 roma7 219: update:
1.50 boris 220: cvs update
1.21 roma7 221: cvs update $(SRCDIR)
1.48 roma7 222: cvs update $(DICTDIR)
1.50 boris 223: $(MAKE) all
1.39 boris 224: $(MAKE) $(TIMESTAMP)
225:
226: $(TIMESTAMP): $(TEXTS)
1.27 roma7 227: mysql -upiataev chgk <delq.sql
1.36 boris 228: $(DBBIN)/mkdb.pl
229: $(DBBIN)/updateindex.pl -i$(SRCDIR)/index
230: $(DBBIN)/updatedb.pl $(SRCDIR)/*.txt 2>&1 | tee $(UPDATELOG)
1.43 roma7 231: $(DBBIN)/findequal.pl
1.96 roma7 232: $(DBBIN)/makepeople.pl
1.36 boris 233: $(DBBIN)/makeauthors.pl
1.96 roma7 234: $(DBBIN)/makeeditors.pl
1.34 boris 235: if [ -s $(UAUTHORS) ]; then \
236: mail -sUauthors $(AUTHORCHECKER) < $(UAUTHORS); \
237: fi
238: if [ -s $(UNSORTED) ]; then \
239: mail -sUnsorted $(INDEXWRITER) <$(UNSORTED);\
240: else \
1.36 boris 241: $(DBBIN)/mkRS.pl; \
242: $(DBBIN)/updateRS2.pl $(RSPARAMS);\
1.47 roma7 243: echo "Ready to deliver" | mail -s"Ready to deliver" $(DELIVERER);\
1.34 boris 244: fi
1.39 boris 245: touch $(TIMESTAMP)
246:
1.33 boris 247:
248: authorsdeliver:
1.42 roma7 249: mysqldump --add-drop-table -u piataev chgk Authors A2Q equalto > $(DUMPDIR)/chgkdump.0
1.33 boris 250: sed 's/TYPE=ISAM PACK_KEYS=1//g' $(DUMPDIR)/chgkdump.0 > $(DUMPDIR)/chgkdump
251: gzip $(DUMPDIR)/chgkdump
252: rm $(DUMPDIR)/chgkdump.0
253: $(SCP) $(DUMPDIR)/chgkdump.gz $(KULICHKI):$(DESTDUMPDIR)
254:
1.52 boris 255:
256: dbfill:
257: echo "Starting filling Kulichki database" | mail -s"Starting dbfill" $(DELIVERER)
1.86 boris 258: ssh $(KULICHKI) "export LANG=ru_RU.KOI8-R; \
259: echo 'ВНИМАНИЕ! Идёт заливка Базы вопросов. \
1.55 boris 260: Результаты поиска в Базе могут быть неполны' \
1.73 boris 261: > ~/public_html/dimrub/db/date;\
1.88 boris 262: gunzip -c /var/tmp/chgkdump.gz | mysql -u piataev chgk;\
1.73 boris 263: date > ~/public_html/dimrub/db/date"
1.74 boris 264: echo "Finished filling Kulichki database" | mail -s"Finished dbfill" $(DELIVERER); \
1.77 boris 265: $(DBBIN)/stats.pl >> $(SRCDIR)/fill.log; \
1.76 boris 266: cvs commit -m "Database filled" $(SRCDIR)
1.67 boris 267:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>