1: ifndef ROOT
2: ROOT = /home/znatoki
3: endif
4: PERL = perl
5: TMPSAV = /tmp
6: PMODE = 775
7: LMODE = 664
8: KULICHKI=znatoki.kulichki.net
9: RSYNC = rsync -ruvptCe ssh --delete --progress --rsync-path='~/bin/rsync'
10: SCP=scp
11: DESTSRCDIR=~piataev/public_html/dimrub/src/
12: SRCDIR=../baza
13: DICTDIR=../dict
14: IMAGEDIR=$(SRCDIR)/images
15: DESTIMAGEDIR=~piataev/public_html/images/db
16: INSTALLIMAGEDIR=$(ROOT)/public_html/images/db
17: DESTPRGSRC=~piataev/db/prgsrc
18: DUMPDIR=../dump
19: DESTDUMPDIR=/var/tmp/
20: TABLES= Questions Tournaments word2question nf nests Authors A2Q equalto
21: INDEXWRITER= rubash@yandex.ru, roma7@zaba.ru
22: #INDEXWRITER= boris
23: AUTHORCHECKER = roma7@zaba.ru
24: #AUTHORCHECKER = boris
25: DELIVERER = roma7@zaba.ru, boris
26: #DELIVERER = boris
27: UPDATELOG = $(DUMPDIR)/update.log
28: UAUTHORS=$(DUMPDIR)/uauthors
29: UNSORTED=$(DUMPDIR)/unsorted
30: RSPARAMS= 2000 50
31: TIMESTAMP= $(DUMPDIR)/timestamp
32:
33: DBSCRIPTS = mkdb.pl \
34: updatem.pl \
35: updatedb.pl \
36: changecities.pl\
37: createindex.pl\
38: updateindex.pl \
39: addlinks.pl \
40: deletefiles.pl\
41: renamefile.pl \
42: makecheck.pl\
43: mkRS.pl\
44: delRS.pl\
45: updateRS.pl\
46: updateRS1.pl\
47: updateRS2.pl\
48: updateRS3.pl\
49: dumpRS.pl\
50: findequal.pl\
51: dumpin2out.pl\
52: dump2dump.pl\
53: checkPBS.pl\
54: loaddump.pl \
55: makeauthors.pl
56:
57: LIBS = chgkfiles.pm \
58: common.pl\
59: chgk.cnf\
60: dbchgk.pm\
61: check.pl
62:
63:
64: CGISCRIPTS = db.cgi
65:
66:
67: HTMLS = contribute.html \
68: copyright.html \
69: copyright_mozg.html \
70: credits.html \
71: dbmain.html \
72: footer.html \
73: guestbook.html \
74: index.html \
75: random.html \
76: reklama.html \
77: search.html
78:
79:
80:
81: DBBIN = ../bin
82: MANDIR = ../man
83: LIBDIR = ../lib
84: CGIBIN = $(ROOT)/public_html/cgi-bin
85: HTMLDIR = $(ROOT)/public_html/dimrub/db
86:
87: TEXTS = $(wildcard $(SRCDIR)/*.txt) $(SRCDIR)/index
88: IMAGES = $(wildcard $(IMAGEDIR)/*.jpg)
89: IMAGENAMES= $(notdir $(IMAGES))
90:
91:
92:
93: BININSTALL = ${DBSCRIPTS:%=$(DBBIN)/%}
94: CGIINSTALL = ${CGISCRIPTS:%.cgi=$(CGIBIN)/%.cgi}
95: LIBINSTALL = ${LIBS:%=$(LIBDIR)/%}
96: HTMLINSTALL = ${HTMLS:%.html=$(HTMLDIR)/%.html}
97: IMAGEINSTALL = ${IMAGENAMES:%=$(INSTALLIMAGEDIR)/%}
98:
99: all: $(LIBINSTALL) $(BININSTALL) $(CGIINSTALL) $(HTMLINSTALL) $(IMAGEINSTALL)
100:
101:
102:
103:
104:
105: $(DBBIN)/%.pl: %.pl
106: ${PERL} -c $<
107: - pod2man --center "Internet Club DB" $< > $*.1
108: - install -m $(LMODE) $*.1 $(MANDIR)/man1
109: - rm $*.1
110: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
111: cp $< $@
112: chmod $(PMODE) $@
113: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
114:
115: $(CGIBIN)/%.cgi: %.cgi
116: ${PERL} -c $<
117: - pod2man --center "Internet Club DB" $< > $*.1
118: - install -m $(LMODE) $*.1 $(MANDIR)/man1
119: - rm $*.1
120: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
121: cp $< $@
122: chmod $(PMODE) $@
123: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
124:
125:
126:
127: $(LIBDIR)/%.pm: %.pm
128: ${PERL} -c $<
129: - pod2man --center "Internet Club DB" $< > $*.3
130: - install -m $(LMODE) $*.3 $(MANDIR)/man3
131: - rm $*.3
132: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
133: cp $< $@
134: chmod $(LMODE) $@
135: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
136:
137:
138: $(LIBDIR)/%.pl: %.pl
139: ${PERL} -c $<
140: - pod2man --center "Internet Club DB" $< > $*.3
141: - install -m $(LMODE) $*.3 $(MANDIR)/man3
142: - rm $*.3
143: if [ -f $@ ]; then mv $@ $(TMPSAV); fi
144: cp $< $@
145: chmod $(LMODE) $@
146: if [ -f $(TMPSAV)/$(@F) ]; then rm -f $(TMPSAV)/$(@F); fi
147:
148:
149: $(LIBDIR)/%.cnf: %.cnf
150: ${PERL} -c $<
151: - pod2man --center "Internet Club DB" $< > $*.5
152: - install -m $(LMODE) $*.5 $(MANDIR)/man5
153: - rm $*.5
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: $(HTMLDIR)/%.html: %.html
161: cp $< $@
162:
163:
164: $(INSTALLIMAGEDIR)/%: $(IMAGEDIR)/%
165: cp $< $@
166:
167: srcdeliver:
168: $(RSYNC) $(SRCDIR) $(KULICHKI):$(DESTSRCDIR)
169:
170:
171: imagedeliver:
172: cvs update $(SRCDIR)
173: $(RSYNC) $(IMAGEDIR) $(KULICHKI):$(DESTIMAGEDIR)
174:
175: prgdeliver:
176: $(RSYNC) ./ $(KULICHKI):$(DESTPRGSRC)
177:
178: dbdeliver: imagedeliver
179: echo "Starting delivering" | mail -s"Starting delivering" $(DELIVERER)
180: mysqldump --add-drop-table -u piataev chgk $(TABLES) > $(DUMPDIR)/chgkdump.0
181: sed 's/TYPE=ISAM PACK_KEYS=1//g' $(DUMPDIR)/chgkdump.0 > $(DUMPDIR)/chgkdump
182: gzip $(DUMPDIR)/chgkdump
183: rm $(DUMPDIR)/chgkdump.0
184: $(SCP) $(DUMPDIR)/chgkdump.gz $(KULICHKI):$(DESTDUMPDIR)
185: echo "Delivered" | mail -s"Database delivered" $(DELIVERER)
186:
187: update:
188: cvs update
189: cvs update $(SRCDIR)
190: cvs update $(DICTDIR)
191: $(MAKE) all
192: $(MAKE) $(TIMESTAMP)
193:
194: $(TIMESTAMP): $(TEXTS)
195: mysql -upiataev chgk <delq.sql
196: $(DBBIN)/mkdb.pl
197: $(DBBIN)/updateindex.pl -i$(SRCDIR)/index
198: $(DBBIN)/updatedb.pl $(SRCDIR)/*.txt 2>&1 | tee $(UPDATELOG)
199: $(DBBIN)/findequal.pl
200: $(DBBIN)/makeauthors.pl
201: if [ -s $(UAUTHORS) ]; then \
202: mail -sUauthors $(AUTHORCHECKER) < $(UAUTHORS); \
203: fi
204: if [ -s $(UNSORTED) ]; then \
205: mail -sUnsorted $(INDEXWRITER) <$(UNSORTED);\
206: else \
207: $(DBBIN)/mkRS.pl; \
208: $(DBBIN)/updateRS2.pl $(RSPARAMS);\
209: echo "Ready to deliver" | mail -s"Ready to deliver" $(DELIVERER);\
210: fi
211: touch $(TIMESTAMP)
212:
213:
214: authorsdeliver:
215: mysqldump --add-drop-table -u piataev chgk Authors A2Q equalto > $(DUMPDIR)/chgkdump.0
216: sed 's/TYPE=ISAM PACK_KEYS=1//g' $(DUMPDIR)/chgkdump.0 > $(DUMPDIR)/chgkdump
217: gzip $(DUMPDIR)/chgkdump
218: rm $(DUMPDIR)/chgkdump.0
219: $(SCP) $(DUMPDIR)/chgkdump.gz $(KULICHKI):$(DESTDUMPDIR)
220:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>