## Makefile for ~/public_html/pubs.
## The two key targets are "html" and "underreview".
## make -C ~/public_html/pubs html
## make -C ~/public_html/pubs underreview
## Also consider running make for the PAG group:
## make -C /home/httpd/html/pag/pubs html
###########################################################################
BIBDIR = ${HOME}/bib
BIBFILES = ${BIBDIR}/bibstring-unabbrev.bib ${BIBDIR}/crossrefs.bib ${BIBDIR}/ernst.bib
BIBFILES2 = ${BIBDIR}/bibstring-unabbrev.bib ${BIBDIR}/crossrefs.bib ${BIBDIR}/ernst2.bib
BIBFILES_UNDERREVIEW = ${BIBDIR}/bibstring-unabbrev.bib ${BIBDIR}/crossrefs.bib ${BIBDIR}/ernst-underreview.bib
BPHOME ?= ${HOME}/bin/src/perl/bibtex2web/lib
BWBIN = ${BPHOME}/../bin
MDEWWW = ${HOME}/public_html
INV = ${HOME}/research/invariants
PLUMELIB = ${HOME}/bin/src/plume-lib
HTMLTOOLS = ${HOME}/bin/src/html-tools
###########################################################################
html: HTML
# For testing, create file ernst2.bib with the problematic entries and run this target.
html2: HTML2
HTML: abstracts index.html ../research/pubs-bytopic.html permissions
HTML2: abstracts2 index2.html ../research/pubs-bytopic2.html permissions
FILTER = -filter '! (defined($$rec{"omitfromcv"}) || (lc($$rec{"TYPE"}) eq "lecture") || ((lc($$rec{"TYPE"}) eq "proceedings") && ((!defined($$rec{"editor"})) || ($$rec{"editor"} !~ /Ernst/))))'
# FILTER = -filter '! (defined($$rec{"omitfromcv"}) || (lc($$rec{"TYPE"}) eq "lecture"))'
# To check, replace ernst.bib by [^b]*.bib
index.html:
${BWBIN}/bwconv.pl -format=bibtex,htmlpubs -outopts=withyears -author "Michael D. Ernst /Ernst, Michael D\./" -headfoot index-headfoot.html -to $@ ${FILTER} -validurls valid-urls.txt ${BIBFILES}
@ chmod +x fix-homedir-tilde.pl
@ fix-homedir-tilde.pl $@
# This differs in: using `-debugging=on` and using ernst2.bib instead of ${BIBFILES}.
# For testing a specific problem.
index2.html:
${BWBIN}/bwconv.pl -debugging=on -format=bibtex,htmlpubs -outopts=withyears -author "Michael D. Ernst /Ernst, Michael D\./" -headfoot index-headfoot.html -to $@ ${FILTER} -validurls valid-urls.txt ${BIBDIR}/bibstring-unabbrev.bib ${BIBDIR}/crossrefs.bib ${BIBDIR}/ernst2.bib
@ chmod +x fix-homedir-tilde.pl
@ fix-homedir-tilde.pl $@
../research/pubs-bytopic.html:
@ rm -f $@
${BWBIN}/bwconv.pl -format=bibtex,htmlsummary -headfoot ${MDEWWW}/research/pubs-bytopic-headfoot.html -categories ${MDEWWW}/research/pubs-bytopic-categories -sort category -to $@ ${FILTER} ${BIBFILES}
@ ${HTMLTOOLS}/html-update-toc --quiet $@
@ chmod +x add-daikon-link.pl
add-daikon-link.pl $@
# This differs only in using ${BIBFILES2}.
../research/pubs-bytopic2.html:
@ rm -f $@
${BWBIN}/bwconv.pl -format=bibtex,htmlsummary -headfoot ${MDEWWW}/research/pubs-bytopic-headfoot.html -categories ${MDEWWW}/research/pubs-bytopic-categories -sort category -to $@ ${FILTER} ${BIBFILES2}
@ ${HTMLTOOLS}/html-update-toc --quiet $@
@ chmod +x add-daikon-link.pl
add-daikon-link.pl $@
# Creates *-abstract.html files.
abstracts:
${BWBIN}/bwconv.pl -format=bibtex -outformat=htmlabstract -outopts=withbibtex -to abstracts-unsplit.html -linknames ${HTMLTOOLS}/html-canonical-urls ${FILTER} -validurls valid-urls.txt ${BIBFILES}
# ${BWBIN}/bwconv.pl -format=bibtex -outformat=htmlabstract -to abstracts-unsplit.html -linknames ${HTMLTOOLS}/html-canonical-urls ${FILTER} ${BIBFILES}
@ fix-homedir-tilde.pl abstracts-unsplit.html
${BWBIN}/htmlabstract-split.pl -headfoot abstract-headfoot.html abstracts-unsplit.html
@ rm abstracts-unsplit.html
abstracts2:
${BWBIN}/bwconv.pl -debugging=on -format=bibtex -outformat=htmlabstract -outopts=withbibtex -to abstracts-unsplit2.html -linknames ${HTMLTOOLS}/html-canonical-urls ${FILTER} -validurls valid-urls.txt ${BIBFILES2}
# ${BWBIN}/bwconv.pl -format=bibtex -outformat=htmlabstract -to abstracts-unsplit2.html -linknames ${HTMLTOOLS}/html-canonical-urls ${FILTER} ${BIBFILES2}
@ fix-homedir-tilde.pl abstracts-unsplit2.html
${BWBIN}/htmlabstract-split.pl -headfoot abstract-headfoot.html abstracts-unsplit2.html
# @ rm abstracts-unsplit.html
permissions:
chmod +r *
chmod -x `find . -type f`
chmod +x `find . -name '*.pl'`
chmod +x `find . -type d`
.PHONY: abstracts index.html ../research/pubs-bytopic.html permissions
###########################################################################
underreview: abstracts-underreview index-underreview pubs-bytopic-underreview
clean-underreview:
rm -f index-underreview-*.html
rm -f ../research/pubs-bytopic-underreview-*.html
# Creates index-underreview-YYYYMMDD.html
index-underreview:
${BWBIN}/bwconv.pl -format=bibtex,htmlpubs -author "Michael D. Ernst /Ernst, Michael D\./" -headfoot index-underreview-headfoot.html -to index-underreview-`date +"%Y%m%d"`.html -filter 'defined($$rec{"underreview"})' ${BIBFILES_UNDERREVIEW}
@ fix-homedir-tilde.pl index-underreview-`date +"%Y%m%d"`.html
perl -pi -e 's/DATE/'`date +"%Y%m%d"`'/' index-underreview-`date +"%Y%m%d"`.html
# Creates ${MDEWWW}/research/pubs-bytopic-underreview-YYYYMMDD.html
pubs-bytopic-underreview:
${BWBIN}/bwconv.pl -format=bibtex,htmlsummary -headfoot ${MDEWWW}/research/pubs-bytopic-underreview-headfoot.html -categories ${MDEWWW}/research/pubs-bytopic-categories -sort category -to ${MDEWWW}/research/pubs-bytopic-underreview-`date +"%Y%m%d"`.html -filter 'defined($$rec{"underreview"})' ${BIBFILES_UNDERREVIEW}
html-update-toc --quiet ${MDEWWW}/research/pubs-bytopic-underreview-`date +"%Y%m%d"`.html
add-daikon-link.pl ${MDEWWW}/research/pubs-bytopic-underreview-`date +"%Y%m%d"`.html
perl -pi -e 's/DATE/'`date +"%Y%m%d"`'/' ${MDEWWW}/research/pubs-bytopic-underreview-`date +"%Y%m%d"`.html
# Creates *-abstract.html files.
abstracts-underreview:
${BWBIN}/bwconv.pl -format=bibtex -outformat=htmlabstract -to abstracts-unsplit.html -linknames ${HTMLTOOLS}/html-canonical-urls -filter 'defined($$rec{"underreview"})' ${BIBFILES_UNDERREVIEW}
@ fix-homedir-tilde.pl abstracts-unsplit.html
perl -p -e 's/DATE/'`date +"%Y%m%d"`'/' abstract-underreview-headfoot.html > dated-abstract-headfoot.html
${BWBIN}/htmlabstract-split.pl -headfoot dated-abstract-headfoot.html abstracts-unsplit.html
@ rm abstracts-unsplit.html dated-abstract-headfoot.html
.PHONY: abstracts-underreview index-underreview pubs-bytopic-underreview
###########################################################################
# Other example invocations (command lines):
#
# # For checking only; produces BibTeX output to standard out
# cd ~/bin/src/perl/bp-0.2.97
# bin/conv.pl ~/bib/bibstring-abbrev.bib ~/bib/ernst.bib ~/bib/crossrefs.bib
#
# # Test built-in CACM style (no hyperlinks).
# # Warnings because CACM output style only understands book, art, inproc.
# bin/conv.pl -format=bibtex,output/cacm:html -to ~/tmp/out.html ~/bib/bibstring-abbrev.bib ~/bib/ernst.bib ~/bib/crossrefs.bib
#
# # Includes abstracts.
# # Problem (10/5/2002): "---" ought to have been converted to "--" in abstract.
# bin/conv.pl -format=bibtex -outformat=html -to ~/tmp/out.html ~/bib/bibstring-abbrev.bib ~/bib/ernst.bib ~/bib/crossrefs.bib
#
# # Includes links to abstracts (the links don't work from ~/tmp/out.html).
# bin/conv.pl -format=bibtex -outformat=htmlpubs -to ~/tmp/out.html ~/bib/bibstring-abbrev.bib ~/bib/ernst.bib ~/bib/crossrefs.bib
###########################################################################
# Find overlap with /afs/csail/group/pag/public_html/pubs
overlap:
diff --brief --report-identical-files /afs/csail/u/m/mernst/www/pubs /afs/csail/group/pag/www/pubs | grep "are identical"
overlap2: .pubs-mde-list .pubs-pag-list
diff -u .pubs-mde-list .pubs-pag-list | grep -v '^[-+]' | grep -v Makefile
.pubs-mde-list: /afs/csail/u/m/mernst/www/pubs
ls $< | grep -v '.html$$' > $@
.pubs-pag-list: /afs/csail/group/pag/www/pubs
ls $< | grep -v '.html$$' > $@