diff --git a/publikationsliste/Makefile b/publikationsliste/Makefile
index 01eca20fccf0cf041dbe63da05dea3613136caf1..6f550dfe31627c36f0055ee1489a626ecbd84a92 100644
--- a/publikationsliste/Makefile
+++ b/publikationsliste/Makefile
@@ -1,25 +1,39 @@
 
-# Rolf Niepraschk, 2021-09-20, Rolf.Niepraschk@ptb.de
+# Rolf Niepraschk, 2021-09-24, Rolf.Niepraschk@ptb.de
 
 .SUFFIXES : .tex .ltx .dvi .ps .pdf .eps .bbx .cbx .dbx
 
 MAIN = publikationen_vakuum_PTB
 
 LATEX = lualatex
+BIBTEX = biber
+EGREP = grep -E
 
 ADDINPUTS = 
 
-BIBS = $(MAIN).bib
+BIBS = $(MAIN).bib journal-short-names.bib
+
+BIBTEX_WARN = (run Biber on the file)
+RERUN_WARN1 = Rerun to get cross-references right
+RERUN_WARN2 = Please rerun LaTeX
+RERUN_WARN3 = There were undefined references
+RERUN_WARN4 = Linenumber reference failed
+RERUN_WARNINGS = ($(RERUN_WARN1)|$(RERUN_WARN2)|$(RERUN_WARN3)|$(RERUN_WARN4))
+
+MAX_LTX_RUNS = 5
 
 all : pdf
 
 pdf : $(MAIN).pdf
 
-$(MAIN).pdf : $(MAIN).tex $(MAIN).bbl $(ADDINPUTS)
-	$(LATEX) $<
-
-$(MAIN).bcf : $(MAIN).tex $(BIBS)
+$(MAIN).pdf : $(MAIN).tex $(BIBS) $(ADDINPUTS)
 	$(LATEX) $<
+	@if $(EGREP) '$(BIBTEX_WARN)' $(basename $<).log > /dev/null; \
+	then $(BIBTEX) -V --isbn-normalise $(basename $<); fi;
+	@for (( i=0; i < $(MAX_LTX_RUNS); i++ )) do \
+	  if $(EGREP) '$(RERUN_WARNINGS)' $(basename $<).log > /dev/null; \
+	  then $(LATEX) $<; fi; \
+	done
 
 $(MAIN).bbl : $(MAIN).bcf
 	biber -V --isbn-normalise $<
diff --git a/publikationsliste/publikationen_vakuum_PTB.pdf b/publikationsliste/publikationen_vakuum_PTB.pdf
index 5600e8b2f6d8c8964051dc5938f726e40a5daa67..711f39d50ae60ea6ca434fc3c2d1bb316a2962ce 100644
Binary files a/publikationsliste/publikationen_vakuum_PTB.pdf and b/publikationsliste/publikationen_vakuum_PTB.pdf differ