Annotation of db/prgsrc/Makefile, revision 1.81

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>